OWL Full Semantics

Post on 08-May-2015

1790 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

2008 09-06 owl full

Transcript

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.htmlhttp://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

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 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

OWL2OWL2

OWLOWL

(RDFS Plus)

RDF(S)

You

Are

Here

3

Not Covered in the Talk

• Datatype

• Annotation

• Ontology house keeping (e.g., imports)

• OWL comprehension conditions• OWL comprehension conditions

4

Outline

• Review of RDF Semantics

• OWL Overview

• RDFS 3.0 Semantics

• OWL Full Universe• OWL Full Universe

• OWL Full Interpretation Conditions

5

RDF(S) Vocabulary

RDF RDFS

rdf:type

rdf:Property

rdfs:domain

rdfs:range

rdfs:Resource rdfs:Resource

rdfs:Class

rdfs:subClassOf

rdfs:subPropertyOf

… others (rectification, annotation, literal,

collection, container)

6

RDFS Interpretation

V

ISICEXT

vocabulary

extension of classes

IP

IRIEXT

IR x IR

IC

ICEXT

rdfs:Class

rdfs:Resource

rdf:Property

extension of properties7

Outline

• Review of RDF Semantics

• OWL Overview

• RDFS Plus Semantics

• OWL Full Universe• OWL Full Universe

• OWL Full Interpretation Conditions

8

OWL Family

OWL FullOWL Full

OWL DL(SHOIN(D))(SHOIN(D))

OWL Lite(SHIF(D))

RDFS Plus (or RDFS 3.0)

9

From RDF to OWL 2 Full

RDFS+

OWL 2 Full Covered next time

RDF

RDFS

RDFS+

OWL FullOWL 2 RL

10

OWL Extensions to RDFS

• Constructing classes:

– e.g., ∀∃ ∧ ∨ ¬• Constructing properties:

– e.g., inverseOf– 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)– 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 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• 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 Characteristics

owl:equivalentClass,

owl:equivalentProperty,

owl:sameAs

owl:inverseOf

owl:TransitiveProperty,

owl:SymmetricProperty,

owl:FuncionalProperty, owl:FuncionalProperty,

owl:InverseFunctionalProperty

owl: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

⊆owl:DatatypeProperty

IS(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

∈∈∈∈ ∈∈∈∈

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:inverseOf x,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)) c, d ∈ IC,

ICEXT(c) ⊆ ICEXT(d)

<p,q> ∈ IEXT(IS(rdfs:subPropertyOf)) p, q ∈ IP,

⊆Iff*

<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

If then

(?x, owl:sameAs, ?y) (?y, owl:sameAs, ?x)

(?c1, owl:equivalentClass, ?c2)

(?x, rdf:type, ?c ) (?x, rdf:type, ?c2)

Some examples:

Complete rule set is in backup slides

(?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)

19

Outline

• Review of RDF Semantics

• OWL Overview

• RDFS Plus Semantics

• OWL Full Universe• OWL Full Universe

• OWL Full Interpretation Conditions

20

OWL VocabularyClasses Class Construction

owl:Class

owl:Thing

owl:Nothing

owl:complementOf

owl:intersectionOf

owl:unionOf

Bo

ole

an

owl:Restriction

owl:onPropertyowl:allValuesFrom

qu

alifica

tion

owl:onPropertyowl:allValuesFrom

owl:someValuesFrom

owl:hasValue

qu

alifica

tionNon-equality

owl:differentFrom

owl:disjointWith

owl:AllDifferent

owl:distinctMembers

owl:cardinality

owl:minCardinality

owl:maxCardinality

card

ina

lity

owl:oneOf

+ RDFS Plus vocabulary21

Recall: RDFS Interpretation

V

ISICEXT

vocabulary

extension of classes

IP

IRIEXT

IR x IR

IC

ICEXT

rdfs:Class

rdfs:Resource

rdf:Property

extension of properties22

OWL Full Interpretation

V

ISICEXT

vocabulary

extension of classes

IP

IRIEXT

IR x IR

IC

ICEXT

rdfs:Class=owl:Class

rdfs:Resource=owl:Thing

rdf:Property ={owl:ObjectProperty, owl:DatatypeProperty, owl:AnnotationProperty, owl:OntologyProperty}

extension of properties23

OWL Full vs OWL DL

OWL-DL OWL Full

Relation to

RDFS universe

owl:Thing <=rdfs:Resource

owl:Class <= rdfs:Class

P <= rdf:Property

owl:Thing = rdfs:Resource

owl:Class = rdfs:Class

P = rdf:Property

Pairwise

Disjointness

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

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• 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 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 {}owl:Nothing IOC {}

If E is then if e∈∈∈∈ICEXT(IS

(E)) then Note

owl:Class ICEXT (e)⊆IOTInstances of OWL classes are OWL

individuals.

owl:ObjectProperty IEXT (e)⊆IOT×IOTValues for individual-valued

properties are OWL individuals.

27

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)

owl:unionOfx∈IOC and y is a sequence of y1,…yn over IOC

and ICEXT(x) = ICEXT(y1) ∪…∪ ICEXT(yn)

owl:intersectionOfx∈IOC and y is a sequence of y1,…yn over IOC

owl:intersectionOfx∈IOC and y is a sequence of y1,…yn over IOC

and ICEXT(x) = ICEXT(y1) ∩…∩ ICEXT(yn)

owl:oneOfx∈IC and y is a sequence of y1,…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 IOTx∈IOC

28

Restriction (Anonymous Class)

If E isthen

IS(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: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

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 More: Comprehension conditions (which require the existence of appropriate OWL descriptions and data ranges ) – not covered

30

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

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

BackupBackup

33

Other OWL Vocabulary

• owl:DatatypeProperty, owl:DataRange

• owl:Ontology

• owl:imports, owl:priorVersion, owl:backwardCompatibleWith,

and owl:incompatibleWith, owl:versionInfo

• owl:OntologyProperty• 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)

d

(?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')

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)(?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, 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) (?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

top related