SWModLang ESSLLI09 1
SWModLang ESSLLI09 1
Modeling Languages
Part I: RDF
Markus Krötzsch & Sebastian Rudolph
ESSLLI 2009 Bordeaux
• A Brief Motivation
• RDF
• Simple Semantics for RDF
• RDF Schema
• Semantics for RDF(S)
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 2
Why Semantic Web Modelling?
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 3
Shortcomings of (Pure) XML
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 5
RDF: Graphs instead of Trees
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 6
RDF
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 7
Building blocks for RDF Graphs
• URIs
• literals
• blank nodes (aka: empty nodes, bnodes)
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 8
URIs - Idea
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 9
URIs - Syntax
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 10
Self-defined URIs
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 12
Bnodes
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 13
Graphs as Triple Sets
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 14
Graphs as Triple Sets
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 15
Graphs as Triple Sets
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 16
RDF Triples
Turtle notation:
– unabbreviated URIs in <…>
– literals in “…”
– period at the end of each triple
– extra spaces and linebreaks outside of names irrelevant
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 18
Turtle - An Easy Syntax for RDF
Turtle notation:
– unabbreviated URIs in <…> but can be abbreviated by namespaces
– literals in “…”
– period at the end of each triple
– extra spaces and linebreaks outside of names irrelevant
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 19
Turtle - An Easy Syntax for RDF
Turtle notation:
– unabbreviated URIs in <…> but can be abbreviated by namespaces
– literals in “…”
– period at the end of each triple
– extra spaces and linebreaks outside of names irrelevant
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 20
Turtle - An Easy Syntax for RDF
Turtle notation:
– unabbreviated URIs in <…> but can be abbreviated by namespaces
– literals in “…”
– period at the end of each triple
– extra spaces and linebreaks outside of names irrelevant
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 21
XML-Syntax of RDF
<rdf:Description rdf:about="http://semantic-web-book.org/uri">
<ex:title>Foundations of Semantic Web Technologies</ex:title>
<ex:publishedBy>
<rdf:Description rdf:about="http://crcpress.com/uri">
<ex:name>CRC Press</ex:name>
</rdf:Description>
</ex:publishedBy>
</rdf:Description>
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 22
Datatypes in RDF
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 23
Datatypes – the Abstract View
• Example: xsd:decimal
lexical space value space
datatype mapping
"3.14"
"3.14000" 3,14
"+03.14"
-2,5
"-2.5"
100
"100.00"
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 24
Datatypes in RDF – Example
• Graph:
• Turtle:
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> ."
<http://www.w3.org/TR/rdf-primer>"
<http://example.org/title> "RDF Primer"^^xsd:string ;"
<http://example.org/publicationDate> "2004-02-10"^^xsd:date .
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 25
Language Settings and
Datatypes
• language settings only applicable to untyped literals
<http://www.w3.org/TR/rdf-primer> "
<http://example.org/title>"
"Initiation à RDF"@fr, "RDF Primer"@en .
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 26
n-ary Relationships
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 27
n-ary Relationships
• Turtle version 1:
@prefix ex: <http://example.org/> .
ex:Chutney ex:hasIngredient _:id1 .
_:id1 ex:ingredient ex:greenMango; ex:amount "1lb" .
• Turtle version 2:
@prefix ex: <http://example.org/> .
ex:Chutney ex:hasIngredient
[ ex:ingredient ex:greenMango; ex:amount "1lb" ] .
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 28
Special Datastructures in RDF
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 29
Open Lists (Container)
• Graph:
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 30
Closed Lists (Collections)
• Graph:
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 31
Reification
ex:supposes
Reification
ex:supposes
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 33
Simple Semantics
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 34
Simple Semantics
• Interpretations in RDF:
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 35
Simple Semantics
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 37
Schema Knowledge with RDF(S)
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 38
Classes and Instances
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 39
Subclasses
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 40
Properties
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 41
Subproperties
• then, given
ex:Markus ex:happilyMarriedWith ex:Anja ."
we can deduce
ex:Markus ex:marriedWith ex:Anja ."
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 42
Property Restrictions
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 43
Property Restrictions
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 44
Additional Information
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 45
RDFS Entailment
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 46
RDFS Entailment – Automation
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 47
Semantics of RDFS via Translation
into FOL
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 48
Semantics of RDFS via Translation
into FOL
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 49
Semantics of RDFS via Translation
into FOL
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 50
Deployment of RDF
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 51
RDF(S) as Ontology Language?
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 52
RDF(S) as Ontology Language?
Shortcomings of RDF(S):
• “weak” semantics:
Markus Krötzsch, Sebas7an Rudolph: Seman7c Web Modelling Languages, ESSLLI 2009, Bordeaux. www.seman7c‐web‐book.org 53
References