使用xslt使用不同的编码

时间:2012-09-13 19:13:38

标签: java xml xslt

对xml文档和xslt使用不同的编码会产生什么影响。

xslt样式表的输出编码为UTF-8,输入的xml将没有声明编码,并且将使用字符串生成,xslt内部将是:

<xsl:variable name="doc" select="document('file.xml')"/>

该文件是iso-8859-1。

使用不同的编码会影响输出吗?

1 个答案:

答案 0 :(得分:3)

XSLT操作的树是抽象对象,通常(但不一定)通过解析XML文档来创建。这些抽象树中的字符来自ISO 10646和Unicode的字符库;在构建树的任何表示之前,XML解析器将对用于输入XML的编码进行任何变化。

因此,您的问题的答案是:如果使用的XML解析器知道输入编码,则不同编码对输入的影响为零。如果XML解析器不知道并接受编码,那么效果将使XSLT引擎无法读取输入。