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

Xml XPath:将兄弟节点的子节点的属性分配给另一个节点,xml,xpath,localization,translation,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&

我想用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属性的节点,作为同一trans-unit节点下目标节点的长度限制规则

我该怎么做呢?在我研究过的大多数关于长度限制的示例中,字符限制显示为要选择进行转换的节点的属性,如下所示

<salutation limit="40">Dear Daniel,</salutation>
不过,我的情况有点不同。该节点是该节点的同级节点,因此如何将属性从同级节点的子节点分配给另一个同级节点?任何帮助都将不胜感激。

此XPath

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

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

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

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

不确定您是否对XPath的功能有重大误解,或者只是一个小的术语误解,但XPath是关于选择的,而不是赋值的。事实上,这里的术语完全令人困惑。节点不会被解析:它们是作为解析器的输出生成的。我不知道自定义解析器规则可能用于什么。长度限制规则的作用是什么?这与本地化或翻译有什么关系?您到底想从XPath表达式中得到什么?谢谢你们的回复。是的,我对此有点陌生,但我应该提到这与使用cat工具导入xml元素有关,更具体地说是SDL studio。其思想是使用自定义文件类型,使用xpath表达式从.xml文件导入或解析元素和属性。希望这会更有意义。尽管必须承认,我不确定我要问的是Xpath是否可行。