RDF Schema (RDFS)


RDF Schema (RDFS) 是對 RDF 的一種擴展。


RDF Schema 和 應用程式的類

RDF 通過類、屬性和值來描述資源。

此外,RDF 還需要一種定義應用程式專業的類和屬性的方法。應用程式專用的類和屬性必須使用對 RDF 的擴展來定義。

RDF Schema 就是這樣一種擴展。


RDF Schema (RDFS)

RDF Schema 不提供實際的應用程式專用的類和屬性,而是提供了描述應用程式專用的類和屬性的框架。

RDF Schema 中的類與面向對象編程語言中的類非常相似。這就使得資源能夠作為類的實例和類的子類來被定義。


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="http://www.animals.fake/animals#">

<rdf:Description rdf:ID="animal">
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
</rdf:Description>

<rdf:Description rdf:ID="horse">
<rdf:type rdf:resource="http://www.w3.org/2000/01/rdf-schema#Class"/>
<rdfs:subClassOf rdf:resource="#animal"/>
</rdf:Description>

</rdf:RDF>

在上面的例子中,資源 "horse" 是類 "animal" 的子類。


簡寫的例子

由於一個 RDFS 類就是一個 RDF 資源,我們可以通過使用 rdfs:Class 取代 rdf:Description,並去掉 rdf:type 資訊,來把上面的例子簡寫一下:

<?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="http://www.animals.fake/animals#">

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

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

</rdf:RDF>

就是這樣!