perlxsd解析
我有一个XSD文件,它将被解析并转换为XML文件 使用Perl有什么方法可以做到这一点吗???生成xml文件后,我必须解析该xml文件,这是第二部分,但在将XSD文件转换为xml格式的第一部分中,我被打动了 XSD如下所示perlxsd解析,xsd,Xsd,我有一个XSD文件,它将被解析并转换为XML文件 使用Perl有什么方法可以做到这一点吗???生成xml文件后,我必须解析该xml文件,这是第二部分,但在将XSD文件转换为xml格式的第一部分中,我被打动了 XSD如下所示 <?xml version="1.0" encoding="UTF-8"?> <!-- This document was generated by the Objective Systems ASN2XSD Compiler (http:
<?xml version="1.0" encoding="UTF-8"?>
<!-- This document was generated by the Objective Systems ASN2XSD Compiler
(http://www.obj-sys.com). Version: 6.3.0, Date: 06-May-2010. -->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns="http://www.obj-sys.com/S1AP-PDU-Descriptions"
targetNamespace="http://www.obj-sys.com/S1AP-PDU-Descriptions"
xmlns:S1AP-CommonDataTypes="http://www.obj-sys.com/S1AP-CommonDataTypes"
xmlns:S1AP-PDU-Contents="http://www.obj-sys.com/S1AP-PDU-Contents"
xmlns:S1AP-Constants="http://www.obj-sys.com/S1AP-Constants"
xmlns:asn1="http://www.obj-sys.com/v1.0/XMLSchema"
elementFormDefault="qualified">
<xsd:import namespace="http://www.obj-sys.com/S1AP-CommonDataTypes"
schemaLocation="S1AP-CommonDataTypes.xsd"/>
<xsd:import namespace="http://www.obj-sys.com/S1AP-PDU-Contents"
schemaLocation="S1AP-PDU-Contents.xsd"/>
<xsd:import namespace="http://www.obj-sys.com/S1AP-Constants"
schemaLocation="S1AP-Constants.xsd"/>
<xsd:import namespace="http://www.obj-sys.com/v1.0/XMLSchema"
schemaLocation="http://www.obj-sys.com/v1.0/XMLSchema/asn1.xsd"/>
<!-- PDU definition -->
<xsd:element name="s1AP-PDU" type="S1AP-PDU"/>
<xsd:complexType name="S1AP-PDU">
<xsd:choice>
<xsd:element name="initiatingMessage" type="InitiatingMessage"/>
<xsd:element name="successfulOutcome" type="SuccessfulOutcome"/>
<xsd:element name="unsuccessfulOutcome" type="UnsuccessfulOutcome"/>
<xsd:any namespace="##other" processContents="lax"/>
</xsd:choice>
</xsd:complexType>
<xsd:complexType name="InitiatingMessage">
<xsd:sequence>
<xsd:element name="procedureCode" type="S1AP-CommonDataTypes:ProcedureCode"/>
<xsd:element name="criticality" type="S1AP-CommonDataTypes:Criticality"/>
<xsd:element name="value" type="asn1:OpenType"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="SuccessfulOutcome">
<xsd:sequence>
<xsd:element name="procedureCode" type="S1AP-CommonDataTypes:ProcedureCode"/>
<xsd:element name="criticality" type="S1AP-CommonDataTypes:Criticality"/>
<xsd:element name="value" type="asn1:OpenType"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="UnsuccessfulOutcome">
<xsd:sequence>
<xsd:element name="procedureCode" type="S1AP-CommonDataTypes:ProcedureCode"/>
<xsd:element name="criticality" type="S1AP-CommonDataTypes:Criticality"/>
<xsd:element name="value" type="asn1:OpenType"/>
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
看起来您使用了中的一个免费工具来转换某些数据。我相信当您打算使用他们的ASN2XML工具时,您使用了他们的工具ASN2XSD。XSD工具生成一个描述文档,就像您在问题中显示的文档一样,它帮助另一个工具格式化和描述您的数据,而这不是您想要的
如果您从上面的第一个链接使用他们的ASN2XML工具来转换ASN.1数据,它将在不丢失任何数据的情况下生成所需的XML输出。然后,您可以使用Perl的XML工具来解析该数据。看起来您使用了中的一个免费工具来转换某些数据。我相信当您打算使用他们的ASN2XML工具时,您使用了他们的工具ASN2XSD。XSD工具生成一个描述文档,就像您在问题中显示的文档一样,它帮助另一个工具格式化和描述您的数据,而这不是您想要的
如果您从上面的第一个链接使用他们的ASN2XML工具来转换ASN.1数据,它将在不丢失任何数据的情况下生成所需的XML输出。然后,您可以使用Perl的XML工具来解析数据。有一个java工具,您可以通过谷歌来尝试。有一个java工具,您可以通过谷歌来尝试。我还想补充一点,IBM有另一个好的ASN.1到XML转换工具:我还想补充一点,IBM有另一个好的ASN.1到XML转换工具: