1

我根据字段的特定值设置了一个变量。在 a<xsl:choose>中,以下代码完美运行:

<xsl:when test="property_type='hotel'">47</xsl:when>

但是,我现在需要检查诸如“b&b”之类的字符串:

<xsl:when test="property_type='b&b'">48</xsl:when>

这失败了,给出:

transform.xslt 的第 42 行第 72 列出错:SXXP0003:XML 解析器报告的错误:对实体“b”的引用必须以“;”结尾 分隔符。

我理解这个错误,但我不知道如何解决它。& 符号存在于数据 xml 中并且是有效的(它在 CDATA 中)。错误在我的 xslt 中无效。

4

2 回答 2

2

您需要使用 xml 实体转义 & 符号&amp;。您的代码应如下所示:

<xsl: when test="property_type='b&amp;b'">48</xsl:when>
于 2012-05-10T17:27:47.240 回答
0
<xsl:when test="property_type='b&amp;b'">48</xsl:when>

格雷格回答

于 2012-05-10T14:50:55.980 回答