XML XMLNS以“important”结尾#

时间:2011-09-06 11:14:46

标签: xml firefox-addon xml-namespaces

在名为install.rdf的Mozilla Extensions文件中,有一行说

<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
     xmlns:em="http://www.mozilla.org/2004/em-rdf#">

那些#字符是否重要,或者它们的目的是什么?

请参阅: https://developer.mozilla.org/en/install_manifests

2 个答案:

答案 0 :(得分:4)

片段标识符是URL的一部分(所以是的,它很重要),并指示URL引用抽象资源而不是文档。这是RDF标准的一部分,至少当它是在1990年代后期设计install.rdf格式时制定的。请参阅http://www.w3.org/DesignIssues/Fragment.html以获取解释,尤其是:

  

在语义网上,明确什么是很重要的   鉴定。必须是http:URI(没有片段标识符)   标识通用文档。这是因为HTTP服务器   关于URI的响应可以删除(或的位置)   道歉)由请求的URI标识的文档。一个   理解http:协议的客户端可以立即得出结论   无fragementid的URI是一般文档。这甚至是真的   如果发布者(DNS名称的所有者)已决定不运行   服务器。即使它只是记录了文件没有的事实   在线提供,仍然是客户知道它指的是文档。这个   意味着任意RDF概念的标识符应该具有片段   身份标识。反过来,这意味着RDF命名空间应该以   “#”。

与RDF一样,这非常不直观且难以理解(至少对我而言)。我的建议是将命名空间URL视为不透明的字符串,而不要过多担心它们。

答案 1 :(得分:1)

嗯,XML命名空间只是一个URI。情况就是这样。其余的是惯例。

我想原因是RDF中的许多标识符都是由与名称连接的命名空间组成的,因此您可以获得类似

的内容

是的,尾随#很重要。命名空间必须准确。