例如,在下面的XML文档视为根据W3C XML 1.0推荐有效?请注意,该命名空间“将来”没有在文件中的任何地方引用的

尽管这可能不会被认为是良好的作风,我的信念是,不管未使用的命名空间的文件仍然有效。任何人都可以证实或否定这个假设?

谢谢,马特

<?xml version="1.0" encoding="UTF-8" ?>
<root xmlns='http://foo.org/v1'  xmlns:future='http://bar.org/v1'>
    <child>1</child>
</root>
有帮助吗?

解决方案

标准似乎并不否则指示。第7条,“文档的一致性”给出为了调用文档的一些要求“命名空间结构良好的”和“命名空间,有效”,但没有说你不能有一个未使用的命名空间声明。

在第3,给出一个例子,它包含一个未使用的名称空间:

<x xmlns:edi='http://ecommerce.example.org/schema'>
    <!-- the "edi" prefix is bound to http://ecommerce.example.org/schema
         for the "x" element and contents -->
</x>

其他提示

没有,它不是非法的未使用的命名空间声明在XML文档中

W3C实际上具有验证服务。这证实具有两个警告,编码和缺少一个DOCTYPE的。

虽然大多数清理工具会删除未使用的命名空间,我不记得在XML规范什么说这是非法的,让他们。我不知道任何XML解析器将不会接受这样的文件(并有很多这样的文件,左右浮动的)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top