XSLT:用&定义一个参数符号

时间:2010-07-02 15:25:42

标签: string xslt ampersand param

我需要定义一个xsl:param,其中包含一个包含&字符的字符串,以便进一步处理。 例如:

<xsl:param name="greeting" as="xs:string">Hi & Bye</xsl:param>

重要通知: 我在webservice工具中使用xslt转换器组件。我所做的是,我只是初始化param,并且当调用web服务时,param被设置为在前面的步骤中设置的变量值。所以我无法控制字符串,即意味着我无法使用&amp;

任何想法如何做到这一点?

提前致谢。

2 个答案:

答案 0 :(得分:2)

对其进行编码。

&编码为&amp;

<xsl:param name="greeting" as="xs:string">Hi &amp; Bye</xsl:param>

请参阅有关XML字符实体的this文档。

另一种选择是将这些字符串括在CDATA部分中:

<xsl:param name="greeting" as="xs:string"><![CDATA[Hi & Bye]]></xsl:param>

答案 1 :(得分:1)

您可以尝试将字符串存储为未解析的字符数据(CDATA)。在这种情况下标记字符串将通知XML解析器不应解析包含的信息:

<xsl:param name="greeting" as="xs:string"><![CDATA[ Hi & Bye ]]></xsl:param>