lxml 2.xを使用して特定のxsdタイプの要素のリストを取得しようとしていますが、特定のタイプのxsdをトラバースする方法がわかりません。
スキーマの例:
<xsd:element name="ServerOwner" type="srvrs:string90" minOccurs="0">
<xsd:element name="HostName" type="srvrs:string35" minOccurs="0">
xmlデータの例:
<srvrs:ServerOwner>John Doe</srvrs:ServerOwner>
<srvrs:HostName>box01.example.com</srvrs:HostName>
理想的な関数は次のようになります。
elements = getElems(xml_doc, 'string90')
def getElems(xml_doc, xsd_type):
** xpath or something to find the elements and build a dict
return elements