W3C Multimodal Interaction Activity Dave Raggett W3C & Openwave Systems November 2002.
OWL Full Semantics -- RDF-Compatible Model-Theoretic Semantics by Peter F. Patel-Schneider, Patrick...
-
Upload
abigayle-marsh -
Category
Documents
-
view
228 -
download
0
Transcript of OWL Full Semantics -- RDF-Compatible Model-Theoretic Semantics by Peter F. Patel-Schneider, Patrick...
OWL Full Semantics-- RDF-Compatible Model-Theoretic Semantics
by Peter F. Patel-Schneider, Patrick Hayes and Ian HorrocksW3C Recommendation, 2004
http://www.w3.org/TR/owl-semantics/rdfs.html
Presented by Jie BaoRPI
Sept 11, 2008
Part 2 of RDF/OWL Semantics Tutorialhttp://tw.rpi.edu/wiki/index.php/
RDF_and_OWL_Semantics
Disclaimer
• The semantics and inference rules about RDFS Plus /RDFS 3.0 are rolely Jie Bao’s own and do not reflect the positions of either W3C (or any of its working group) or any of the RDFS Plus /RDF 3.0 proposals (citation on the page RDFS Plus: a Rule Subset of OWL ).
2
A Layer Cake of Languages
You Are
Here
3
Not Covered in the Talk
• Datatype• Annotation• Ontology house keeping (e.g., imports)• OWL comprehension conditions
4
Outline
• Review of RDF Semantics• OWL Overview• RDFS 3.0 Semantics• OWL Full Universe• OWL Full Interpretation Conditions
5
RDF(S) Vocabulary
RDF RDFSrdf:type rdf:Property
rdfs:domain rdfs:range rdfs:Resource rdfs:Class rdfs:subClassOf rdfs:subPropertyOf
… others (rectification, annotation, literal, collection, container)
6
RDFS Interpretation
IP
IRIEXT
V
IS
IR x IR
IC
ICEXT
vocabulary
rdfs:Class
rdfs:Resource
rdf:Property
extension of classes
extension of properties7
Outline
• Review of RDF Semantics• OWL Overview• RDFS Plus Semantics• OWL Full Universe• OWL Full Interpretation Conditions
8
OWL Family
9
From RDF to OWL 2 Full
RDF
RDFS
RDFS+
OWL FullOWL 2 RL
OWL 2 Full
10
OWL Extensions to RDFS
• Constructing classes: – e.g.,
• Constructing properties: – e.g., inverseOf
• Property characteristics: – e.g., transitive, functional, symmetric
• Mapping– Equality, non-equality (between classes, properties, ind.)
11
Direct MT Sem. vs RDF MT Sem.
• Direct Model-Theoretical Semantics– For OWL DL (thus also OWL Lite)– Simpler than the RDF MT Semantics– Corresponds to the semantics of DL SHOIN(D)– Decidability guaranteed
• RDF-Compatible Model-Theoretical Semantics– For OWL Full (thus also OWL DL and OWL Lite)– Extends RDFS Semantics
12
Outline
• Review of RDF Semantics• OWL Overview• RDFS Plus Semantics• OWL Full Universe• OWL Full Interpretation Conditions
13
RDFS Plus: a Rule Subset of OWL
Design intuition: Scalable, easier to implement using rule inference
• RDFS Plus / OWL Prime / RDFS 3.0– Dean Allemang, James Hendler. Semantic Web for the Working
Ontologist, Chapter 7– Oracle: OWL Prime http://www.w3.org/2007/OWL/wiki/OracleOwlPrime
• Related proposals– AllegroGraph RDFS++:
http://agraph.franz.com/support/learning/Overview-of-RDFS++.lhtml– OWL 2 RL http://www.w3.org/2007/OWL/wiki/Profiles#OWL_2_RL
14
RDFS Plus Vocabulary
Equality Property Characteristicsowl:equivalentClass, owl:equivalentProperty, owl:sameAs
owl:inverseOfowl:TransitiveProperty, owl:SymmetricProperty, owl:FuncionalProperty, owl:InverseFunctionalPropertyowl:ObjectProperty, owl:DatatypeProperty
+ RDFS vocabulary
15
RDFS Plus Semantics
If E is then
owl:ObjectPropertyIS(E) IC and IEXT∈ (IS (E))=IOOP
IEXT(IP)⊆
owl:DatatypePropertyIS(E) IC and IEXT∈ (IS (E))=IODP
IEXT(IP)⊆
If E is then <x,y> IEXT∈ (IS (E)) iff
owl:equivalentClass x,y IC and ICEXT(x)=ICEXT(y)∈
owl:equivalentProperty x,y IOOP IODP and IEXT∈ ∪ (x) = IEXT (y)
owl:sameAs x = y 16
RDFS Plus Semantics
If E is then c ICEXT∈ (IS (E)) iff
owl:TransitiveProperty <x,y>, <y,z> IEXT∈ (c) implies <x,z> IEXT∈ (c)
and c IOOP∈
owl:SymmetricProperty<x,y> IEXT∈ (c) implies <y, x> IEXT∈ (c)
and c IOOP∈
owl:FuncionalProperty <x,y1>, <x,y2> IEXT∈ (c) implies y1 = y2
and c IOOP IODP∈ ∪
owl:InverseFunctionalProperty
<x1,y>, <x2,y> IEXT∈ (c) implies x1 = x2
and c IOOP∈
If E is then <x,y> IEXT (IS(E)) iff∈
owl:inverseOfx,y IOOP and ∈ <u,v> IEXT∈ (x) iff <v,u> IEXT∈
(y)
17
RDFS Plus Semantics
Extensional Semantic Conditions
<c,d> IEXT(IS(rdfs:subClassOf)) ∈
Iff*
c, d IC,∈ICEXT(c) ICEXT(d) ⊆
<p,q> ∈IEXT(IS(rdfs:subPropertyOf))
p, q IP,∈IEXT(p) IEXT(q) ⊆
<p,c> IEXT(IS(rdfs:domain)) ∈p IP, c IC,∈ ∈<x,y> IEXT(p) → x ∈ ∈ICEXT(c)
<p,c> IEXT(IS(rdfs:range)) ∈p IP, c IC,∈ ∈<x,y> IEXT(p) → y ∈ ∈ICEXT(c) * By default, RDFS uses “only if”, OWL 1 Full and OWL 2 Full uses “iff”
18
Inference Rules
Complete rule set is in backup slides
If then (?x, owl:sameAs, ?y) (?y, owl:sameAs, ?x)
(?c1, owl:equivalentClass, ?c2)
(?x, rdf:type, ?c1) (?x, rdf:type, ?c2)
(?p, rdf:type, owl:FunctionalProperty)(?x, ?p, ?y1) T(?x, ?p, ?y2)
(?y1, owl:sameAs, ?y2)
(?p1, owl:inverseOf, ?p2) (?x, ?p1, ?y) (?y, ?p2, ?x)
(?p, rdfs:domain, ?c) (?x, ?p, ?y) (?x, rdf:type, ?c)
Some examples:
19
Outline
• Review of RDF Semantics• OWL Overview• RDFS Plus Semantics• OWL Full Universe• OWL Full Interpretation Conditions
20
OWL Vocabulary
21
Recall: RDFS Interpretation
IP
IRIEXT
V
IS
IR x IR
IC
ICEXT
vocabulary
rdfs:Class
rdfs:Resource
rdf:Property
extension of classes
extension of properties22
OWL Full Interpretation
IP
IRIEXT
V
IS
IR x IR
IC
ICEXT
vocabulary
rdfs:Class=owl:Class
rdfs:Resource=owl:Thing
rdf:Property ={owl:ObjectProperty, owl:DatatypeProperty, owl:AnnotationProperty, owl:OntologyProperty}
extension of classes
extension of properties23
OWL Full vs OWL DLOWL-DL OWL Full
Relation to RDFS universe
owl:Thing <=rdfs:Resourceowl:Class <= rdfs:ClassP <= rdf:Property
owl:Thing = rdfs:Resourceowl:Class = rdfs:ClassP = rdf:Property
Pairwise Disjointness
Yes No
Decidability Yes No
P is the union of owl:ObjectProperty, owl:DatatypeProperty, owl:AnnotationProperty, and owl:OntologyProperty
Note: in OWL Full, an element can be an individual (owl:Thing element), a class (owl:Class element) and an property (P element) at the same time.
24
True or False?In OWL Full• owl:Thing rdfs:subClassOf owl:Class• owl:Class rdfs:subClassOf owl:Thing• owl:Thing rdf:type owl:Class• owl:Class rdf:type owl:Class• rdf:Property rdf:type owl:Class
Refer: • OWL RDF Schema: http://www.w3.org/2002/07/owl • Thing and Class:
http://ontolog.cim3.net/forum/ontolog-forum/2008-09/threads.html#00004
25
Outline
• Review of RDF Semantics• OWL Overview• RDFS Plus Semantics• OWL Full Universe• OWL Full Interpretation Conditions
26
OWL Classes and Properties
If E isthen
IS (E)∈ ICEXT(IS (E))= and
owl:Class IC IOC IOC=IC
owl:Thing IOC IOT IOT=IR and IOT ≠ ∅
owl:Nothing IOC {}
If E is then if e ICEXT(IS ∈
(E)) then Note
owl:Class ICEXT (e) IOT⊆Instances of OWL classes are OWL individuals.
owl:ObjectProperty IEXT (e) IOT×IOT⊆Values for individual-valued properties are OWL individuals.
27
Boolean Operations and Enumeration
If E is then <x,y> IEXT(IS∈ (E)) iffowl:complementOf x,y IOC and ICEXT(x)=IOT-ICEXT(y)∈
owl:unionOfx IOC and y is a sequence of y∈ 1,…yn over IOC
and ICEXT(x) = ICEXT(y1) … ICEXT(y∪ ∪ n)
owl:intersectionOfx IOC and y is a sequence of y∈ 1,…yn over IOC
and ICEXT(x) = ICEXT(y1) ∩…∩ ICEXT(yn)
owl:oneOfx IC and y is a sequence of y∈ 1,…yn over IOT or
over ILV and ICEXT(x) = {y1,..., yn} If E is and then if <x,l> IEXT(IS∈ (E)) then
owl:oneOfl is a sequence of y1,…yn over IOT
x IOC ∈
28
Restriction (Anonymous Class)If E is
thenIS(E)∈ ICEXT(IS(E))= and
owl:Restriction IC IOR IOR IOC⊆
If E is and<x,y> IEXT(IS(E))) ∈ ∧
<x,p> IEXT(IS(owl:onProperty)))∈then x IOR, y IOC, p IOOP, and ICEXT(x) =∈ ∈ ∈
owl:allValuesFrom {u IOT | <u,v> IEXT(p) implies v ICEXT(y) }∈ ∈ ∈
owl:someValuesFrom {u IOT | <u,v> IEXT(p) such that v ICEXT(y) } ∈ ∃ ∈ ∈
then x IOR, y IOT, p IOOP, and ICEXT(x) =∈ ∈ ∈
owl:hasValue {u IOT | <u, y> IEXT(p) }∈ ∈
then x IOR, y is a non-negative integer, ∈p IOOP, and ICEXT(x) =∈
owl:minCardinality {u IOT | card({v IOT : <u,v> IEXT(p)}) ≥ y }∈ ∈ ∈
owl:maxCardinality, owl:cardinality defined similarlyNote: Content on this page is simplified by omitting datatype properties
29
Non-equalityIf E is then <x,y> IEXT∈ (IS(E)) iff
owl:disjointWith x,y IOC and ICEXT(x)∩ICEXT(y)={}∈
owl:differentFrom x ≠ y
More: Comprehension conditions (which require the existence of appropriate OWL descriptions and data ranges ) – not covered
30
ConclusionsRDFS Plus• A scalable rule subset of OWL Full, with MT semantics• Equality + Property Characteristics• Has extensional semantic conditions (while RDFS has not)
OWL Full• Extends RDFS Plus, with MT semantics• OWL Full universe = RDFS universe
– rdfs:Class = owl:Class ; rdfs:Resource = owl:Thing; owl:ObjectProperty <= rdf:Property
• No distinction between classes, properties and individuals
Next talk: OWL 2Full
31
Further Reading• Ian Horrocks, Peter F. Patel-Schneider, Frank van Harmelen - From SHIQ
and RDF to OWL: the making of a Web Ontology Language. In J. Web Sem. 1(1):7-26, 2003.(URL)
• Turner, David; Carroll, Jeremy J. Comparing OWL Semantics. Technical Reports HPL-2007-146. HP Lab, 2007. (URL)
32
Backup
33
Other OWL Vocabulary
• owl:DatatypeProperty, owl:DataRange• owl:Ontology• owl:imports, owl:priorVersion, owl:backwardCompatibleWith,
and owl:incompatibleWith, owl:versionInfo• owl:OntologyProperty• owl:DeprecatedClass, owl:DeprecatedProperty• owl:AnnotationProperty
34
Exercise
• Prove tautology in RDFS:– rdfs:subPropertyOf rdfs:subPropertyOf rdfs:subPropertyOf– rdfs:domain rdfs:domain rdf:Property– rdfs:doman rdfs:range rdf:Class– rdf:Property rdf:type rdfs:Class
• Prove tautology in OWL Full:– owl:sameAs owl:sameAs owl:sameAs
35
RDFS Plus Rules (1)
If then
(?s, ?p, ?o)(?s, owl:sameAs, ?s)(?p, owl:sameAs, ?p)(?o, owl:sameAs, ?o)
(?x, owl:sameAs, ?y) (?y, owl:sameAs, ?x)
(?x, owl:sameAs, ?y)(?y, owl:sameAs, ?z)
(?x, owl:sameAs, ?z)
(?s, owl:sameAs, ?s‘) (?s, ?p, ?o) (?s', ?p, ?o)
(?p, owl:sameAs, ?p‘) (?s, ?p, ?o) (?s, ?p', ?o)
(?o, owl:sameAs, ?o‘) (?s, ?p, ?o) (?s, ?p, ?o')
d
Equality rules
36
RDFS Plus Rules (2)If then
(?c1, owl:equivalentClass, ?c2)
(?x, rdf:type, ?c1) (?x, rdf:type, ?c2)
(?c1, owl:equivalentClass, ?c2)
(?x, rdf:type, ?c2) (?x, rdf:type, ?c1)
(?c1, owl:equivalentClass, ?c2) (?c1, rdfs:subClassOf, ?c2)(?c2, rdfs:subClassOf, ?c1)
(?p1, owl:equivalentProperty, ?p2) (?p1, rdfs:subPropertyOf, ?p2)(?p2, rdfs:subPropertyOf, ?p1)
(?p1, owl:equivalentProperty, ?p2) (?x, ?
p1, ?y) (?x, ?p2, ?y)
(?p1, owl:equivalentProperty, ?p2) (?x, ?
p2, ?y) (?x, ?p1, ?y)
Equality rules 37
RDFS Plus Rules (3)If then
(?p, rdf:type, owl:FunctionalProperty)(?x, ?p, ?y1) T(?x, ?p, ?y2)
(?y1, owl:sameAs, ?y2)
(?p, rdf:type, owl:InverseFunctionalProperty)(?x1, ?p, ?y) T(?x2, ?p, ?y)
(?x1, owl:sameAs, ?x2)
(?p, rdf:type, owl:SymmetricProperty)(?x, ?p, ?y)
(?y, ?p, ?x)
(?p, rdf:type, owl:TransitiveProperty)(?x, ?p, ?y) (?y, ?p, ?z)
(?x, ?p, ?z)
(?p1, owl:inverseOf, ?p2) (?x, ?p1, ?y) (?y, ?p2, ?x)
(?p1, owl:inverseOf, ?p2) (?x, ?p2, ?y) (?y, ?p1, ?x)
Property characteristic rules
38
RDFS Plus Rules (4)
If then
(?c, rdf:type, owl:Class) (?c, rdfs:subClassOf, ?c)(?c, owl:equivalentClasses, ?c)
(?p, rdf:type, owl:ObjectProperty) (?p, rdfs:subPropertyOf, ?p)(?p, owl:equivalentProperty, ?p)
(?p, rdf:type, owl:DatatypeProperty) (?p, rdfs:subPropertyOf, ?p)(?p, owl:equivalentProperty, ?p)
OWL Class and Property Declaration
39
RDFS Plus Rules (5)
If then
(?x, ?p, ?y) (?p, rdf:type rdf:Property)(?x, rdf:type rdfs:Resource)(?y, rdf:type rdfs:Resource)
(?p, rdf:type rdf:Property) (?p, rdfs:subPropertyOf ?p)
(?c, rdf:type rdfs:Class) (?c, rdfs:subClassOf rdfs:Resource) (?c, rdfs:subClassOf ?c)
(?p1, rdfs:subPropertyOf, ?p2) (?x, ?p1, ?y) (?x, ?p2, ?y)
(?c1, rdfs:subClassOf, ?c2) (?x, rdf:type, ?c1) (?x, rdf:type, ?c2)
(?c1, rdfs:subClassOf, ?c2) (?c2, rdfs:subClassOf, ?c3)
(?c1, rdfs:subClassOf, ?c3)
(?p1, rdfs:subPropertyOf, ?p2) (?p2, rdfs:subPropertyOf, ?p3)
(?p1, rdfs:subPropertyOf, ?p3)
RDFS Rules40
RDFS Plus Rules (6)If then
(?p, rdfs:domain, ?c) (?x, ?p, ?y) (?x, rdf:type, ?c)
(?p, rdfs:range, ?c) (?x, ?p, ?y) (?y, rdf:type, ?c)
Rules due to Extensional Semantic Conditions
(?p, rdfs:domain, ?c1) (?c1, rdfs:subClassOf, ?c2) (?p, rdfs:domain, ?c2)
(?p2, rdfs:domain, ?c) (?p1, rdfs:subPropertyOf, ?p2) (?p1, rdfs:domain, ?c)
(?p, rdfs:range, ?c1) (?c1, rdfs:subClassOf, ?c2) (?p, rdfs:range, ?c2)
(?p2, rdfs:range, ?c) (?p1, rdfs:subPropertyOf, ?p2) (?p1, rdfs:range, ?c)
RDFS Rules (domain & range)
41