zentrale elemente des resource description framework (rdf) die modell- und syntax-spezifikation des...

Post on 05-Apr-2015

113 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Zentrale Elemente des Resource Description Framework (RDF)

Die Modell- und Syntax-Spezifikation des World Wide Web Consortiumfür das Semantic Web

Seminar „Grundlagen des Semantic Web“Prof. Dr. Robert Tolksdorf, Freie Universität Berlin

Roman Schmidt

Berlin, 29.4.2003

Beispiel „Ora Lassila“ ist der Creator der Seite http://...

Beispiel „Ora Lassila“ ist der Creator der Seite http://...

http://www.w3.org/Home/Lassila

Ora Lassilacreator

Beispiel „Ora Lassila“ ist der Creator der Seite http://...

<rdf:RDF>

</rdf:RDF>

http://...html

Creator Ora L.

Beispiel „Ora Lassila“ ist der Creator der Seite http://...

<rdf:RDF>

<rdf:Description about=" ">

/> </rdf:Description></rdf:RDF>

http://...html

Creator Ora L.

Beispiel „Ora Lassila“ ist der Creator der Seite http://...

<rdf:RDF>

<rdf:Description about="http://www.w3.org/Home/Lassila">

</rdf:Description></rdf:RDF>

http://...html

Creator Ora L.

Beispiel „Ora Lassila“ ist der Creator der Seite http://...

<rdf:RDF>

<rdf:Description about="http://www.w3.org/Home/Lassila">

<s:Creator> </s:Creator> </rdf:Description></rdf:RDF>

http://...html

Creator Ora L.

Beispiel „Ora Lassila“ ist der Creator der Seite http://...

<rdf:RDF>

<rdf:Description about="http://www.w3.org/Home/Lassila">

<s:Creator>Ora Lassila</s:Creator> </rdf:Description></rdf:RDF>

http://...html

Creator Ora L.

Beispiel s: als Namespace-Präfix

<rdf:RDF>

<rdf:Description about="http://www.w3.org/Home/Lassila">

<s:Creator>Ora Lassila</s:Creator> </rdf:Description></rdf:RDF>

s: ist ein vom Autor des RDF-Statements gewähltes Namespace-Präfix und wird in XML deklariert

Namespaces

• Ein XML Namespace ist eine Menge von Namen, die über eine URI eineindeutig identifizierbar sind.

• Wenn die URI eindeutig identifizierbar ist, ist der Namespace eindeutig zugeordnet.

• XML-Namespace-Name=Präfix+lokaler Name Das Präfix steht für die URI.Die Kombination ist weltweit einzigartig.

http://www.w3.org/TR/1999/REC-xml-names-19990114/

Namespaces

Deklaration: xmlns:Präfix="URI"xmlns:s="http://description.org/schema"

Aufruf: <Präfix:Name [Attribute]> Wert

</Präfix:Name><s:Creator> Ora Lassila </s:Creator>

Beispiel

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-

syntax-ns#" xmlns:s="http://description.org/schema/"> <rdf:Description

about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> </rdf:Description> </rdf:RDF>

http://...html

Creator Ora L.

Beispiel s: als Namespace-Präfix

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-

syntax-ns#" xmlns:s="http://description.org/schema/"> <rdf:Description

about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> </rdf:Description> </rdf:RDF>

s: ist ein vom Autor des RDF-State-ments gewähltes Namespace-Präfix und wird in XML deklariert

http://...html

Creator Ora L.

Beispiel Komplettes XML-Dokument mit Statement

<?xml version="1.0"?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-

ns#" xmlns:s="http://description.org/schema/"> <rdf:Description

about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> </rdf:Description></rdf:RDF>

http://...html

Creator Ora L.

Beispiel Komplettes XML-Dokument mit Statement

<?xml version="1.0"?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-

ns#" xmlns:s="http://description.org/schema/"> <rdf:Description

about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> </rdf:Description></rdf:RDF>

http://...html

Creator Ora L.

Kürzere Schreibweisen

<?xml version="1.0"?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-

ns#" xmlns:s="http://description.org/schema/"> <rdf:Description

about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> </rdf:Description></rdf:RDF>

http://...html

Creator Ora L.

Kürzer: rdf sind redundant...

<?xml version="1.0"?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:s="http://description.org/schema/"> <rdf:Description about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> </rdf:Description></rdf:RDF>

Mit default namespace syntax können die RDF-Auszeichnungen wegfallen

http://...html

Creator Ora L.

Kürzere Schreibweisen

<?xml version="1.0"?><RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-

ns#" xmlns:s="http://description.org/schema/"> <Description

about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> </Description></RDF>

http://...html

Creator Ora L.

Kürzer: namespace mit Description oder Property-Elt

<?xml version="1.0"?><RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-

ns#" xmlns:s="http://description.org/schema/"> <Description

about="http://www.w3.org/Home/Lassila"> <s:Creator> Ora

Lassila</s:Creator> </Description></RDF>

http://...html

Creator Ora L.

Kürzer: namespace mit Description oder Property-Elt

<?xml version="1.0"?><RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

<Description about="http://www.w3.org/Home/Lassila"> <s:Creator xmlns:s="http://description.org/schema/"> Ora Lassila</s:Creator> </Description>

</RDF>namespace-Deklarationen mit individuellem Description- oder Property-Elt-Element

http://...html

Creator Ora L.

Kürzer: "As XML namespace declarations may be nested..."

<?xml version="1.0"?><RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-

ns#">

<Description about="http://www.w3.org/Home/Lassila">

<s:Creator xmlns:s="http://description.org/schema/">

Ora Lassila</s:Creator>

</Description></RDF>

Kürzer: "As XML namespace declarations may be nested..."

<?xml version="1.0"?><RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-

ns#">

<Description about="http://www.w3.org/Home/Lassila">

<Creator xmlns="http://description.org/schema/"> Ora

Lassila</Creator> </Description></RDF>

Kurzsyntax (RDF abbreviated syntax)

<?xml version="1.0"?><RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-

ns#">

<Description about="http://www.w3.org/Home/Lassila">

<Creator xmlns="http://description.org/schema/">

Ora Lassila</Creator>

</Description></RDF>

Kurzsyntax (RDF abbreviated syntax)

<rdf: RDF>

<Description about="http://www.w3.org/Home/Lassila" s:Creator= "Ora

Lassila"/></rdf:RDF>

• Dieselbe property nur einmal innerhalb description

• Nur literals

Kurzsyntax (RDF abbreviated syntax)

<rdf: RDF>

<Description about="http://www.w3.org/Home/Lassila" s:Creator="Ora Lassila"/>

</rdf:RDF>

• Dieselbe property nur einmal innerhalb description

• Nur literals

Vollsyntax

<rdf:RDF> <rdf:Description

about="http://www.w3.org">

<s:Publisher>WWWC</s:Publisher> <s:Title>W3C Home Page</s:Title>

<s:Date>1998-10-03T02:27</s:Date>

</rdf:Description></rdf:RDF>

Vollsyntax RDF

Vollsyntax

<rdf:RDF> <rdf:Description

about="http://www.w3.org">

<s:Publisher>WWWC</s:Publisher>

<s:Title>W3C Home Page</s:Title>

<s:Date>1998-10-03T02:27</s:Date>

</rdf:Description></rdf:RDF>

Vollsyntax RDF

Vollsyntax RDF

<rdf:RDF> <rdf:Description

about="http://www.w3.org">

<s:Publisher>WWWC</s:Publisher>

<s:Title>W3C Home Page</s:Title>

<s:Date>1998-10-03T02:27</s:Date>

</rdf:Description></rdf:RDF>

<rdf:RDF> <rdf:Description

about="http://www.w3.org"

s:Publisher="WWWC" s:Title="W3C Home

Page" s:Date="1998-10-

03T02:27"/>

</rdf:RDF>

HTML-Browser zeigt nichts an

Kurzsyntax RDF abbr.

Vollsyntax

<rdf:RDF> <rdf:Description

about="http://www.w3.org"> <s:Publisher>WWWC</s:Publisher> <s:Title>W3C Home Page</s:Title>

<s:Date>1998-10-03T02:27</s:Date> </rdf:Description></rdf:RDF>

HTML-Browser zeigt properties an -->

<rdf:RDF> <rdf:Description

about="http://www.w3.org"

s:Publisher="WWWC" s:Title="W3C Home

Page" s:Date="1998-10-

03T02:27"/>

</rdf:RDF>

HTML-Browser zeigt nichts an -->

Vollsyntax RDF Kurzsyntax RDF abbr.

Kurzsyntax RDF abbr.

Nützlich für besondere Statements, bei denen

• das Objekt des Statements eine Ressource ist

• die Objekt-Ressource wiederum Eigenschaften (Prädikate) hat, die als properties definiert sind,

• und wenn die Werte dieser properties Strings sind

Beispiel „Ora Lassila“ ist der Creator der Seite http://...

http://www.w3.org/Home/Lassila

Ora Lassilacreator

Beispiel Der Creator der Seite http://... ist jemand mit dem Namen "Ora Lassila" und einer E-Mail-Adresse

http://www.w3.org/Home/Lassila

Ora Lassila

creator

Lassila@w3.org

e-mailName

Beispiel Der Creator der Seite http://... ist Staff Nr. 85740 mit dem Namen "Ora Lassila" und einer E-Mail-Adresse

http://www.w3.org/Home/Lassila

Ora Lassila

creator

Lassila@w3.org

e-mailName

...staffID/857

40

Kurzsyntax RDF abbr.

Nützlich für besondere Statements, bei denen

• das Objekt des Statements eine Ressource ist

• die Objekt-Ressource wiederum Eigenschaften (Prädikate) hat, die als properties definiert sind,

• und wenn die Werte dieser properties Strings sind

Properties der zweiten Ressource können inline im propertyElt -Attribut angegeben werden Ora L.

creator

@

http://staffId/

http://...html

Eigenschaften von properties

Zusätzliche Informationen über eine property:

• property wird zu Objekt der Original-Ressource

• Das Objekt property besitzt - als Subjekt - wiederum properties

Ora L.

creator

@

http://staffId/

http://...html

Eigenschaften von properties

Beispiel:

Der Bleistift hat einen Preis. "Preis" ist property von Bleistift. Die Eigenschaft "Preis" besteht aus Zahl und Währung. "Währung" und "Zahlwert" sind property von "Preis"

Bleistift

0,50

Preis

EUR

WährungWert

Eigenschaften von properties

Beispiel:

Eine Webseite hat das Thema "Bibliothekswissenschaft".

Das Thema hat den Namen "Library Science" und ist in der Dewey-Dezimalklassifikation als "020" kodiert.

http://www.webnuts.net/Jan97

Dewey Decimal Code

dc:subject

020- Library Science

rdf:valueclassifikation

Beispiel Der Creator der Seite http://... ist jemand mit dem Namen "Ora Lassila" und einer E-Mail-Adresse

http://www.w3.org/Home/Lassila

Ora Lassila

creator

Lassila@w3.org

e-mailName

http://www.w3.org/staffId/85740

Syntax RDF explicit serialization form

<rdf:RDF> <rdf:Description about="http://www.w3.org/Home/Lassila"> <s:Creator

rdf:resource="http://www.w3.org/staffId/85740"/> </rdf:Description>

</rdf:RDF>

Ora L.

creator

@

http://staffId/

http://...html

Syntax RDF explicit serialization form

<rdf:RDF> <rdf:Description about="http://www.w3.org/Home/Lassila"> <s:Creator

rdf:resource="http://www.w3.org/staffId/85740"/> </rdf:Description>

<rdf:Description about="http://www.w3.org/staffId/85740"> <v:Name>Ora Lassila</v:Name> <v:Email>lassila@w3.org</v:Email> </rdf:Description></rdf:RDF>

Ora L.

creator

@

http://staffId/

http://...html

Syntax Zwei Dokumente in Tag-Klammern

<rdf:RDF> <rdf:Description about="http://www.w3.org/Home/Lassila"> <s:Creator>

</s:Creator> </rdf:Description></rdf:RDF>

Ora L.

creator

@

http://staffId/

http://...html

Syntax Zwei Dokumente in Tag-Klammern

<rdf:RDF> <rdf:Description about="http://www.w3.org/Home/Lassila"> <s:Creator> <rdf:Description about="http://www.w3.org/staffId/85740">

</rdf:Description> </s:Creator> </rdf:Description></rdf:RDF>

Ora L.

creator

@

http://staffId/

http://...html

Syntax Zwei Dokumente in Tag-Klammern

<rdf:RDF> <rdf:Description about="http://www.w3.org/Home/Lassila"> <s:Creator> <rdf:Description about="http://www.w3.org/staffId/85740"> <v:Name>Ora Lassila</v:Name> <v:Email>lassila@w3.org</v:Email> </rdf:Description> </s:Creator> </rdf:Description></rdf:RDF>

Ora L.

creator

@

http://staffId/

http://...html

Kurzsyntax RDF abbr.

<rdf:RDF> <rdf:Description

about="http://www.w3.org/Home/Lassila"> <s:Creator

rdf:resource="http://www.w3.org/staffId/85740" v:Name="Ora Lassila" v:Email="lassila@w3.org" /> </rdf:Description></rdf:RDF>

Ora L.

creator

@

http://staffId/

http://...html

Kurzsyntax RDF abbr.

<rdf:RDF> <rdf:Description

about="http://www.w3.org/Home/Lassila"> <s:Creator

rdf:resource="http://www.w3.org/staffId/85740" v:Name="Ora Lassila" v:Email="lassila@w3.org" /> </rdf:Description></rdf:RDF>

Ora L.

creator

@

http://staffId/

http://...html

Zusammenfassung:

http://www.w3.org/Home/Lassila

Ora Lassilacreator

Tag-Klammern:

Subjekt: description about

Prädikat: property-Tag mit Namespace - Präfix, entweder inline in der description oder als eigene Tag-Klammer

Objekt: String, durch Prädikat-Tag eingeklammert

Zusammenfassung:

http://www.w3.org/Home/Lassila

Ora Lassilacreator

<rdf:Description about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> </rdf:Description>

Zusammenfassung:

http://www.w3.org/Home/Lassila

Ora Lassilacreator

<?xml version="1.0"?><rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:s="http://description.org/schema/"> <rdf:Description about="http://www.w3.org/Home/Lassila"> <s:Creator>Ora Lassila</s:Creator> </rdf:Description></rdf:RDF>

Zusammenfassung:

Ora L.

creator

@

http://staffId/

http://...html

Genauere Spezifikation von Eigenschaften (properties):

• Objekt erhält als Subjekt eigene Eigenschaften

• property wird zu Objekt der Original-Ressource

• Das Objekt property besitzt - als Subjekt - wiederum properties

Schema

RDF kennt verschiedene Arten von Schemen, darunter das Definieren eines Schemas in einer separaten Datei [RDFSchema].

Diese dient zum Automatisieren von Vorgängen.

ContainerFür Bezüge auf mehrere Ressourcen (z.B. mehrere Autoren eines Dokuments) lassen sich "Container" definieren.

Container

Bag Eine unsortierte Liste von Ressourcen oder Konstanten (ohne Hierarchie, Duplikate erlaubt)

Für Bezüge auf mehrere Ressourcen (z.B. mehrere Autoren eines Dokuments) lassen sich "Container" definieren.

Container

Bag Eine unsortierte Liste von Ressourcen oder Konstanten (ohne Hierarchie, Duplikate erlaubt)

Sequence Eine sortierte Liste von Ressourcen oder Konstanten (mit Hierarchie, Duplikate erlaubt)

Für Bezüge auf mehrere Ressourcen (z.B. mehrere Autoren eines Dokuments) lassen sich "Container" definieren.

Container

Bag Eine unsortierte Liste von Ressourcen oder Konstanten (ohne Hierarchie, Duplikate erlaubt)

Sequence Eine sortierte Liste von Ressourcen oder Konstanten (mit Hierarchie, Duplikate erlaubt)

Alternative Eine Liste von Ressourcen oder Konstanten als Alternativen für einen einfachen Wert einer property (ohne Hierarchie, ohne Duplikate)

Für Bezüge auf mehrere Ressourcen (z.B. mehrere Autoren eines Dokuments) lassen sich "Container" definieren.

Container

Bag Eine unsortierte Liste von Ressourcen oder "Literals" (ohne Hierarchie, Duplikate erlaubt)

Bags ohne Duplikate gibt es noch nicht (Stand: 1999)

desgl. Pat Hayes, Ossi Nykänen (2003), Re: [Fwd: [Moderator Action] RE: RDF Semantics: Interpretations and Modelling, Newsgroup-Briefwechsel vom 07.02.2003, http://lists.w3.org/Archives/Public/w3c-rdfcore-wg/2003Feb/0080.html

Für Bezüge auf mehrere Ressourcen (z.B. mehrere Autoren eines Dokuments) lassen sich "Container" definieren.

Container: Deklaration durch typeEin Container ist eine zusätzliche Ressource, die auf mehrere Ressourcen verweist (sie "enthält").

Er wird als instance einer der Containertypen bag, sequence oder alternative deklariert, mit der property "type".

Die Zugehörigkeit mehrerer Ressourcen zum Container lässt sich mit speziell für diesen Zweck definierten properties ausdrücken.

Container: bag

Seminar "Semantic Web"

Studenten

rdf.bag

/stu/schmidt

/stu/reinke

/stu/paulsen

stu/cyganiak

rdf:type

rdf:_2

rdf:_3

rdf:_4

rdf:_1

stu/nguyen

rdf:_5

Container: bag<rdf:RDF> <rdf:Description about="http://fu-.../hs/stu/semweb/">

</rdf:Description></rdf:RDF>

Container: bag<rdf:RDF> <rdf:Description about="http://fu-.../hs/stu/semweb/"> <s:students>

</s:students> </rdf:Description></rdf:RDF>

Container: bag<rdf:RDF> <rdf:Description about="http://fu-.../hs/stu/semweb/"> <s:students> <rdf:Bag>

</rdf:Bag> </s:students> </rdf:Description></rdf:RDF>

Container: bag<rdf:RDF> <rdf:Description about="http://fu-.../hs/stu/semweb/"> <s:students> <rdf:Bag><rdf:li resource="http://fu-.../hs/semweb/stu/schmidt"/><rdf:li resource="http://fu-.../hs/semweb/stu/reinke"/><rdf:li resource="http://fu-.../hs/semweb/stu/paulsen"/><rdf:li resource="http://fu-.../hs/semweb/stu/nguyen"/><rdf:li resource="http://fu-.../hs/semweb/stu/cyganiak"/> </rdf:Bag> </s:students> </rdf:Description></rdf:RDF>

Container: bag<rdf:RDF> <rdf:Description about="http://fu-.../hs/stu/semweb/"> <s:students> <rdf:Bag><rdf:li resource="http://fu-.../hs/semweb/stu/schmidt"/><rdf:li resource="http://fu-.../hs/semweb/stu/reinke"/><rdf:li resource="http://fu-.../hs/semweb/stu/paulsen"/><rdf:li resource="http://fu-.../hs/semweb/stu/nguyen"/><rdf:li resource="http://fu-.../hs/semweb/stu/cyganiak"/> </rdf:Bag> </s:students> </rdf:Description></rdf:RDF>

Container: sequence

Seminar "Semantic Web"

Studenten

rdf:typerdf:_2

rdf:_3

rdf:_4

rdf:_1

rdf:_5

rdf:seq

stu/cyganiak

stu/nguyen

/stu/paulsen

/stu/reinke

/stu/schmidthierarchisch (hier: nach Alphabet)

<rdf:RDF> <rdf:Description about="http://fu-.../hs/stu/semweb/"> <s:students> <rdf:Seq><rdf:li resource="http://fu-.../hs/semweb/stu/cyganiak"/><rdf:li resource="http://fu-.../hs/semweb/stu/reinke"/><rdf:li resource="http://fu-.../hs/semweb/stu/nguyen"/><rdf:li resource="http://fu-.../hs/semweb/stu/paulsen"/><rdf:li resource="http://fu-.../hs/semweb/stu/schmidt"/> </rdf:Seq> </s:students> </rdf:Description></rdf:RDF>

Container: sequence

Seminar

Studis

rdf:seq 1. cyganiak

2. nguyen

3. paulsen

4. reinke

5. schmidt

Container: alternative

http://www.oei.fu-berlin.de/

rdf:type

Sprache

rdf:_4rdf:_3rdf:_2

rdf:_5

rdf:_1

entweder - oder

rdf:alt deutsch english русски polski shqip

<rdf:RDF> <rdf:Description about="www.oei.fu-berlin.de/"> <s:eingangsseite> <rdf:Alt><rdf:li xml:lang="gr"/><rdf:li xml:lang="en"/><rdf:li xml:lang="ru"/><rdf:li xml:lang="pl"/><rdf:li xml:lang="sq"/> </rdf:Alt> </s:eingangsseite> </rdf:Description></rdf:RDF>

Container: alternative

Sprache

rdf:alt deutsch english русски polski shqip

www.oei.fu-berlin.de

Container: bag

Seminar "Semantic Web"

Studenten

rdf.bag

rdf:type

Problem

1.: Wie adressiere ich einen Container?

Container: bag

Seminar "Semantic Web"

Titel

rdf.bag

/stu/schmidtrdf:type

rdf:_1

Problem

1.: Wie adressiere ich einen Container?2.: Wie adressiere ich ein member eines Containers?

Adressieren eines ganzen Containers: Die bag<rdf:RDF> <rdf:Description about="http://fu-.../hs/stu/semweb/"> <s:students> <rdf:Bag ID="studis"><rdf:li resource="http://fu-.../hs/semweb/stu/schmidt"/><rdf:li resource="http://fu-.../hs/semweb/stu/reinke"/><rdf:li resource="http://fu-.../hs/semweb/stu/paulsen"/><rdf:li resource="http://fu-.../hs/semweb/stu/cyganiak"/> </rdf:Bag> </s:students> </rdf:Description></rdf:RDF>

Adressieren eines ganzen Containers: Die bag<rdf:Description about="#studis">

<s:meaning>Die Studierenden im Seminar Semantic Web</s:meaning>

</rdf:Description>

Adressieren eines ganzen Containers: bag Nr. 2

<rdf:Bag ID="pages"> <rdf:li resource="http://foo.org/foo.html" /> <rdf:li resource="http://bar.org/bar.html" /></rdf:Bag>

Adressieren eines ganzen Containers: bag Nr. 2

<rdf:Bag ID="pages"> <rdf:li resource="http://foo.org/foo.html" /> <rdf:li resource="http://bar.org/bar.html" /></rdf:Bag>

<rdf:Description about="#pages"> <s:Creator>Ora Lassila</s:Creator></rdf:Description>

Adressieren aller members des Containers

<rdf:Bag ID="pages"> <rdf:li resource="http://foo.org/foo.html" /> <rdf:li resource="http://bar.org/bar.html" /></rdf:Bag>

<rdf:Description aboutEach="#pages"> <s:Creator>Ora Lassila</s:Creator></rdf:Description>

Adressieren eines einzelnen Container-members

Adressieren eines einzelnen Container-members

Geht nicht!

Das geht nur wie bei einfachen Ressourcen auch:

Adressieren eines einzelnen Container-members geht nur als einfache Ressource

<rdf:Bag ID="pages"> <rdf:li resource="http://foo.org/foo.html" /> <rdf:li resource="http://bar.org/bar.html" /></rdf:Bag>

<rdf:Description about="http://foo.org/foo.html"> <s:Creator>Ora Lassila</s:Creator></rdf:Description>

<rdf:Description about="http://bar.org/bar.html"> <s:Creator>Ora Lassila</s:Creator></rdf:Description>

Adressieren eines ganzen URL-Baums

<rdf:Description aboutEachPrefix="http://foo.org/doc">

<s:Copyright>© 1998, The Foo Organization</s:Copyright>

</rdf:Description>

Wann einen Container statt mehrerer properties?

Wann mehrere Properties statt einem Container?

Properties: Wenn die einzelnen Objekt-Ressourcen nichts mit einander zu tun haben, außer dass sie alle eine Eigenschaft einer Subjekt-Ressource sind.

Wenn die einzelnen Objekt-Ressourcen

unabhängig vom Subjekt etwas mit einander zu tun haben.

Wann mehrere Properties statt einem Container?

Konsalik

Der Arzt von Stalingrad

Das Regenwald-Komplott

Dr.Berg

Liebesnächte in der Taiga

...

istAutor

istAutor

istAutor

istAutor

istAutor

...

istAutor

Wann einen Container statt mehrerer properties?

Beschluss rdf.bag

/stu/schmidt

/stu/reinke

/stu/paulsen

stu/cyganiak

rdf:type

rdf:_2

rdf:_3

rdf:_4

rdf:_1

stu/nguyen

rdf:_5

Angenommen durch

Zusammenfassung: Container

Bag Unsortiert, ohne Hierarchie, Duplikate erlaubt

Sequence Sortiert, mit Hierarchie, Duplikate erlaubt

Alternative Entweder Oder für eine property. Ohne Hierarchie, ohne Duplikate

Für Bezüge auf mehrere Ressourcen (z.B. mehrere Autoren eines Dokuments) lassen sich "Container" definieren.

Zusammenfassung: Container

Seminar "Semantic Web"

Studenten

rdf.bag

/stu/schmidt

/stu/reinke

/stu/paulsen

stu/cyganiak

rdf:type

rdf:_2

rdf:_3

rdf:_4

rdf:_1

stu/nguyen

rdf:_5

Zusammenfassung: Adressieren von Containern

Adressieren eines ganzen Containers: <rdf:Description about="#pages">

Adressieren aller members eines ganzen Containers:<rdf:Description aboutEach="#pages">

Adressieren eines einzelnen Container-members:Nur über seine URI, unabhängig von Container.

Adressieren eines ganzen URL-Baums: <rdf:Description aboutEachPrefix="http://foo.org/doc">

Statements über Statements

Einfaches Statement:

„Ora Lassila“ ist der Creator der Seite

http://...html

Creator Ora L.

Statements über Statements

Einfaches Statement:

„Ora Lassila“ ist der Creator der Seite

Statement höherer Ordnung:

Ralph Swick sagt, "Ora Lassila" sei der Creator der Seite http://...

http://...html

Creator Ora L.

Statements über Statements

Einfaches Statement:

„Ora Lassila“ ist der Creator der Seite

Statement höherer Ordnung:

Ralph Swick sagt, "Ora Lassila" sei der Creator der Seite http://...

http://...html

Creator Ora L.

Modellieren von Statements mit RDF

Reification http://...html

Creator Ora L.

RDF-propertieszur Modellierung von Statements:

Reifikation

http://...html

Creator Ora L.

RDF-properties zur Modellierung von Statements:

subject

Reifikation

http://www.w3.org/Home/Lassila

http://...html

Creator Ora L.

subject

RDF-properties zur Modellierung von Statements:

subject

predicate

Reifikation

http://www.w3.org/Home/Lassila

creator

http://...html

Creator Ora L.

subjectpredicate

RDF-properties zur Modellierung von Statements:

subject

predicate

object

Reifikation

http://www.w3.org/Home/Lassila

Ora Lassila

creator

http://...html

Creator Ora L.

subjectpredicate

object

RDF-properties zur Modellierung von Statements:

subject

predicate

object

type

Reifikation

http://www.w3.org/Home/Lassila

Ora Lassila

creator

rdf:Statement http://...html

Creator Ora L.

RDF-properties zur Modellierung von Statements:

subject

predicate

object

type

subjectpredicate

object

type

RDF-properties zur Modellierung von Statements:

subject

predicate

object

type

Reifikation

http://www.w3.org/Home/Lassila

Ora Lassila

creator

rdf:Statement

subjectpredicate

object

type

Reifikation: Auf Deutsch

RDF-properties zur Modellierung von Statements:

subject = Das Subjekt der modellierten Aussage

predicate = Die Eigenschafts-Art der Eigenschaft, die das modellierte Statement ausdrückt

object = Die Eigenschaft der modellierten Ressource (die Ausprägung der Eigenschafts-Art)

type = Typ des Modells

http://...lassila

Ora L.

creator

type

Reifikation: RDF

RDF-properties zur Modellierung von Statements:

subject = Die Ressource, die das Statement beschreibt

predicate = Eine Ressource, die die property beschreibt(creator, ggf. mit URI)

object = Der property-Wert des Statement-Modells (das Objekt des Original-Statements"Ora Lassila")

type = Typ des Statement-Modells

http://...lassila

Ora L.

creator

type

Reifikation: RDF

<rdf: ><rdf:Description>

</rdf:Description>

</rdf:RDF>

http://...lassila

Ora L.

creator

type

Reifikation: RDF

<rdf: ><rdf:Description> <rdf:subject resource="http://..../Lassila" />

</rdf:Description>

</rdf:RDF>

http://...lassila

Ora L.

creator

type

Reifikation: RDF

<rdf: ><rdf:Description> <rdf:subject resource="http://..../Lassila" /> <rdf:predicate resource="http://description.org/schema/Creator" />

</rdf:Description>

</rdf:RDF>

http://...lassila

Ora L.

creator

type

Reifikation: RDF

<rdf: ><rdf:Description> <rdf:subject resource="http://..../Lassila" /> <rdf:predicate resource="http://description.org/schema/Creator" /> <rdf:object>Ora Lassila</rdf:object>

</rdf:Description>

</rdf:RDF>

http://...lassila

Ora L.

creator

type

Reifikation: RDF

<rdf: ><rdf:Description> <rdf:subject resource="http://..../Lassila" /> <rdf:predicate resource="http://description.org/schema/Creator" /> <rdf:object>Ora Lassila</rdf:object> <rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement" />

</rdf:Description>

</rdf:RDF>

http://...lassila

Ora L.

creator

type

Reifikation: RDF

<rdf: ><rdf:Description> <rdf:subject resource="http://..../Lassila" /> <rdf:predicate resource="http://description.org/schema/Creator" /> <rdf:object>Ora Lassila</rdf:object> <rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement" />

<a:attributedTo>Ralph Swick</a:attributedTo>

</rdf:Description>

</rdf:RDF>

http://...lassila

Ora L.

creator

typeRalph Swick a:attributed to

Reifikation: RDF

<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:a="http://description.org/schema/"><rdf:Description> <rdf:subject resource="http://..../Lassila" /> <rdf:predicate resource="http://description.org/schema/Creator" /> <rdf:object>Ora Lassila</rdf:object> <rdf:type resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement" />

<a:attributedTo>Ralph Swick</a:attributedTo>

</rdf:Description>

</rdf:RDF>

http://...lassila

Ora L.

creator

typeRalph Swick a:attributed to

Reifikation: Modellieren mehrerer Description-Elemente

http://www.w3.org/Home/Lassila

Ora Lassila

s:creator

Reifikation: Modellieren mehrerer Description-Elemente

http://www.w3.org/Home/Lassila

Ora Lassila

Ralph Swickappointed by

s:creator

Reifikation: Modellieren mehrerer Description-Elemente

http://www.w3.org/Home/Lassila

Ora Lassila

creator

rdf:subject

rdf:predicate

rdf:object

Ralph Swickappointed by

s:creator

Reifikation: Modellieren mehrerer Description-Elemente

http://www.w3.org/Home/Lassila

Ora Lassila

creatorrdf:Statement

rdf:subject

rdf:predicate

rdf:object

rdf:type

Ralph Swickappointed by

s:creator

Reifikation: Modellieren mehrerer Description-Elemente

http://www.w3.org/Home/Lassila

Ralph Swick

Ora's Homepage

attributed to

s:title

Reifikation: Modellieren mehrerer Description-Elemente

http://www.w3.org/Home/Lassila

Ralph Swick

Ora's Homepage

s:title

rdf:subject

rdf:predicate

rdf:object

attributed to

s:title

Reifikation: Modellieren mehrerer Description-Elemente

http://www.w3.org/Home/Lassila

rdf:Statement

Ralph Swick

Ora's Homepage

s:title

rdf:subject

rdf:predicate

rdf:object

attributed to

s:title

Reifikation: Modellieren mehrerer Description-Elemente

http://www.w3.org/Home/Lassila

Ora Lassila

s:creatorrdf:Statement

rdf:subject

rdf:predicate

rdf:object

Ralph Swickattributed to

s:creator

Ora's Homepage

s:title

rdf:subject

rdf:predicate

rdf:object

attributed to

s:title

Reifikation: Modellieren mehrerer Description-Elemente

http://www.w3.org/Home/Lassila

Ora Lassila

s:creatorrdf:Statement

rdf:subject

rdf:predicate

rdf:object

rdf:type

Ralph Swickattributed to

s:creator

Ora's Homepage

s:title

rdf:subject

rdf:predicate

rdf:object

rdf:type

attributed to

s:title

D_001

rdf:bagrdf:type

rdf:_2

rdf:_1

Reifikation: Modellieren mehrerer Description-Elemente

http://www.w3.org/Home/Lassila

Ora Lassila

s:creatorrdf:Statement

rdf:predicate

rdf:object

rdf:type

Ora's Homepage

s:title

rdf:predicate

rdf:object

rdf:type

D_001

rdf:bagrdf:type

rdf:_2

rdf:_1

Reifikation: Modellieren mehrerer Description-Elemente

durch bag für das Zusammenfassen mehrerer Statements (statement grouping)

creator

http://...lassilaOra L.

type:rdf-statementTitel

Oras Homepage

D_001

bag

Reifikation: Modellieren mehrerer Description-Elemente

durch bag für das Zusammenfassen mehrerer Statements (statement grouping)

<rdf:RDF> <rdf:Description about="http://www.w3.org/Home/Lassila" bagID="D_001">

</rdf:Description> </rdf:RDF>

creator

http://...lassilaOra L.

type:rdf-statementTitel

Oras Homepage

D_001

bag

Reifikation: Modellieren mehrerer Description-Elemente

durch bag für das Zusammenfassen mehrerer Statements (statement grouping)

<rdf:RDF> <rdf:Description about="http://www.w3.org/Home/Lassila" bagID="D_001">

<s:Creator>Ora Lassila</s:Creator> <s:Title>Ora's Home Page</s:Title>

</rdf:Description> </rdf:RDF>

creator

http://...lassilaOra L.

type:rdf-statementTitel

Oras Homepage

D_001

bag

Reifikation: Modellieren mehrerer Description-Elemente

<rdf:Description aboutEach="#D_001"> <a:attributedTo>Ralph Swick</a:attributedTo> </rdf:Description>

Ora's Homepage

http://www.w3.org/Home/Lassila

Ora Lassila

s:creatorrdf:Statement

Ralph Swick

s:title

D_001

rdf:bag

Zusammenfassung: Reifikation

http://...lassila

Ora L.

creator

typeRalph Swick a:attributed to

• dient zum Fixieren von Statements über Statements in RDF

(Statements höhrerer Ordnung)

• geschieht durch Modellierung von RDF-Bezügen durch RDF-Syntax

• properties sind: subject, predicate, object, type

Zusammenfassung: Reifikation

• dient zum Fixieren von Statements über Statements in RDF

(Statements höhrerer Ordnung)

• geschieht durch Modellierung von RDF-Bezügen durch RDF-Syntax

• properties sind: subject, predicate, object, type

• Zusammenfassen mehrerer Statements (statement grouping) durch spezielle bag (bagID)

• Description von bags : <rdf:Description aboutEach=>

Formales RDF-ModellFormale Grammatik

Ora Lassila, Ralph R. Swick (1999, Download 4.2003), Resource Description Framework (RDF) Model and Syntax Specification, W3C Recommendation, 22. Februar 1999, REC-rdf-syntax-19990222 (kein Ort): W3C (World Wide Web Consortium), http://www.w3.org/TR/1999/REC-rdf-syntax-19990222.

Quellen

Ora Lassila, Ralph R. Swick (1999, Download 4.2003), Resource Description Framework (RDF) Model and Syntax Specification, W3C Recommendation, 22. Februar 1999, REC-rdf-syntax-19990222 (kein Ort): W3C (World Wide Web Consortium), http://www.w3.org/TR/1999/REC-rdf-syntax-19990222.

Tim Bray, Dave Hollander, Andrew Layman (1999, Download 4.2003), Namespaces in XML, World Wide Web Consortium am 14. Januar 1999, REC-xml-names-19990114, (kein Ort): W3C (World Wide Web Consortium), http://www.w3.org/TR/1999/REC-xml-names-19990114.

Tim Berners-Lee, James Hendler, Ora Lassila (2001), „The Semantic Web“, in: Scientific American vom Mai 2001, http://www.scientificamerican.com/article.cfm?articleID=00048144-10D2-1C70-84A9809EC588EF21&catID=2.

top related