XPath:将兄弟的子属性分配给另一个节点

时间:2018-06-16 20:48:49

标签: xml xpath localization translation

我想用XPath创建一个满足以下条件的自定义解析器规则。假设我的文件包含许多此代码的实例:

 <trans-unit id="01">
  <source>Test</source>
  <target>Test</target>
  <context-group name=" extract">
   <context context-type="x-length"> 10 PX </context>
  </context-group>
 </trans-unit>

我想用“x-length”属性解析节点作为同一跨单元节点下目标节点的长度限制规则。

我该如何解决?在大多数示例中,我研究了长度限制,字符限制显示为您要为翻译选择的节点的属性,如此

<salutation limit="40">Dear Daniel,</salutation>

但我的情况有点不同。 <target>节点是<context-group>节点的兄弟节点,那么如何将兄弟节点的子节点中的属性分配给另一个兄弟节点?任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

这个XPath,

//context[@context-type="x-length"]

将选择context属性值为@context-type的所有"x-length"元素。

答案 1 :(得分:0)

尝试此操作,以获取上述示例代码的唯一结果“

//context-group[@name=' extract']//context[@context-type="x-length"]