Semantic Web
Vorlesung
Dr. Harald Sack
Hasso-Plattner-Institut für Softwaresystemtechnik
Universität Potsdam
Wintersemester 2009/10
Blog zur Vorlesung: http://sewe0910.blogspot.com/
Die nichtkommerzielle Vervielfältigung, Verbreitung und Bearbeitung dieser Folien ist zulässig
(Lizenzbestimmungen CC-BY-NC).
http://sw0910.blogspot.com/
Semantic Web - Vorlesungsinhalt
2
1. Einführung
2. Semantic Web Basisarchitektur
Die Sprachen des Semantic Web - Teil 1
3. Wissensrepräsentation und Logik
Die Sprachen des Semantic Web - Teil 2
4. Ontology Engineering
5. Semantic Web Applications
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
3
Semantic Web Architektur
Interface & Application
Trust
Proof
Unifying Logic
Query: Ontology: OWL
Rule: RIF
Crypto
SPARQL
RDFS
Data Interchange: RDF
XML / XSD
URI / IRI
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
Semantic Web - Vorlesungsinhalt
4
1 2 3.11.2009 – Vorlesung Nr. 3 4 5 6 7 8 9 10 11 12
13
14
2. Semantic Web Basisarchitektur
Die Sprachen des Semantic Web - Teil 1
2.1.Uniform Resource Identifier - URI
2.2.XML und XMLSchema
2.3.Resource Description Framework - RDF
2.4.RDF Schema
2.5.Wie kommt die Semantik ins WWW?
2.6.Abfragesprache SPARQL
2.7.Warum reicht RDF(S) noch nicht aus?
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
5
Tim Berners-Lee: W3 future directions,
Plenary at 1st WWW Conference, 1994, Geneva (Switzerland)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
5
To a computer, then, the web is a flat, boring world devoid
of meaning. This is a pity, as in fact documents on the web
describe real objects and imaginary concepts, and give
particular relationships between them. For example, a
document might describe a person. The title document to a
house describes a house and also the ownership relation
with a person. [...]
Tim Berners-Lee: W3 future directions,
Plenary at 1st WWW Conference, 1994, Geneva (Switzerland)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
6
Wissensrepräsentation - ein Beispiel
■ Wie repräsentiere ich folgende Aussage:
„Harald Sack hat die Telefonnummer ++49 (331) 5509-527“
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
6
Wissensrepräsentation - ein Beispiel
■ Wie repräsentiere ich folgende Aussage:
„Harald Sack hat die Telefonnummer ++49 (331) 5509-527“
<telefonnr>
<inhaber>Harald Sack</inhaber>
<nummer>++49 (331) 5509-527</nummer>
</telefonnr>
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
6
Wissensrepräsentation - ein Beispiel
■ Wie repräsentiere ich folgende Aussage:
„Harald Sack hat die Telefonnummer ++49 (331) 5509-527“
<telefonnr>
<inhaber>Harald Sack</inhaber>
<nummer>++49 (331) 5509-527</nummer>
</telefonnr>
<person name=“Harald Sack“>
<telefonnr>49 (331) 5509-527</telefonnr>
</person>
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
6
Wissensrepräsentation - ein Beispiel
■ Wie repräsentiere ich folgende Aussage:
„Harald Sack hat die Telefonnummer ++49 (331) 5509-527“
<telefonnr>
<inhaber>Harald Sack</inhaber>
<nummer>++49 (331) 5509-527</nummer>
</telefonnr>
<person name=“Harald Sack“>
<telefonnr>49 (331) 5509-527</telefonnr>
</person>
<person name=“Harald Sack“ tel=“49 (331) 5509-527“ />
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
6
Wissensrepräsentation - ein Beispiel
■ Wie repräsentiere ich folgende Aussage:
„Harald Sack hat die Telefonnummer ++49 (331) 5509-527“
<telefonnr>
<inhaber>Harald Sack</inhaber>
<nummer>++49 (331) 5509-527</nummer>
</telefonnr>
<person name=“Harald Sack“>
<telefonnr>49 (331) 5509-527</telefonnr>
</person>
<person name=“Harald Sack“ tel=“49 (331) 5509-527“ />
Problem: intuitive Form der Wissensmodellierung?
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
7
Wissensrepräsentation
■ Wie repräsentiere ich folgende Aussage:
„Harald Sack hat die Telefonnummer ++49 (331) 5509-527“
■ Intuitive Form der Wissensrepräsentation mit Hilfe von gerichteten
Graphen
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
7
Wissensrepräsentation
■ Wie repräsentiere ich folgende Aussage:
„Harald Sack hat die Telefonnummer ++49 (331) 5509-527“
■ Intuitive Form der Wissensrepräsentation mit Hilfe von gerichteten
Graphen
Harald Sack ++49 (331) 5509-527
hat Telefonnr.
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
8
Wissensrepräsentation und Kommunikation
Conceptual Domain Model
Objects and Relations
wird übersetzt in
<xsd:schema xmlns:xsd="http://...">
<xsd:annotation> A-Schema
</xsd:... XML DTD / XML Schema
</xsd:schema>
Deployment
XML-
XML-basierte Parser
Kommunikation
Sender verwendet Schema A Empfänger
verwendet Schema A verwendet Schema A
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
9
Wissensrepräsentation und Kommunikation
■ Problem: neue Kommunikationspartner können sich nicht
verstehen
Neuer Neuer
Kommunikationspartner Kommunikationspartner
verwendet Schema B verwendet Schema C
???
??? ???
XML-
XML-basierte Parser
Kommunikation
Sender verwendet Schema A Empfänger
verwendet Schema A verwendet Schema A
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
10
Wissensrepräsentation und Kommunikation
■ Modelle müssen untereinander angepasst werden
Schema A Schema B
Reengineering des <xsd:schema xmlns:xsd="http://..."> <xsd:schema xmlns:xsd="http://...">
<xsd:annotation> A-Schema <xsd:annotation> B-Schema
konzeptionellen </xsd:... </xsd:...
Modells </xsd:schema> </xsd:schema>
Matching
XML Document
Translation
Generation (XSLT)
<xsl:stylesheet version="1.0” <xsl:stylesheet version="1.0”
xmlns:xsl="http://....Transform" xmlns:xsl="http://....Transform"
XML Document <xsl:template match="/"> <xsl:template match="/">
Translation .... ....
</xsl:template> </xsl:template>
Schemata A <-> B </xsl:stylesheet> </xsl:stylesheet>
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
11
Wissensrepräsentation und Kommunikation
■ Modelle müssen untereinander angepasst werden
■ Probleme:
□ Reengineering ist kostenaufwändig und kompliziert
□ Reengineering ist unnötig, wenn konzeptionelle Definitionssprache
verwendet wird
□ Generierung von Übersetzungen (XSLT) ist ebenfalls aufwändig und
unnötig
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
11
Wissensrepräsentation und Kommunikation
■ Modelle müssen untereinander angepasst werden
■ Probleme:
□ Reengineering ist kostenaufwändig und kompliziert
□ Reengineering ist unnötig, wenn konzeptionelle Definitionssprache
verwendet wird
□ Generierung von Übersetzungen (XSLT) ist ebenfalls aufwändig und
unnötig
Nutze abstrakte Ebene oberhalb von XML
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
11
Wissensrepräsentation und Kommunikation
■ Modelle müssen untereinander angepasst werden
■ Probleme:
□ Reengineering ist kostenaufwändig und kompliziert
□ Reengineering ist unnötig, wenn konzeptionelle Definitionssprache
verwendet wird
□ Generierung von Übersetzungen (XSLT) ist ebenfalls aufwändig und
unnötig
Nutze abstrakte Ebene oberhalb von XML
Resource Description Framework (RDF)
• einfach und erweiterbar
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
12
Wissensrepräsentation im Semantic Web
XML
XMLSchema
Level 1
(Objekte)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
12
Wissensrepräsentation im Semantic Web
RDF
RDFSchema
Level 2
(Wissen über XML
Objekte)
XMLSchema
Level 1
(Objekte)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
12
Wissensrepräsentation im Semantic Web
Level 3 OWL
(abgeschlossene
Welten) RDF
RDFSchema
Level 2
(Wissen über XML
Objekte)
XMLSchema
Level 1
(Objekte)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
13
Semantic Web Architektur
Interface & Application
Trust
Proof
Unifying Logic
Query: Ontology: OWL
Rule: RIF
Crypto
SPARQL
RDFS
Data Interchange: RDF
XML / XSD
URI / IRI
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
14
WebPage
URL http://hpi-web.de/harald-sack.htm http://hpi-web.de/ws0910/semanticweb.htm
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
14
Annotation <swrc:Dozent rdf:ID=„hs1"> <swrc:Vorlesung rdf:ID=“sw">
<swrc:name>Harald Sack</swrc:name> <swrc:titel>Semantic Web</swrc:titel>
...
<swrc:betreut rdf:resource = </swrc:Vorlesung >
"http://hpi-web.de/WS0910/sw#sw"/>
... Links haben explizite Bedeutung!
</swrc:Dozent >
WebPage
URL http://hpi-web.de/harald-sack.htm http://hpi-web.de/ws0910/semanticweb.htm
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
14
Ontologie
Person Lehrveranstaltung
rdfs:range
rdfs:subClassOf betreut
rdfs:subClassOf
Dozent
rdfs:domain Vorlesung
rdfs:type rdfs:type
Annotation <swrc:Dozent rdf:ID=„hs1"> <swrc:Vorlesung rdf:ID=“sw">
<swrc:name>Harald Sack</swrc:name> <swrc:titel>Semantic Web</swrc:titel>
...
<swrc:betreut rdf:resource = </swrc:Vorlesung >
"http://hpi-web.de/WS0910/sw#sw"/>
... Links haben explizite Bedeutung!
</swrc:Dozent >
WebPage
URL http://hpi-web.de/harald-sack.htm http://hpi-web.de/ws0910/semanticweb.htm
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
15
Resource Description Format – RDF
■ Ursprünglich entwickelt zur Angabe von Metadaten für
Web-Ressourcen
■ 1995-1997: proprietäres Meta Content Framework (Netscape)
■ 1997 RDF als allgemeine Sprachdefinition für Metadaten, W3C Draft
■ 1998 erste RDF W3C Recommendation (http://www.w3c.org/RDF)
■ 2004 überarbeitete RDF W3C Recommendation
■ Festlegung einer XML-Untermenge mit fest vorgeschriebener
Semantik (machine readable machine understandable)
■ Syntaktische Konvention eines einfachen, universellen semantischen
Datenmodells
■ RDF ist geeignet zur Beschreibung aller möglichen Web-Ressourcen
■ Mit RDF soll ein möglichst hohes Maß an Interoperabilität ermöglicht
werden
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
16 Resource Description Framework - RDF
• definiert Datenmodell zur Beschreibung maschinen-
verarbeitbarer Semantik von Daten
• erlaubt Assoziation einfacher Semantik mit verwendeten
Elementen
URI
Objekt
(Ressource)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
16 Resource Description Framework - RDF
• definiert Datenmodell zur Beschreibung maschinen-
verarbeitbarer Semantik von Daten
• erlaubt Assoziation einfacher Semantik mit verwendeten
Elementen
URI
Eigenschaften
(Properties)
Objekt
(Ressource)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
16 Resource Description Framework - RDF
• definiert Datenmodell zur Beschreibung maschinen-
verarbeitbarer Semantik von Daten
• erlaubt Assoziation einfacher Semantik mit verwendeten
Elementen
URI
Eigenschaften
(Properties)
Objekt
(Ressource) Wertzuweisungen
(Ressource / Literal)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
16 Resource Description Framework - RDF
• definiert Datenmodell zur Beschreibung maschinen-
verarbeitbarer Semantik von Daten
• erlaubt Assoziation einfacher Semantik mit verwendeten
Elementen
URI
Eigenschaften Aussage
(Properties) (Statement)
Objekt
(Ressource) Wertzuweisungen
(Ressource / Literal)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
17
Resource Description Framework - RDF
• Ressourcen:
Dinge/Objekte, die über eine URI adressiert werden können
• Properties:
Attribute/Eigenschaften zur Beschreibung der Ressource
• Statements (RDF-Tripel):
Ressource + Property + zugehöriger Wert
T(s,p,o)
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
18
Bestandteile des RDF-Graphen
• URI:
• Zur eindeutigen Referenzierung von Ressourcen
• Literale:
• beschreiben Datenwerte, denen keine separate Existenz zukommt
• Zeichenketten, Interpretation erfolgt durch Datentyp
• Leere Knoten:
• Erlauben Existenzaussagen über ein Individuum mit gewissen Eigenschaften,
ohne dieses zu benennen
http://hpi-web.de/HaraldSack http://sewe0910.blogspot.com/
S O
http://hpi-web.de/Personal#hatBlog
P
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
19
RDF Darstellungsvarianten
• Knoten-Kante-Knoten Tripel:
http://hpi-web.de/HaraldSack http://sewe0910.blogspot.com/
S O
http://hpi-web.de/Personal#hatBlog
P
• Notation3 (N3):
• Direkte Auflistung der Tripel
• { http://hpi-web.de/HaraldSack,
http://hpi-web.de/Personal#hatBlog,
http://sewe0910.blogspot.com/ }
•Turtle (Terse RDF Triple Language):
• Erweiterung von N3
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
20
RDF Darstellungsvarianten
• Turtle (Terse RDF Triple Language):
• Erweiterung von N3
• URIs in spitzen Klammern
• Literale in Anführungszeichen
• Tripel durch Punkt abgeschlossen
• Leerzeichen und Zeilenumbrüche außerhalb von Bezeichnern werden ignoriert
• Ganz einfaches Beispiel:
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatBlog>
<http://sewe0910.blogspot.com/>.
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatTelefonNr>
“+331-5509-527“.
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
20
RDF Darstellungsvarianten
• Turtle (Terse RDF Triple Language):
• Erweiterung von N3
• URIs in spitzen Klammern
• Literale in Anführungszeichen
• Tripel durch Punkt abgeschlossen
• Leerzeichen und Zeilenumbrüche außerhalb von Bezeichnern werden ignoriert
• Ganz einfaches Beispiel:
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatBlog>
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatBlog>
<http://sewe0910.blogspot.com/>.
<http://sewe0910.blogspot.com/>.
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatTelefonNr>
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatTelefonNr>
“+331-5509-527“.
“+331-5509-527“.
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
20
RDF Darstellungsvarianten
• Turtle (Terse RDF Triple Language):
• Erweiterung von N3
• URIs in spitzen Klammern
• Literale in Anführungszeichen
• Tripel durch Punkt abgeschlossen
• Leerzeichen und Zeilenumbrüche außerhalb von Bezeichnern werden ignoriert
• Ganz einfaches Beispiel:
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatBlog>
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatBlog>
<http://sewe0910.blogspot.com/>. <http://hpi-web.de/Personal#hatBlog>
<http://hpi-web.de/HaraldSack>
<http://sewe0910.blogspot.com/>.
<http://sewe0910.blogspot.com/>.
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatTelefonNr>
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatTelefonNr>
<http://hpi-web.de/HaraldSack> <http://hpi-web.de/Personal#hatTelefonNr>
“+331-5509-527“.
“+331-5509-527“.
“+331-5509-527“ .
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
27
RDF Darstellungsvarianten
• XML-Serialisierung:
• Abgekürzte Schreibweisen:
• Ein Subjekt-Element kann mehrere Property-Elemente
enthalten
• Darstellung von Literalen als XML-Attribute
(pers:hatTelefonNr=“...“)
•Attribut-Name wird dabei Property-URI
• Objekt-Element (Ressource) kann als rdf:resource Attribut im
Property-Element angegeben werden
(rdf:resource=“http://...“)
• Objekt-Elemente können als Subjekt für ein weiteres RDF-Tripel
dienen
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
34
Mehrwertige Beziehungen und Leere Knoten
• Beispiel:
• Eine Lehrveranstaltung findet zwei mal die Woche in zwei
unterschiedlichen Räumen statt
• Wie soll man dies mit RDF modellieren?
http://hpi-web.de/LehrVeranstaltung#SWS
Semantic Web
http://hpi-web.de/ws0910#semanticweb
http://hpi-web.de/LehrVeranstaltung#Raum
HS 2
http://hpi-web.de/LehrVeranstaltung#Termin
Di, 13.30-15.00
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
34
Mehrwertige Beziehungen und Leere Knoten
• Beispiel:
• Eine Lehrveranstaltung findet zwei mal die Woche in zwei
unterschiedlichen Räumen statt
• Wie soll man dies mit RDF modellieren?
http://hpi-web.de/LehrVeranstaltung#SWS
Semantic Web
http://hpi-web.de/ws0910#semanticweb
http://hpi-web.de/LehrVeranstaltung#Raum
HS 2
http://hpi-web.de/LehrVeranstaltung#Raum
http://hpi-web.de/LehrVeranstaltung#Termin
A 2.1
Di, 13.30-15.00
http://hpi-web.de/LehrVeranstaltung#Termin
Do, 13.30-15.00
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
34
Mehrwertige Beziehungen und Leere Knoten
• Beispiel:
• Eine Lehrveranstaltung findet zwei mal die Woche in zwei
unterschiedlichen Räumen statt
• Wie soll man dies mit RDF modellieren?
http://hpi-web.de/LehrVeranstaltung#SWS
Semantic Web
http://hpi-web.de/ws0910#semanticweb
http://hpi-web.de/LehrVeranstaltung#Raum
HS 2
http://hpi-web.de/LehrVeranstaltung#Raum
http://hpi-web.de/LehrVeranstaltung#Termin
A 2.1
Di, 13.30-15.00
http://hpi-web.de/LehrVeranstaltung#Termin
Problem: keine eindeutige Zuordnung
Do, 13.30-15.00
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
35
Mehrwertige Beziehungen und Leere Knoten
• Beispiel:
• Eine Lehrveranstaltung findet zwei mal die Woche in zwei
unterschiedlichen Räumen statt
•
http://hpi-web.de/LehrVeranstaltung#SWS
Semantic Web
http://hpi-web.de/ws0910#semanticweb
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
35
Mehrwertige Beziehungen und Leere Knoten
• Beispiel:
• Eine Lehrveranstaltung findet zwei mal die Woche in zwei
unterschiedlichen Räumen statt
•
http://hpi-web.de/LehrVeranstaltung#SWS
Semantic Web
http://hpi-web.de/ws0910#semanticweb
http://hpi-web.de/LehrVeranstaltung#hatTermin
A 2.1
http://hpi-web.de/LehrVeranstaltung#Raum
Di, 13.30-15.00
http://hpi-web.de/LehrVeranstaltung#Termin
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
35
Mehrwertige Beziehungen und Leere Knoten
• Beispiel:
• Eine Lehrveranstaltung findet zwei mal die Woche in zwei
unterschiedlichen Räumen statt
•
http://hpi-web.de/LehrVeranstaltung#SWS
Semantic Web
http://hpi-web.de/ws0910#semanticweb
http://hpi-web.de/LehrVeranstaltung#hatTermin
http://hpi-web.de/LehrVeranstaltung#hatTermin A 2.1
http://hpi-web.de/LehrVeranstaltung#Raum
Di, 13.30-15.00
HS 2
http://hpi-web.de/LehrVeranstaltung#Termin
http://hpi-web.de/LehrVeranstaltung#Raum
Do, 13.30-15.00
http://hpi-web.de/LehrVeranstaltung#Termin
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
36
Leere Knoten
• Leere Knoten (Blank Nodes, Bnodes) können eingeführt werden, um
mehrwertige Beziehungen darstellen zu können
• Leere Knoten können für Ressourcen eingeführt werden, die nicht
benannt werden müssen (Hilfsknoten)
http://hpi-web.de/ws0910#semanticweb
http://hpi-web.de/LehrVeranstaltung#Raum
A 2.1
http://hpi-web.de/LehrVeranstaltung#hatTermin
Di, 13.30-15.00
http://hpi-web.de/LehrVeranstaltung#Termin
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
37
Leere Knoten
• Anonyme leere Knoten
http://hpi-web.de/ws0910#semanticweb
http://hpi-web.de/LehrVeranstaltung#Raum
A 2.1
http://hpi-web.de/LehrVeranstaltung#hatTermin
Di, 13.30-15.00
http://hpi-web.de/LehrVeranstaltung#Termin
<rdf:Description rdf:about=“http://hpi-web.de/ws0910#semanticweb“>
<lv:hatTermin rdf:parseType=“Resource“/>
<lv:Termin>Di, 13.30-15.00</lv:Termin>
<lv:Raum>A 2.1</lv:Raum>
</lv:hatTermin>
</rdf:Description>
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
43
RDF-Container
• via rdf:Type wird dem Wurzelknoten des Containers ein bestimmter
Container-Typ zugewiesen
• rdf:Bag
ungeordnete Zusammenfassung von Einzelelementen,
Reihenfolge ist ohne Bedeutung
• rdf:Seq
geordnete Zusammenfassung von Einzelelementen,
Reihenfolge ist von Bedeutung
• rdf:Alt
definiert Auswahl zwischen verschiedenen Einzelelementen,
nur ein Element der Auswahl ist für die vorgesehene Anwendung
relevant
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
44
RDF-Container in Turtle http://www.w3.org/1999/02/22-rdf-syntax-ns#_1
http://hpi-web.de/BurgerAnton
http://hpi-web.de/ws0910#semanticweb
http://www.w3.org/1999/02/22-rdf-syntax-ns#_2
http://hpi-web.de/LehrVeranstaltung#Teilnehmer http://hpi-web.de/MuellerFranz
http://www.w3.org/1999/02/22-rdf-syntax-ns#_3
http://hpi-web.de/SchmidtJoseph
http://www.w3.org/1999/02/22-rdf-syntax-ns#type
http://www.w3.org/1999/02/22-rdf-syntax-ns#_4
http://hpi-web.de/SchulzeEgon
http://www.w3.org/1999/02/22-rdf-syntax-ns#Seq
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix lv: <http://hpi-web.de/LehrVeranstaltung#> .
@base <http://hpi-web.de/>
<http://hpi-web.de/ws0910#semanticweb> lv:Teilnehmer [
a rdf:Seq;
rdf:_1 <BurgerAnton>;
rdf:_2 <MuellerFranz>;
rdf:_3 <SchmidtJoseph>;
rdf:_4 <SchulzeEgon> .
].
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
45
RDF-Collection
http://hpi-web.de/ws0910#semanticweb
http://hpi-web.de/LehrVeranstaltung#Teilnehmer
http://www.w3.org/1999/02/22-rdf-syntax-ns#first http://hpi-web.de/BurgerAnton
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
http://hpi-web.de/MuellerFranz
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
http://hpi-web.de/SchmidtJoseph
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
http://www.w3.org/1999/02/22-rdf-syntax-ns#first
http://hpi-web.de/SchulzeEgon
http://www.w3.org/1999/02/22-rdf-syntax-ns#rest
http://www.w3.org/1999/02/22-rdf-syntax-ns#nil
Rekursive Zerlegung der Liste in Kopfelement und (ev. leere) Restliste.
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
46
RDF-Collection
<rdf:Description rdf:about=“http://hpi-web.de/ws0910#semanticweb“>
<lv:Teilnehmer rdf:parseType=“Collection“>
<rdf:Description rdf:about=“http://hpi-web.de/BurgerAnton“ />
<rdf:Description rdf:about=“http://hpi-web.de/MuellerFranz“ />
<rdf:Description rdf:about=“http://hpi-web.de/SchmidtJoseph“ />
<rdf:Description rdf:rabout=“http://hpi-web.de/SchulzeEgon“ />
</lv:Teilnehmer>
</rdf:Description>
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
49
RDF-Reification
• RDF erlaubt die Schachtelung von Statements, d.h. Statements über
Statements zu machen
• Bsp.:
• Sherlock Holmes vermutet, dass der Gärtner den Butler ermordet hat
•Teil 1: Der Gärtner hat den Butler ermordet
<rdf:Description rdf:about=“http://example.org/Gaertner“>
<exv:hatErmordet rdf:resource=“http://example.org/Butler“ />
</rdf:Description>
•Teil 2: Sherlock Holmes hat eine Vermutung
<rdf:Description rdf:about=“http://example.org/SherlockHolmes“>
<exv:hatVermutung> ...???... </exv:hatVermutung>
</rdf:Description>
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
50
RDF-Reification
• rdf:Statement
definiert eine RDF-Aussage (Statement), bestehend aus Subjekt, Prädikat
und Objekt
• rdf:subject - die beschriebene Ressource
• rdf:predicate - das originale Property
• rdf:object - der Wert des Properties in der Aussage
<rdf:Description rdf:about=“http://example.org/StatementOnGaertner“>
<rdf:subject rdf:resource=“http://example.org/Gaertner“ />
<rdf:predicate rdf:resource=“http://example.org/Verbrechen#hatErmordet“ />
<rdf:object rdf:resource=“http://example.org/Butler“ />
<rdf:type rdf:resource="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement" />
</rdf:Description>
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
53
RDF-Reification
• Ist Reification wirklich notwendig?
• Möglichkeit, um Zuverlässigkeit (Vertrauen, Trust) zu formalisieren
• Möglichkeit, um Metadaten über Aussagen (Assertions, Statements) zu
definieren
• In der Wissensrepräsentation (Ontologie-Erstellung):
• Umwandlung von Relationen in Ontologieklassen
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
54
RDF - ein etwas komplizierteres Beispiel
Name Harald Sack
http://hpi-web.de/HaraldSack
Telefonnr.
++49 (3641) 9-46316
betreut
Lehrveranstaltung betreut
Lehrveranstaltung
http://hpi-web.de/ws0910#semanticweb http://hpi-web.de/ws0910#linkeddata
Umfang Name
Name Ort (SWS) Ort Umfang
(SWS)
Linked Data
Semantic Web HS 2 2 A 2.1 2
Engineering
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
60
RDF Charakteristika - Zusammenfassung
• Unabhängigkeit:
da eine Property eine Ressource ist, kann jeder seine eigenen erfinden
• Austauschbarkeit
da RDF auf XML basiert, kann es leicht kommuniziert werden
• Skalierbarkeit
da ein Statement nur aus den drei Teilen (Ressource, Property, Wert) besteht,
können diese in großen Mengen maschinell verarbeitet werden
• Properties sind Ressourcen
da Properties selbst wieder Ressourcen sind, können sie eigene Properties
haben und diese können per RDF automatisch verarbeitet werden
• Werte können Resourcen sein
da Werte selbst wieder Ressourcen sein können, können sie auch wieder eigene
Properties haben
• Statements können Ressourcen sein
da Statements selbst wieder Ressourcen sein können, können sie auch wieder
eigene Properties haben
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
61
RDF und Datenintegration
• Einfaches Beispiel: Bibliografie-Datenbank
ID Autor Titel Verlag Jahr
ISBN 0-00-651409-X HS-123 WWW S-001 2004
ID Name Homepage
HS-123 Harald Sack http://hpi-web.de/HaraldSack.html
ID Verlagname Ort
S-001 Springer Heidelberg
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
62
RDF und Datenintegration
• Export der Datenbank in eine einfache Menge von Relationen
a:v_name Springer
a:v_ort
Heidelberg
a:verlag a:titel WWW-…
http://.../isbn/000651409X
a:jahr 2004
a:autor
a:name Harald Sack
a:homepage
http://hpi-web.de/HaraldSack.html
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
63
RDF und Datenintegration
• Export der Datenbank in eine einfache Menge von Relationen
u:name Harald Sack
a:v_name Springer
u:author a:v_ort
Heidelberg
a:verlag a:titel WWW-…
http://.../isbn/000651409X
http://.../isbn/000651409X
u:cites
a:jahr 2004
a:autor
http://.../a-very-important-paper a:name Harald Sack
a:homepage
u:title
http://hpi-web.de/HaraldSack.html
Web 2.0
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
64
RDF und Datenintegration
• Export der Datenbank in eine einfache Menge von Relationen
u:name Harald Sack
a:v_name Springer
u:author a:v_ort
Heidelberg
a:verlag a:titel WWW-…
http://.../isbn/000651409X
http://.../isbn/000651409X
u:cites
a:jahr 2004
a:autor
http://.../a-very-important-paper a:name Harald Sack
a:homepage
u:title
http://hpi-web.de/HaraldSack.html
Web 2.0
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
64
RDF und Datenintegration
• Export der Datenbank in eine einfache Menge von Relationen
u:name Harald Sack
a:v_name Springer
gleiche URI = gleiche Ressource
u:author a:v_ort
Heidelberg
a:verlag a:titel WWW-…
http://.../isbn/000651409X
http://.../isbn/000651409X
u:cites
a:jahr 2004
a:autor
http://.../a-very-important-paper a:name Harald Sack
a:homepage
u:title
http://hpi-web.de/HaraldSack.html
Web 2.0
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
65
RDF und Datenintegration
• Export der Datenbank in eine einfache Menge von Relationen
u:name Harald Sack
a:v_name Springer
a:v_ort
u:author Heidelberg
a:verlag a:titel WWW-…
http://.../isbn/000651409X
u:cites a:jahr 2004
a:autor
http://.../a-very-important-paper a:name Harald Sack
a:homepage
u:title
http://hpi-web.de/HaraldSack.html
Web 2.0
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
66
RDF-Modell -- Zusammenfassung
• Ein RDF-Model ist eine Menge von Statements
• Statement := (subject, predicate, object)
• Predicate ist eine Ressource
• Subject ist eine Ressource
• Object ist entweder Ressource oder Literal
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
67
Bewertung von RDF
• Weitläufig unterstützter Standard (W3C Recommendation) für
Datenarchivierung und Datenaustausch
• RDF-Tools
• RDF APIs (Jena, Redland, ...)
• RDF Stores / Triple-Stores (Virtuoso, Sesame, Oracle...)
• Grundlage für RSS 1.0, XMP (Adobe), SVG, ...
• Ermöglicht weitgehend syntaxunabhängige Darstellung verteilter
Informationen in einem graphbasierten Datenmodell
• RDF bietet keine Möglichkeit zur Kodierung von Schemawissen...
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
68
RDF
Vocabulary
= RDFS
Description
Language
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
69
Semantic Web Architektur
Interface & Application
Trust
Proof
Unifying Logic
Query: Ontology: OWL
Rule: RIF
Crypto
SPARQL
RDFS
Data Interchange: RDF
XML / XSD
URI / IRI
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
Semantic Web - Vorlesungsinhalt
70
1 2 3.11.2009 – Vorlesung Nr. 3 4 5 6 7 8 9 10 11 12
13
14
2. Semantic Web Basisarchitektur
Die Sprachen des Semantic Web - Teil 1
2.1.Uniform Resource Identifier - URI
2.2.XML und XMLSchema
2.3.Resource Description Framework - RDF
2.4.RDF Schema
2.5.Wie kommt die Semantik ins WWW?
2.6.Abfragesprache SPARQL
2.7.Warum reicht RDF(S) noch nicht aus?
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
71
Literatur
» P. Hitzler, M. Krötzsch, S. Rudolph, Y. Sure
Semantic Web Grundlagen, Springer, 2008.
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
2. Semantic Web Basisarchitektur
2.3 Resource Description Framework - RDF
72
Literatur
□Blog
http://sewe0910.blogspot.com/
□Materialien-Webseite
http://www.hpi.uni-potsdam.de/meinel/teaching/semantic_web_ws0910.html
□bibsonomy - Bookmarks
http://www.bibsonomy.org/user/lysander07/sw0910_03
Vorlesung Semantic Web, Dr. Harald Sack, Hasso-Plattner-Institut, Universität Potsdam
0 comments
Post a comment