OWL Full Semantics

Uploaded on

2008 09-06 owl full

2008 09-06 owl full

More in: Technology , Education
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. OWL Full Semantics -- RDF-Compatible Model-Theoretic Semantics by Peter F. Patel-Schneider, Patrick Hayes and Ian Horrocks W3C Recommendation, 2004 http://www.w3.org/TR/owl-semantics/rdfs.html Presented by Jie Bao RPI Sept 11, 2008 Part 2 of RDF/OWL Semantics Tutorial http://tw.rpi.edu/wiki/index.php/RDF_and_OWL_Semantics
  • 2. 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
  • 3. A Layer Cake of Languages OWL2 OWL You Are Here (RDFS Plus) RDF(S) 3
  • 4. Not Covered in the Talk • Datatype • Annotation • Ontology house keeping (e.g., imports) • OWL comprehension conditions 4
  • 5. Outline • Review of RDF Semantics • OWL Overview • RDFS 3.0 Semantics • OWL Full Universe • OWL Full Interpretation Conditions 5
  • 6. RDF(S) Vocabulary RDF RDFS rdf:type rdfs:domain rdf:Property rdfs:range rdfs:Resource rdfs:Class rdfs:subClassOf rdfs:subPropertyOf … others (rectification, annotation, literal, collection, container) 6
  • 7. RDFS Interpretation V vocabulary extension of classes IS ICEXT rdf:Property IP IC IEXT rdfs:Class IR rdfs:Resource IR x IR 7 extension of properties
  • 8. Outline • Review of RDF Semantics • OWL Overview • RDFS Plus Semantics • OWL Full Universe • OWL Full Interpretation Conditions 8
  • 9. OWL Family OWL Full OWL DL (SHOIN(D)) OWL Lite (SHIF(D)) RDFS Plus (or RDFS 3.0) 9
  • 10. From RDF to OWL 2 Full OWL 2 Full Covered next time RDFS+ RDFS OWL 2 RL OWL Full RDF 10
  • 11. 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
  • 12. 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
  • 13. Outline • Review of RDF Semantics • OWL Overview • RDFS Plus Semantics • OWL Full Universe • OWL Full Interpretation Conditions 13
  • 14. 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
  • 15. RDFS Plus Vocabulary Equality Property Characteristics owl:equivalentClass, owl:inverseOf owl:equivalentProperty, owl:TransitiveProperty, owl:sameAs owl:SymmetricProperty, owl:FuncionalProperty, owl:InverseFunctionalProperty owl:ObjectProperty, owl:DatatypeProperty + RDFS vocabulary 15
  • 16. RDFS Plus Semantics If E is then IS(E) ∈IC and IEXT (IS (E))=IOOP owl:ObjectProperty ⊆IEXT(IP) IS(E) ∈IC and IEXT (IS (E))=IODP owl:DatatypeProperty ⊆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
  • 17. RDFS Plus Semantics If E is ∈ then c∈ICEXT (IS (E)) iff ∈ ∈ <x,y>, <y,z>∈IEXT (c) implies <x,z>∈IEXT (c) owl:TransitiveProperty and c ∈IOOP <x,y> ∈ IEXT (c) implies <y, x>∈IEXT (c) ∈ owl:SymmetricProperty and c ∈IOOP <x,y1>, <x,y2> ∈ IEXT (c) implies y1 = y2 owl:FuncionalProperty and c∈IOOP ∪ IODP ∈ <x ,y>, <x2,y>∈IEXT (c) implies x1 = x2 owl:InverseFunctionalProperty 1 and c∈IOOP If E is ∈ then <x,y>∈IEXT (IS(E)) iff owl:inverseOf x,y∈IOOP and <u,v>∈IEXT (x) iff <v,u>∈IEXT (y) ∈ ∈ 17
  • 18. RDFS Plus Semantics Extensional Semantic Conditions c, d ∈ IC, <c,d> ∈ IEXT(IS(rdfs:subClassOf)) ICEXT(c) ⊆ ICEXT(d) p, q ∈ IP, <p,q> ∈ IEXT(IS(rdfs:subPropertyOf)) IEXT(p) ⊆ IEXT(q) Iff* p ∈ IP, c ∈ IC, <p,c> ∈ IEXT(IS(rdfs:domain)) <x,y> ∈ IEXT(p) → x ∈ ICEXT(c) p ∈ IP, c ∈ IC, <p,c> ∈ IEXT(IS(rdfs:range)) <x,y> ∈ IEXT(p) → y ∈ ICEXT(c) * By default, RDFS uses “only if”, OWL 1 Full and OWL 2 Full uses “iff” 18
  • 19. Inference Rules Some examples: If then (?x, owl:sameAs, ?y) (?y, owl:sameAs, ?x) (?c1, owl:equivalentClass, ?c2) (?x, rdf:type, ?c2) (?x, rdf:type, ?c1) (?p, rdf:type, owl:FunctionalProperty) (?y1, owl:sameAs, ?y2) (?x, ?p, ?y1) T(?x, ?p, ?y2) (?p1, owl:inverseOf, ?p2) (?x, ?p1, ?y) (?y, ?p2, ?x) (?p, rdfs:domain, ?c) (?x, ?p, ?y) (?x, rdf:type, ?c) Complete rule set is in backup slides 19
  • 20. Outline • Review of RDF Semantics • OWL Overview • RDFS Plus Semantics • OWL Full Universe • OWL Full Interpretation Conditions 20
  • 21. OWL Vocabulary Classes Class Construction owl:Class owl:complementOf Boolean owl:Thing owl:intersectionOf owl:Nothing owl:unionOf owl:Restriction qualification qualification cardinality owl:allValuesFrom owl:onProperty owl:someValuesFrom Non-equality owl:hasValue owl:differentFrom owl:cardinality owl:disjointWith owl:minCardinality owl:AllDifferent owl:maxCardinality owl:distinctMembers owl:oneOf + RDFS Plus vocabulary 21
  • 22. Recall: RDFS Interpretation V vocabulary extension of classes IS ICEXT rdf:Property IP IC IEXT rdfs:Class IR rdfs:Resource IR x IR 22 extension of properties
  • 23. OWL Full Interpretation V vocabulary extension of classes IS ICEXT rdf:Property = {owl:ObjectProperty, owl:DatatypeProperty, IP IC owl:AnnotationProperty, owl:OntologyProperty} IEXT rdfs:Class IR =owl:Class rdfs:Resource =owl:Thing IR x IR 23 extension of properties
  • 24. OWL Full vs OWL DL OWL-DL OWL Full Relation to owl:Thing <=rdfs:Resource owl:Thing = rdfs:Resource RDFS universe owl:Class <= rdfs:Class owl:Class = rdfs:Class P <= rdf:Property P = rdf:Property Pairwise Yes No Disjointness 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
  • 25. 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
  • 26. Outline • Review of RDF Semantics • OWL Overview • RDFS Plus Semantics • OWL Full Universe • OWL Full Interpretation Conditions 26
  • 27. OWL Classes and Properties then If E is ∈ IS (E)∈ ICEXT(IS (E))= and owl:Class IC IOC IOC=IC owl:Thing IOC IOT IOT=IR and IOT ≠ ∅ owl:Nothing IOC {} ∈ then if e∈ICEXT(IS If E is Note (E)) then Instances of OWL classes are OWL owl:Class ICEXT (e)⊆IOT individuals. Values for individual-valued owl:ObjectProperty IEXT (e)⊆IOT×IOT properties are OWL individuals. 27
  • 28. Boolean Operations and Enumeration If E is ∈ then <x,y>∈IEXT(IS (E)) iff owl:complementOf x,y∈ IOC and ICEXT(x)=IOT-ICEXT(y) x∈IOC and y is a sequence of y1,…yn over IOC owl:unionOf and ICEXT(x) = ICEXT(y1) ∪…∪ ICEXT(yn) x∈IOC and y is a sequence of y1,…yn over IOC owl:intersectionOf and ICEXT(x) = ICEXT(y1) ∩…∩ ICEXT(yn) x∈IC and y is a sequence of y1,…yn over IOT or owl:oneOf over ILV and ICEXT(x) = {y1,..., yn} If E is and ∈ then if <x,l>∈IEXT(IS (E)) then l is a sequence of y1,…yn owl:oneOf x∈IOC over IOT 28
  • 29. Restriction (Anonymous Class) then If E is IS(E)∈ ICEXT(IS(E))= and owl:Restriction IC IOR IOR⊆IOC If E is and <x,y>∈IEXT(IS(E))) ∧ ∈ then x∈IOR, y∈IOC, p∈IOOP, and ICEXT(x) = ∈ ∈ ∈ <x,p>∈IEXT(IS(owl:onProperty))) ∈ 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 similarly Note: Content on this page is simplified by omitting datatype properties 29
  • 30. Non-equality If 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
  • 31. Conclusions RDFS 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
  • 32. 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
  • 33. Backup 33
  • 34. 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
  • 35. 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
  • 36. d RDFS Plus Rules (1) If then (?s, owl:sameAs, ?s) (?s, ?p, ?o) (?p, owl:sameAs, ?p) (?o, owl:sameAs, ?o) (?x, owl:sameAs, ?y) (?y, owl:sameAs, ?x) (?x, owl:sameAs, ?y) (?x, owl:sameAs, ?z) (?y, 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') Equality rules 36
  • 37. RDFS Plus Rules (2) If then (?c1, owl:equivalentClass, ?c2) (?x, rdf:type, ?c2) (?x, rdf:type, ?c1) (?c1, owl:equivalentClass, ?c2) (?x, rdf:type, ?c1) (?x, rdf:type, ?c2) (?c1, rdfs:subClassOf, ?c2) (?c1, owl:equivalentClass, ?c2) (?c2, rdfs:subClassOf, ?c1) (?p1, rdfs:subPropertyOf, ?p2) (?p1, owl:equivalentProperty, ?p2) (?p2, rdfs:subPropertyOf, ?p1) (?p1, owl:equivalentProperty, ?p2) (?x, ?p2, ?y) (?x, ?p1, ?y) (?p1, owl:equivalentProperty, ?p2) (?x, ?p1, ?y) (?x, ?p2, ?y) Equality rules 37
  • 38. RDFS Plus Rules (3) If then (?p, rdf:type, owl:FunctionalProperty) (?y1, owl:sameAs, ?y2) (?x, ?p, ?y1) T(?x, ?p, ?y2) (?p, rdf:type, owl:InverseFunctionalProperty) (?x1, owl:sameAs, ?x2) (?x1, ?p, ?y) T(?x2, ?p, ?y) (?p, rdf:type, owl:SymmetricProperty) (?y, ?p, ?x) (?x, ?p, ?y) (?p, rdf:type, owl:TransitiveProperty) (?x, ?p, ?z) (?x, ?p, ?y) (?y, ?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
  • 39. RDFS Plus Rules (4) If then (?c, rdfs:subClassOf, ?c) (?c, rdf:type, owl:Class) (?c, owl:equivalentClasses, ?c) (?p, rdfs:subPropertyOf, ?p) (?p, rdf:type, owl:ObjectProperty) (?p, owl:equivalentProperty, ?p) (?p, rdfs:subPropertyOf, ?p) (?p, rdf:type, owl:DatatypeProperty) (?p, owl:equivalentProperty, ?p) OWL Class and Property Declaration 39
  • 40. RDFS Plus Rules (5) If then (?p, rdf:type rdf:Property) (?x, ?p, ?y) (?x, rdf:type rdfs:Resource) (?y, rdf:type rdfs:Resource) (?p, rdf:type rdf:Property) (?p, rdfs:subPropertyOf ?p) (?c, rdfs:subClassOf rdfs:Resource) (?c, rdf:type rdfs:Class) (?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, (?c1, rdfs:subClassOf, ?c3) rdfs:subClassOf, ?c3) (?p1, rdfs:subPropertyOf, ?p2) (?p2, (?p1, rdfs:subPropertyOf, ?p3) rdfs:subPropertyOf, ?p3) RDFS Rules 40
  • 41. 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