2

只是在 XML 大写方面遇到了一些问题。我需要使用 XSLT 文件生成以下 xml 命名空间:

<?xml version="1.0" encoding="ISO-8859-1" ?>

但是,在我的 XSLT 引擎处理后,声明将 ISO 的大写更改为 iso。

<?xml version="1.0" encoding="iso-8859-1" ?>

我的问题是:

  1). Is/Are there any significant difference between these two declarations?
  2). Is is possible to retain the capitalization of ISO?

提前致谢 :)

4

1 回答 1

2

由于您的问题 1) 的一部分已经被 Tangelo 评论中引用的问题回答,我将只讨论第 2) 部分。

应该能够使用该元素通过“编码”属性来控制编码。属性的值应该完全按照您在样式表中指定的大小写来发出。

例子:

<xsl:output method="xml" version="1.0" encoding="ISO-8859-1" />

然而,话虽如此,请注意 XSLT 1.0 规范中的这段摘录......

  • encoding:指定 XSLT 处理器用于将字符序列编码为字节序列的首选字符编码;属性的值应该不区分大小写;该值必须仅包含 #x21 到 #x7E 范围内的字符(即可打印的 ASCII 字符);该值应该是在 Internet Assigned Numbers Authority [IANA]、[RFC2278] 注册的字符集或以 X- 开头

这意味着没有绝对保证的方法可以在所有 XSLT 处理器上通用地控制这种情况,所以现在问题归结为您的 XSLT 处理器是什么?答案将是特定于供应商的。

于 2012-06-07T10:06:23.087 回答