验证一个关于rdf和rdfs如何关联的例子?

verify an example about how the rdf and rdfs related?

有类似的问答。但是,前面的none给出了例子。

这是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 关联的正确方式吗?

Is this the right way how rdfs and rdf related?

这部分问题有点不清楚。 RDF是一种基于triples形式的数据表示(subject, predicate, object),其中subject是一个IRI或者空白节点,predicate是一个IRI,object是一个IRI,空白节点,或文字。 RDF标准为某些特定的IRI规定了一些特殊的含义,但这是大家一致同意让它们表示的含义。 RDFS 是 RDF 的模式语言。它只是为更多的 IRI 赋予了更多的含义,比如 rdfs:subClassOf 和 rdfs:Class.

根据您向我们展示的 RDF 片段,我认为您是在问我们,根据您展示的 RDFS,RDF 是否以适当或传统的方式使用 RDFS 模式。答案是 "not really." 如果您查看数据的三元组而不是它们的 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,因此从这个意义上说,它是 "OK",但是您的 RDFS 将 horseanimal 声明为class是的,那匹动物的子class。您现在使用 horse 作为将资源 things 与文字 "abc"[=40= 相关联的谓词].通常,您会使用已声明的 class,例如 horse,作为谓词为 [=30= 的三元组的 object ]rdf:type,表示主题是 class 的成员。例如,您可以这样说:

<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>