我的解析器是否需要XML名称空间?
我正在定义一个XML模式并为其编写解析器。这是完全合法的:我的解析器是否需要XML名称空间?,xml,parsing,xml-parsing,Xml,Parsing,Xml Parsing,我正在定义一个XML模式并为其编写解析器。这是完全合法的: <?xml version="1.0"?> <a:root xmlns:a="http://somewhere/a/"> <a:element/> <a:element/> <a:element/> </a:root> 但我对以下两份文件有疑问: <?xml version="1.0"?> <root> <elem
<?xml version="1.0"?>
<a:root xmlns:a="http://somewhere/a/">
<a:element/>
<a:element/>
<a:element/>
</a:root>
但我对以下两份文件有疑问:
<?xml version="1.0"?>
<root>
<element/>
<element/>
<element/>
</root>
及
如果我将这两个文档交给解析器,结果应该是什么?在这个主题上有类似w3的建议吗
出于您的兴趣,以下是我的想法:
xmlns
声明的文档,结果应该是空对象xmlns
的文档,结果应该是只包含元素的文档
您真的在编写自己的解析器吗?或者您只是在编写自己的模式?我不明白为什么您需要自己做XML解析器为什么不使用@JanusTroelsen:我正在为它编写模式和解析器。当然,我不是从头开始编写XML解析器。@JanusTroelsen:XSD验证工具会告诉我文档是否正确。它们是完全正确的XML文档。这个问题不是关于它们的形式,而是它们的意义。
<?xml version="1.0"?>
<a:root xmlns:a="http://somewhere/a/" xmlns:b="http://somewhere/b/">
<a:element/>
<b:element/>
<element/>
<element/>
</a:root>