为什么我们不能为 XML 命名空间使用随机字符串而不是 URI?
Why can't we use random strings instead of URI's for XML namespaces?
我正在尝试了解 XML-命名空间约定(对命名空间使用 URI)的原因。
我已在 Whosebug 上阅读 this thread。我知道命名空间的全名应该是唯一的。但我仍然不明白为什么我们不能为此使用随机字符串?
例如,我们试图在文件中区分真车和玩具车:
<?xml version="1.0" encoding="UTF-8"?>
<carstore xmlns:real="http://cxf.apache.org/jaxws/cars/real" xmlns:toy="http://cxf.apache.org/jaxws/cars/toy">
<real:car category="truck">
<model lang="en">Scania R 770</model>
<year>2005</year>
<price currency="US dollar">200000.00</price>
</real:car>
<toy:car category="sedan">
<title lang="en">Ford Focus</title>
<year>2012</year>
<price currency="US dollar">100.00</price>
</toy:car>
</carstore>
<?xml version="1.0" encoding="UTF-8"?>
<carstore xmlns:real="heroigairehgoiaer7272" xmlns:toy="289ry89fhfhbvnsdkljnv">
<real:car category="truck">
<model lang="en">Scania R 770</model>
<year>2005</year>
<price currency="US dollar">200000.00</price>
</real:car>
<toy:car category="sedan">
<title lang="en">Ford Focus</title>
<year>2012</year>
<price currency="US dollar">100.00</price>
</toy:car>
</carstore>
如果有人能解释为什么这个选项,我将不胜感激
xmlns:real="http://cxf.apache.org/jaxws/cars/real"
比这个好:
xmlns:real="heroigairehgoiaer7272"
使用第二种方法我们会面临哪些负面后果?
大概有现实生活中的例子吧?
随机,唯一,字符串可以用于命名空间值,但是...
基于 URI 的命名空间比随机字符串具有优势:
- 利用
域名的就地所有权机制避免了
复制该功能以控制命名空间。
- 域名传达所有权,这对于识别
负责命名空间的一方或项目。
- 尽管namespace URIs do not have to be retrievable,他们可以和
通常是,因此作为一种检索管理模式的便捷方式
或文档。
- URI 的层次性 可以反映自然层次
名称集合的组织。
我正在尝试了解 XML-命名空间约定(对命名空间使用 URI)的原因。
我已在 Whosebug 上阅读 this thread。我知道命名空间的全名应该是唯一的。但我仍然不明白为什么我们不能为此使用随机字符串?
例如,我们试图在文件中区分真车和玩具车:
<?xml version="1.0" encoding="UTF-8"?>
<carstore xmlns:real="http://cxf.apache.org/jaxws/cars/real" xmlns:toy="http://cxf.apache.org/jaxws/cars/toy">
<real:car category="truck">
<model lang="en">Scania R 770</model>
<year>2005</year>
<price currency="US dollar">200000.00</price>
</real:car>
<toy:car category="sedan">
<title lang="en">Ford Focus</title>
<year>2012</year>
<price currency="US dollar">100.00</price>
</toy:car>
</carstore>
<?xml version="1.0" encoding="UTF-8"?>
<carstore xmlns:real="heroigairehgoiaer7272" xmlns:toy="289ry89fhfhbvnsdkljnv">
<real:car category="truck">
<model lang="en">Scania R 770</model>
<year>2005</year>
<price currency="US dollar">200000.00</price>
</real:car>
<toy:car category="sedan">
<title lang="en">Ford Focus</title>
<year>2012</year>
<price currency="US dollar">100.00</price>
</toy:car>
</carstore>
如果有人能解释为什么这个选项,我将不胜感激
xmlns:real="http://cxf.apache.org/jaxws/cars/real"
比这个好:
xmlns:real="heroigairehgoiaer7272"
使用第二种方法我们会面临哪些负面后果? 大概有现实生活中的例子吧?
随机,唯一,字符串可以用于命名空间值,但是...
基于 URI 的命名空间比随机字符串具有优势:
- 利用 域名的就地所有权机制避免了 复制该功能以控制命名空间。
- 域名传达所有权,这对于识别 负责命名空间的一方或项目。
- 尽管namespace URIs do not have to be retrievable,他们可以和 通常是,因此作为一种检索管理模式的便捷方式 或文档。
- URI 的层次性 可以反映自然层次 名称集合的组织。