验证有关rdf和rdfs如何相关的示例?

时间:2015-05-18 15:32:44

标签: rdf semantic-web rdfs

有类似的问题和答案。但是,以前没有一个例子。

这是rdfs代码。

<?xml version="1.0"?>

<rdf:RDF 
xmlns:rdf= "http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"
xml:base=  "localhost:3000/animal#">

<rdfs:Class rdf:ID="animal" />

<rdfs:Class rdf:ID="horse">
  <rdfs:subClassOf rdf:resource="#animal"/>
</rdfs:Class>

</rdf:RDF>

它托管在localhost:3000 / animal。

这是rdf代码。

<?xml version="1.0"?>

<rdf:RDF
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
xmlns:animal="localhost:3000/animal#">

<rdf:Description
 rdf:about="http://www.recshop.fake/things">
  <animal:horse>abc</animal:horse>
</rdf:Description>


</rdf:RDF>

它托管在localhost:3000 / horseinstance。

这是rdfs和rdf相关的正确方法吗?

1 个答案:

答案 0 :(得分:2)

  

这是rdfs和rdf如何相关的正确方法吗?

这部分问题有点不清楚。 RDF是基于表单(主题,谓词,对象)的三元组的数据表示,其中主题是IRI或空白节点,谓词是IRI,对象是IRI,空白节点,或文字。 RDF标准为某些IRI规定了一些特殊含义,但这意味着每个人都同意让它们具有意义。 RDFS是RDF的模式语言。对于更多的IRI,它只是一些更明确的意义,比如rdfs:subClassOf和rdfs:Class。

根据您向我们展示的RDF代码段,我想您已经问过我们,基于您已经展示过的RDFS,RDF是否以适当或传统的方式使用RDFS架构。答案是&#34;不是真的。&#34;如果您查看数据的三元组,而不是它们的RDF / XML序列化,可能会更容易。 RDFS文件有三个三元组:

<localhost:3000/animal#animal> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2000/01/rdf-schema#Class> .
<localhost:3000/animal#horse> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/2000/01/rdf-schema#Class> .
<localhost:3000/animal#horse> <http://www.w3.org/2000/01/rdf-schema#subClassOf> <localhost:3000/animal#animal> .

您的RDF文件有一个:

<http://www.recshop.fake/things> <localhost:3000/animal#horse> "abc" .

这是所有合法的RDF,所以从这个意义上说,它已经&#34; OK&#34;,但你的RDFS声明动物作为类,动物的子类。您现在使用作为谓词,将资源事物与文字&#34; abc&#34; 相关联。通常,您使用声明的类(如)作为其谓词为 rdf:type 的三元组的对象,表明该主题是该类的成员。例如,你说的是:

<http://example.org/BlackBeauty> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <localhost:3000/animal#horse> .

在RDF / XML中,它看起来像:

<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:animal="localhost:3000/animal#">
  <animal:horse rdf:about="http://example.org/BlackBeauty"/>
</rdf:RDF>

或者这个(因为相同的RDF图可以通过多种方式在RDF / XML中序列化):

<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:animal="localhost:3000/animal#" > 
  <rdf:Description rdf:about="http://example.org/BlackBeauty">
    <rdf:type rdf:resource="localhost:3000/animal#horse"/>
  </rdf:Description>
</rdf:RDF>