如何在XSL转换中使用特殊字符?

时间:2010-12-09 16:11:57

标签: xml templates xslt

我正在开发一种工具,用于生成遵循特定模板的源代码。我正在尝试使用XML文件来存储诸如字符串和方法名称之类的值以及用于生成代码的XSL转换。 问题是源代码包含字符'>'和'<'。我读到通过在标签中写文本我可以使用字符实体(<或>)并且它们将在结果中转换但我想直接使用XSL转换中的原始字符并保留原始字符源代码尽可能处于原始状态。有什么方法可以在xslt中做到这一点吗? 只要解决方案允许轻松插入值,我也愿意尝试其他生成代码的方法。

提前谢谢。

2 个答案:

答案 0 :(得分:2)

严格地说,这不是XSLT问题,

使用 CDATA ,如以下示例所示:

<ProgramFragment>
 <![CDATA[if(x <> y) {z}]]>
</ProgramFragment>

但是,永远不要放置标记(如果您的编程语言是基于XML的,如XSLT)在CDATA部分 - 这是 evil

答案 1 :(得分:0)

您可以将代码放入CDATA部分:

<![CDATA[
 code with >, <, & here
]]>