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>

Вот и всё!

Другие расширения