5

我正在学习 XML 和 Web 服务,但我不知道当我的应用程序未连接到 Internet 时如何获取 XML 命名空间?

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

4

2 回答 2

4

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

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

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

于 2013-11-07T04:15:30.593 回答
1

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

这可能对您有用:为什么 URL 在 XML 命名空间中?

于 2013-11-07T03:48:53.627 回答