XSLT和实体引用
我的xml看起来像:XSLT和实体引用,xslt,Xslt,我的xml看起来像: <ProductPrice> <CurrencySymbol>€</CurrencySymbol> <Amount>4.15</Amount> <DependsOn>> 500 €</DependsOn> <SiteGuid>00000000-0000-0000-0000-000000000000&l
<ProductPrice>
<CurrencySymbol>€</CurrencySymbol>
<Amount>4.15</Amount>
<DependsOn>> 500 €</DependsOn>
<SiteGuid>00000000-0000-0000-0000-000000000000</SiteGuid>
<Disabled>false</Disabled>
<SortId>0</SortId>
</ProductPrice>
€
4.15
500 €
00000000-0000-0000-0000-000000000000
假的
0
我如何处理XSLT之类的东西
<xsl:for-each select="./Prices/ProductPrice">
<xsl:if test="DependsOn = '> 500 €'">
<xsl:value-of select="Amount"/>
<xsl:text></xsl:text>
<xsl:text>
</xsl:text>
</xsl:if>
</xsl:for-each>
由于实体引用,if条款无法工作。
有什么解决办法吗
由于实体引用,if条款无法工作。任何
解决方案是什么
没有问题,您的代码按预期工作
此转换:
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="/*">
<xsl:if test="DependsOn = '> 500 €'">
<xsl:value-of select="Amount"/>
<xsl:text></xsl:text>
<xsl:text> </xsl:text>
</xsl:if>
</xsl:template>
</xsl:stylesheet>
<ProductPrice>
<CurrencySymbol>€</CurrencySymbol>
<Amount>4.15</Amount>
<DependsOn>> 500 €</DependsOn>
<SiteGuid>00000000-0000-0000-0000-000000000000</SiteGuid>
<Disabled>false</Disabled>
<SortId>0</SortId>
</ProductPrice>
4.15
你好,迪米特里,谢谢你的回答。我用的是萨克森和安的列斯的XML,可能有问题吗?在我的XSLT中,我使用相同的语法查询其他字段(不带“”),没有问题。因此,我认为问题一定出在处理器上。你使用哪种处理器?@datÜlfchen:我发布的结果是用Saxon 6.5.4生成的,当然没有理由让你的代码不能工作。你确定欧元符号的编码没有问题吗?