题
例如,在下面的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解析器将不会接受这样的文件(并有很多这样的文件,左右浮动的)。
不隶属于 StackOverflow