XSLT - 如何按属性选择XML属性?

25 xml xslt xpath xml-attribute

这是我的源码xml的结构:

<root>
<DataSet Value="A">
<Data Value1="1" Value2="anythingA1" />
<Data Value1="2" Value2="anythingA2" />
<Data Value1="3" Value2="anythingA3" />
<Data Value1="4" Value2="anythingA4" />
<Data Value1="5" Value2="anythingA5" />
</DataSet>
</root>
Run Code Online (Sandbox Code Playgroud)

从中我喜欢创建一些变量,例如来自所有值为Value1 ="2"且所有值为Value1 ="5"的变量都应该导致myVar1与somethingA2和myVar2与anythingA5

我的approch看起来像这样

<xsl:variable name="myVarA" select="/DataSet/Data/[@Value1='2']/@Value2" />
Run Code Online (Sandbox Code Playgroud)

但是当然没有用,因为Value2不是Value1的孩子.

感谢任何提前提示!

phi*_*hag 47

只需删除Dataroot 后面的斜杠:

<xsl:variable name="myVarA" select="/root/DataSet/Data[@Value1='2']/@Value2"/>
Run Code Online (Sandbox Code Playgroud)