XSLT和实体引用

XSLT和实体引用,xslt,Xslt,我的xml看起来像: <ProductPrice> <CurrencySymbol>€</CurrencySymbol> <Amount>4.15</Amount> <DependsOn>&gt; 500 €</DependsOn> <SiteGuid>00000000-0000-0000-0000-000000000000&l

我的xml看起来像:

 <ProductPrice>
        <CurrencySymbol>€</CurrencySymbol>
        <Amount>4.15</Amount>
        <DependsOn>&gt; 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 = '&gt; 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 = '&gt; 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>&gt; 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生成的,当然没有理由让你的代码不能工作。你确定欧元符号的编码没有问题吗?