我正在使用mule执行一些xsl翻译
我的input xml
是:
<root>
<Items>
<Item line="line1"> Item1 </Item>
<Item line="line2"> Item2 </Item>
<Item line="line3"> Item3 </Item>
</Items>
</root>
我的xsl
逻辑是
<xsl: for-each select="//root/Items/Item>
<xsl:element name="test">
<xsl:value-of select="//@line"/>
</xsl:element>
</xsl: for-each>
我希望我的结果是
<test>line1</test>
<test>line2</test>
<test>line3</test>
但我得到
<test>line1 line2 line3</test>
<test>line1 line2 line3</test>
<test>line1 line2 line3</test>
我做错了什么?
答案 0 :(得分:1)
<xsl:value-of select="//@line"/>
选择整个文档中名为line
的每个属性,无论该属性属于哪个元素。如果您只想要line
中当前正在查看的元素的for-each
属性,请删除前导斜杠并简单地说select="@line"
。