xslt中for each循环中的if条件

xslt中for each循环中的if条件,xslt,Xslt,我有以下格式的xml: <Root> <Book name="Type" value="Action" /> <Book name="Price" value="10" /> <Book name="color" value="yellow" /> </Root> 我想要的是,我必须迭代这个循环,如果“Price”存在,那么我必须将“10”赋值给另一个变量。我想做的是: <xsl:for-each select="/Root

我有以下格式的xml:

<Root>
<Book name="Type" value="Action" />
<Book name="Price" value="10" />
<Book name="color" value="yellow" />
</Root>

我想要的是,我必须迭代这个循环,如果“Price”存在,那么我必须将“10”赋值给另一个变量。我想做的是:

<xsl:for-each select="/Root/Book">
<xsl:if test="./@name = 'Price'">
<sample name="{@name}" value="{@value}" />
</xsl:if>
</xsl:for-each>


但是我遇到了一个无法编译样式表的异常

当我通过xsltproc运行这个程序时,它可以正常工作。你能展示一下你得到的例外情况吗?@Legossia,谢谢!事实上,我发布的问题中有一个拼写错误,我打算发布,但我认为拼写错误是解决我问题的方法!可能重复的