不连接到Internet时,XML命名空间如何工作?

时间:2013-11-07 03:34:58

标签: xml web-services xhtml namespaces

我正在学习XML和Web服务,但是当我的应用没有连接到互联网时,我不知道如何获得XML命名空间?

我正在使用与XML命名空间相对应的库,但我不明白它们是如何相关的。

2 个答案:

答案 0 :(得分:4)

Namespaces in XML 1.0 Recommendation不要求名称空间URI能够用于检索任何内容。因此,不需要连接到Internet。命名空间甚至可以被命名为URL之外的其他名称,但URL中域名的权限和唯一性方面非常方便。

在命名空间给出的URL的端点放置XSD通常也很方便。您对连接到Internet的担忧可能是由于这种做法而产生的,但这里也没有内在问题,至少在命名空间本身方面没有。如果您需要访问XSD(例如,验证目的),则可以保留本地副本,并仅在希望它检索本地而非远程副本时更改提供给XML处理器的提示。

有关指示XML处理器应如何查找XSD的方法,尤其是关于命名空间的方法,请参阅XML Catalogsxsi:schemaLocation and xsi:noNamespaceSchemaLocation

答案 1 :(得分:1)

如果您的XML文档必须与可能具有类似命名元素的其他系统进行交互,则XML命名空间仅用于保持元素的唯一性。他们将URL附加到它们的原因是因为域名是全局强制的命名空间机制,并且只要每个人都遵循使用URL的约定,就不应该有冲突。换句话说,如果有人拥有域名spoon.com,那么他们可以合理地确定没有其他人会使用该命名空间,因为它受ICANN等的监管。但是,在spoon.com组织内,成员必须确保他们之间没有冲突。

这可能对您有用:Why are URLs in XML namespaces?