lxml を使用して集合 XML ファイルを自動的に作成したいので、次のような「xi:include」を記述する必要があります。
...
<Time Type="Single" Value="2"/>
<xi:include href="elemData_2.xmf" xpointer="xpointer(//XDMF/Domain/Grid)"/>
<Time Type="Single" Value="3"/>
<xi:include href="elemData_3.xmf" xpointer="xpointer(//XDMF/Domain/Grid)"/>
<Time Type="Single" Value="4"/>
<xi:include href="elemData_4.xmf" xpointer="xpointer(//XDMF/Domain/Grid)"/>
...
XInclude() は、名前の SubElement を解析して追加しようとするためだけにあるようです: 'xi:include' はエラーを発行します。だから私はそれを行うための助けをいただければ幸いです。私が使用するコード:
xdmfItem.append(etree.SubElement(Grid, "xiinclude", {'href': 'elemData_'+str(ii+1)+'.xmf', 'xpointer':'xpointer(//XDMF/Domain/Grid)' }))
エラー:
ValueError: Invalid tag name u'xi:include'
よろしくお願いします
編集:(8時間待ったら、おそらく答えを書かないでしょう)
newtover に感謝します。あなたのポインターが解決策を見つけるのに役立ちました。
xdmfItem.append(etree.SubElement(Grid, "{http://www.w3.org/2003/XInclude}include", {'href': 'elemData_'+str(ii+1)+'.xmf', 'xpointer':'xpointer(//XDMF/Domain/Grid)' }))