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>

Вот и все!