XML声明标记区分大小写吗?

XML声明标记区分大小写吗?,xml,encoding,utf-16,Xml,Encoding,Utf 16,我有一个非常简单的问题,但我在任何地方都找不到答案,我需要非常确定这一点 我有来自不同供应商的各种XML文件。其中一家供应商向我提供了一个包含日语字符的XML文件。最初,我在处理XML文件时遇到了问题(我正在使用)。这些角色会出现错误。我发现,如果将以下内容添加到XML文件中,一切都会很好地工作 <?xml version="1.0" encoding="UTF-16"?> 因此,我要求供应商将其添加到他们的文件中。但他们添加了小写的编码: <?xml version="

我有一个非常简单的问题,但我在任何地方都找不到答案,我需要非常确定这一点

我有来自不同供应商的各种XML文件。其中一家供应商向我提供了一个包含日语字符的XML文件。最初,我在处理XML文件时遇到了问题(我正在使用)。这些角色会出现错误。我发现,如果将以下内容添加到XML文件中,一切都会很好地工作

<?xml version="1.0" encoding="UTF-16"?>

因此,我要求供应商将其添加到他们的文件中。但他们添加了小写的编码:

<?xml version="1.0" encoding="utf-16"?>

当我加载这个新文件时,有了这个声明,我遇到了和没有这个声明时一样的问题

我想弄清楚的是(当然)编码属性是否区分大小写(或者是问题所在)他们把“utf-16”和“utf-16”放在一起有关系吗?

更新:在这些在这里发布答案的人的建议下,我设置并执行了一项测试。一个文件的小写字母为utf-16,另一个为大写字母。除此之外,文件是相同的这没有解决问题,也不是问题所在。我的结论是,MSXML不区分大小写,正如答案中的规范所述。

来自:

因此不需要,但建议不区分大小写,根据:

  • 这个词,或者形容词“推荐”,是指 可能存在合理的理由 忽略a的特殊情况
    特定项目,但完整的 必须理解其含义,并且
    选择前仔细称重 不同的课程

  • 我想问题不是“标准是否区分大小写?”而是“MSXMLSDK中的编码是否区分大小写?”

    发件人:

    XML规范说处理器“应该”匹配编码名称 不敏感的案例。“应该”是一个技术术语,不如 “必须”,但我看不出处理器为什么不这样做


    然而,我们知道,这在实践中可能并不总是正确的。如果您可以同时尝试这两种方法,请这样做,并让我们知道结果。

    显然,如果问题在一种版本中消失,而不是在另一种版本中消失,那么它确实很重要……我可以也将如此。它只是需要相当多的努力来建立它。我希望有人对MSXML有详细的了解……虽然您和JoshJordan的答案大致相同,但我将向他给出“答案”,因为他指出这在实践中可能不正确,我们应该并排尝试。但是,我认为你留下一个合适的答案是恰当的,因此我将+1。再次感谢你。
    XML processors SHOULD match character encoding names in a case-insensitive way