5
私はXMLを解析するので、Pythonでファイル.xsdを解析する必要があります。
私はlibxml2を使用しています。私はパスを見つけることができないことを私に伝えますPythonで.xsdを解析する
doc.xpathEval('//xs:complexType/xs:sequence/xs:element[@name="IeplcHeader"]'):
にアクセスするとき
<xs:complexType name="ClassType">
<xs:sequence>
<xs:element name="IeplcHeader">
<xs:complexType>
<xs:sequence>
<xs:element name="device-number" type="xs:integer" fixed="1"/>
</xs:sequence>
<xs:attribute name="version" type="xs:integer" use="required" fixed="0"/>
</xs:complexType>
</xs:element>
:
は、私は次のようになりXSDを解析する必要があります。
私はすべてのxsを削除するとしながら、:それは誰もが私は接頭辞を固定し、この問題を読んで得ることができる方法を知っているん
doc.xpathEval('//complexType/sequence/element[@name="IeplcHeader"]'):
を働き、このように
<complexType name="ClassType">
<sequence>
<element name="IeplcHeader">
<complexType>
<sequence>
<element name="device-number" type="xs:integer" fixed="1"/>
</sequence>
<attribute name="version" type="xs:integer" use="required" fixed="0"/>
</complexType>
</element>
に従うよう?今、私はxs:を削除してファイルを準備していますが、それは奇妙な解決策であり、私は本当に良いソリューションを見つけることができるように願っています。
(あなたはXSDファイルを扱う必要がある場合、 STE
素敵なライブラリ。しかし、私はそれが私が必要としているかどうかはわかりません。 バリデーションにはとてもいいですが、この瞬間にはXSD内のいくつかのデータにアクセスする必要があります...奇妙に思えますが、xsdからいくつかのデータを読み込むスクリプトを書いています...)この時点で検証のために使用していません。:) – Stefano
@Stefano: 'lxm'はバリデーションだけでなく' xpath'を使っても有効ではありません。テストを行うための完全な(切り捨てられた)xsdファイルを投稿すると役立ちます – neurino