2016-05-22 16 views
1

Ich lese über semantisches Web (RDF, RDFS). In RDF ist es möglich, Instanzen zu definieren, die Individuen repräsentieren. Zum Beispiel kann ich in RDF einen Fluss namens Yangtze definieren. Wie kann ich solche Instanzen in RDFS definieren? Ich weiß, dass RDFS dazu beitragen kann, Klassen wie Fluss, Wasser usw. zu definieren. Wie wäre es, Instanzen zu definieren, die zu dieser Klasse gehören?Ist es möglich, Instanzen von Klassen in RDFS zu definieren?

+0

Mögliche Duplikate von [RDF Schema - wie Instanzen erstellen?] (Http://stackoverflow.com/questions/37311789/rdf-schema-how-to-create-instances) – unor

Antwort

3

RDFS ist eine Erweiterung von RDF, die RDF verwendet, um seine Primitive zu definieren. Sie können eine Klasse definieren:

:River rdf:type rdfs:Class . 

Dann Instanzen dieser Klasse werden von der RDF-Anweisung definiert:

:Yangtze rdf:type :River . 

Und Sie können Eigenschaften der Klasse im Zusammenhang definieren - zum Beispiel ein Attribut (Datentyp-Eigenschaft) :

:name rdfs:domain :River . 
:name rdfs:range xsd:string . 
:Yangtze :name "Yangtze River"^^xsd:string . 

..oder Eigenschaft (Beziehung) -Objekt:

:bordersCity rdfs:domain :River . 
:bordersCity rdfs:range :City . 
:City a rdfs:Class . 
:Shanghai a :City . 

... wo a eine Abkürzung für rdf:type ist.

+0

Gute Erklärung. Meine Verwirrung rührt von der Syntax her, die ich verwende. Ich benutze RDF/XML-Syntax, nicht Turtle. Ist es auch in RDF/XML möglich? – birraa

+0

Turtle und RDF/XML sind beide Text-Serialisierungen von RDF, was bedeutet, dass ein RDF-Tool diese in eine intern definierte graph-basierte Datenstruktur übersetzen kann. Der Hauptunterschied besteht darin, dass Turtle für Menschen lesbar ist. RDF/XML ist einfach nicht. Beachten Sie, dass unter Turtle oder RDF/XML "Quellcode" - sie sind Text Serialisierungen. – scotthenninger

2

RDF und RDFS sind zwei unterschiedliche Vokabulare.

Das RDF-Vokabular bietet Ihnen Begriffe zum Definieren/Beschreiben von Instanzen.

Das RDFS-Vokabular bietet Ihnen Begriffe zum Definieren/Beschreiben von Klassen.

Sie können keine Instanzen mit RDFS-Begriffen erstellen. Es ist nicht dafür vorgesehen, daher ist in RDFS kein Begriff definiert, der Instanzen erstellen kann. Um eine Instanz zu erstellen, müssen Sie einen RDF-Ausdruck verwenden:

rdf:type 

RDF und RDFS sind so konzipiert, dass sie zusammenarbeiten. Jeder von ihnen hat seine eigenen Funktionalitäten. Es ist wahr, dass zwischen ihnen eine Abhängigkeit besteht. RDF wird unter Verwendung einiger RDFS-Terme erstellt, und RDFS wird unter Verwendung einiger RDF-Terme erstellt. Siehe:

rdf: https://www.w3.org/1999/02/22-rdf-syntax-ns

rdfs: https://www.w3.org/2000/01/rdf-schema#

Aber sie bleiben immer noch zwei verschiedene Vokabulare mit zwei unterschiedlichen Funktionalitäten.

Verwandte Themen