我有一個XML文件(實際上是一個XLIFF文件),其中節點具有2個孩子具有相同子節點(未先驗已知的,可以是非常複雜的,併爲每個<trans-unit>
改變) 。我與Python和lxml的圖書館...示例工作:獲取相應的XML節點使用XPath
<trans-unit id="tu4" xml:space="preserve">
<seg-source>
<mrk mid="0" mtype="seg">
<g id="1">...</g>
<g id="2">...</g>
<g id="3">...</g>
<bx id="7"/>...
</mrk>
<mrk mid="1" mtype="seg">...</mrk>
<mrk mid="2" mtype="seg">...
<ex id="7"/>
<g id="8"> FROM HERE </g>
</mrk>
</seg-source>
<target xml:lang="en">
<mrk mid="0" mtype="seg">
<g id="1">...</g>
<g id="2">...</g>
<g id="3">...</g>
<bx id="7"/>...
</mrk>
<mrk mid="1" mtype="seg">...</mrk>
<mrk mid="2" mtype="seg">...
<ex id="7"/>
<g id="8"> TO HERE </g>
</mrk>
</target>
</trans-unit>
正如你所看到的,在2個節點<seg-source>
和<target>
具有完全相同的分體結構。我的目標是導航到<seg-source>
每個節點,得到的文本和節點的尾部(我知道如何做到這一點使用XPath),翻譯它們最後(這是什麼,我不知道該怎麼辦)分配給<target>
中的相應節點翻譯...
換句話說...假設我得到節點「FROM HERE」...我怎樣才能得到節點「TO HERE」?
是否有什麼原因需要手動完成?你看過python中已經存在的XLIFF實現嗎? (例如,[Translate Toolkit]中的'xliff'模塊(https://github.com/translate/translate/tree/master/translate/misc)。 –