RDF Schema (RDFS)

RDF Schema (RDFS) è un'estensione di RDF.

RDF Schema e classi dell'applicazione

RDF descrive le risorse attraverso classi, attributi e valori.

Inoltre, RDF necessita di un metodo per definire classi e attributi specifici per applicazioni. Le classi e gli attributi specifici per applicazioni devono essere definiti utilizzando un'estensione di RDF.

RDF Schema è un'estensione di questo tipo.

RDF Schema (RDFS)

RDF Schema non fornisce classi e attributi specifici per applicazioni, ma fornisce uno schema per descrivere classi e attributi specifici per applicazioni.

Le classi nel RDF Schema sono molto simili alle classi nei linguaggi di programmazione orientati agli oggetti. Questo permette di definire le risorse come istanze di classe e sottoclasse.

Esempio RDFS

Esempio di capacità di RDFS: i seguenti esempi dimostrano alcuni aspetti delle capacità di 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>

Nell'esempio sopra, la risorsa "horse" è una sottoclasse della classe "animal".

Esempio abbreviato

Poiché una classe RDFS è una risorsa RDF, possiamo abbreviare l'esempio precedente utilizzando rdfs:Class al posto di rdf:Description e rimuovendo le informazioni 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>

Ecco così!