RDF中xmlns属性的作用是什么?

时间:2011-11-17 11:24:17

标签: xml rdf xml-namespaces

我是RDF的新手,我正试图从网上获取一些RDF文件。例如:

http://rdf.freebase.com/rdf/venture_capital.views.investment_round

http://sws.geonames.org/2950159/about.rdf

问题是,我应该为标签添加一些xmlns属性,但我不知道哪个也不知道为什么。 另外,我应该添加一个xml标头吗?

2 个答案:

答案 0 :(得分:2)

为了使用标签,您需要声明RDF名称空间

xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

同样适用于任何您自己的命名空间。所有XML文件都应该有一个XML标头。

E.g。

<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:myns="http://my.domain/schema#"
>
   <myns:something rdf:about="http://my.domain/data/item.1">
      <rdf:type rdf:resource="http://my.domain/schema/thing"/>
      <myns:property1>Value</myns:property1>
   </myns:something>
</rdf:RDF>

答案 1 :(得分:2)

  

RDF中xmlns属性的作用是什么?

他们允许您将<foo>与名称空间a从<foo>区分开来与命名空间b区别开来(它可能是微妙的不同......或完全不同。

  

问题是,我应该为标签添加一些xmlns属性,但我不知道哪个属性也没有。

不必知道“为什么”或“哪个”而不知道另一个(或至少“在什么”)。如果你不知道为什么或为什么这么做,你为什么认为你需要添加它们呢?

  

另外,我应该添加一个xml标头吗?

定义“xml标题”。如果你的意思是<?xml ... ?>的XML声明,那么如果你没有使用默认值(UTF-8/16和XML 1.0),你只需要它;