短版: 如何添加的xmlns:與LXML X1 =「http://www.w3.org/2001/XInclude」前綴decleration到我的根元素在Python ?在python添加XML前綴聲明與LXML
語境:
我有一些XML文件,其中包括ID的其他文件。
這些ID代表引用的文件名。
使用lxml我設法用適當的XInclude語句替換這些,但如果我沒有前綴刪除,我的XML解析器將不會添加包含,這是正常的。
編輯: 我不會包含我的代碼,因爲它不會幫助理解問題。我可以很好地處理文檔,我的問題是序列化。
所以從這個 <root> <somechild/> </root>
我想在我的輸出文件中得到這個<root xmlns:xi="http://www.w3.org/2001/XInclude"> <somechild/> </root>
。
爲此,我嘗試使用
`
tree = ET.parse(fileName)
root = tree.getroot()
root.nsmap['xi'] = "http://www.w3.org/2001/XInclude"
tree.write('output.xml', xml_declaration=True, encoding="UTF-8", pretty_print=True)
`
你能分享一些代碼,就看你如何使用LXML? lxml文檔有幾個關於如何使用名稱空間的例子:[here](http://lxml.de/tutorial.html#namespaces),[here](http://lxml.de/parsing.html#parser-options )和[這裏](http://lxml.de/xpathxslt.html#namespaces-and-prefixes) –