Copyright © 2008 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply.
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.
This document is being published as one of a set of 68 documents:
The OWL Working Group seeks public feedback on these Working Drafts. Please send your comments to public-owl-comments@w3.org (public archive). If possible, please offer specific changes to the text that would address your concern. You may also wish to check the Wiki Version of this document for internal-review comments and changes being drafted which may address your concerns.
Publication as a Working Draft does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.
This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.
Contents |
Editor's Note: See Issue-72 (Annotation Semantics). Editor's Note: See Issue 63 (OWL Full Semantics). Editor's Note: See Issue 69 (punning).This document defines the formalformal, model-theoretic semantics of
OWL 2. The semantics given here follows the principles for definingis strongly related to the
semantics of description logics [Description Logics]
and is compatible with the semantics of the description logic
SROIQ presented in[SROIQ]. Unfortunately,As the definition of SROIQ given in [ SROIQ ]does not
provide for datatypes and metamodeling. Therefore,punning, the semantics of OWL 2 is
defined in a direct model-theoretic way, by interpretingdirectly on the constructs of the functional-style syntax
fromfor OWL 2 [OWL 2
Specification ].] instead of by reference to the semantics
of SROIQ. For the constructs available in SROIQ, the
semantics of SROIQ trivially corresponds to the one defined
in this document.
Since OWL 2 does not haveis an RDF-compatible semantics. Ontologies expressed inextension of OWL RDF are givenDL, this document also
provides a formal semantics by converting then intofor OWL Lite and OWL DL; this semantics
is equivalent to the functional-styleofficial semantics of OWL Lite and OWL DL
[OWL Abstract Syntax and interpretingSemantics]. Furthermore, this
document also provides the model-theoretic semantics for the OWL 2
profiles [OWL 2
Profiles].
The semantics is defined for a set of axioms, rather than for an
ontology document in the functional-style syntax. Turning ontology
documents into sets of axioms involves determining the resultaxiom
closure of an ontology (i.e., performing imports and renaming
anonymous individuals apart) as specifieddescribed in this document.the OWL 2
Specification [OWL 2 Specification]).
OWL 2 allows for annotations of ontologies andontologies, ontology entities
(classes, properties, and individuals)individuals), anonymous individuals,
axioms, and ontology axioms. Annotations,other annotations. Annotations of all these types,
however, have no semantic meaning in OWL 2 and are ignored in this
document. Definitions inOWL 2 similarly have no semantics. Constructs onlydeclarations are simply used in annotationsto disambiguate class
expressions from data ranges and definitions, like ObjectProperty , therefore doobject property from data property
expressions in the functional-style syntax. Therefore, they are not
show upmentioned explicitly in the tables in this document.
This section specifies the model-theoretic semantics of OWL DL and it is equivalent to2
ontologies in the definition givenfunctional-style syntax.
Let D = ( NDT , NLT ,
NFA , ⋅ DT ,
⋅ LT , ⋅ FA ) be a
datatype map as defined in Section 4 of the OWL 2 Specification
[OWL Abstract Syntax and Semantics ].2
Model-Theoretic Semantics forSpecification], interpreting the OWL 2 Editor's Note: See Issue-73 (infinite universe ).datatypes as
defined in Sections 4.1 to 4.6. A vocabulary (or signature )V = (
NVC , N PoVOP ,
N PdVDP , NVI ,
N DVDT , VLT ,
NVFA ) over D is a 6-tuple where N7-tuple consisting of
the following elements:
Given a vocabulary V, the same name can befollowing conventions are used
in an ontologythis document to denote different syntactic parts of OWL 2
ontologies:
Given a datatype is defined by its name and the arity,map D and such a definition allows one to reuse the same name with different arities. The semantics of OWL 2 is defined with respect to a concrete domain , which isa tuplevocabulary V over
D, an interpretation Int = (
Δ DInt , .ΔD ,
⋅ C , ⋅ OP ,
⋅ DP , ⋅ I ,
⋅ DT , ⋅ LT ,
⋅ FA ) wherefor D and V is a
9-tuple with the following structure.
Ic isThe following sections define the extensions of
⋅ OP, ⋅ DT, and
⋅ C to object property expressions, data
ranges, and class expressions.
The object property interpretation function
that assigns to each OWL class A ∈ N Ic a subset A Ic of Δ I ; . Ipo is the object property interpretation function that assigns to each object property R ∈ N Po a subset R Ipo of Δ I x Δ I ; . Ipd is the data property interpretation function that assigns to each data property U ∈ N Pd a subset U Ipd of Δ I x Δ D ; . Ii⋅ OP is the individual interpretation function that assigns to each individual a ∈ N I an element a Ii from Δ I . We extend the object interpretation function . Ipoextended to object property
expressions as shown in Table 1.
Object Property Expression | Interpretation |
---|---|
InverseOf( OP ) | { |
The datatype interpretation function . D⋅ DT
is extended to data ranges as shown in Table 2.3. Note that datatypes
in OWL 2 are all unary; thus, each datatype DT is
interpreted as a unary relation (DT)DT over
ΔD. Data ranges, however, can be
n-ary—this allows implementations to provide built-in
predicates such as comparisons or arithmetic as an extension.
Hence, an n-ary data range DR is interpreted as an
n-ary relation (DR)DT over
ΔD.
Data Range | Interpretation |
---|---|
OneOf( lt1 ... |
{ |
|
(ΔD)n \ |
|
(DT)DT ∩ (〈 f |
The class interpretation function . Ic⋅ C is
extended to descriptionsclass expressions as shown in Table 3. With4. For S a
set, #S we denotedenotes the number of elements in a setS.
Class Expression | Interpretation |
---|---|
|
|
UnionOf( CE1 ... |
|
ComplementOf( CE ) | ΔInt \ (CE)C |
OneOf( a1 ... an ) | { |
|
{ x | ∃ y : |
|
{ x | ∀ y : |
|
{ x | |
ExistsSelf( OPE ) | { x | 〈 x , x 〉 ∈
|
|
{ x | |
MaxCardinality( n OPE ) | { x | #{ y | 〈 x , y 〉 ∈
|
|
{ x | #{ y | |
MinCardinality( n OPE CE ) | { x | #{ y | 〈 x , y 〉 ∈
|
|
{ x | #{ y | |
|
{ x | #{ y | |
|
{ x | ∃ y1, |
|
{ x | ∀ y1, |
HasValue( DPE lt ) | { x | 〈 x , (lt)LT 〉 ∈
|
|
{ x | |
MaxCardinality( n DPE ) | { x | #{ y | 〈 x , y 〉 ∈
|
ExactCardinality( n DPE ) | { x | #{ y | |
MinCardinality( n DPE DR ) | { x | #{ y | 〈 x , y 〉 ∈
|
|
{ x | #{ y | |
|
{ x | #{ y | |
An interpretation Int = ( ΔInt ,
ΔD , ⋅ C ,
⋅ OP , ⋅ DP ,
⋅ I is defined as shown in Table 4. With, ⋅ DT ,
⋅ LT , ⋅ FA )
satisfies an axiom w.r.t. an ontology O we denoteif the composition of binary relations. Table 4.axiom
satisfies appropriate conditions listed in the following sections.
Satisfaction of axioms in an Interpretation AxiomInt is defined w.r.t. O
because satisfaction of key axioms uses the function
ISNAMEDO defined as follows, where the axiom
closure of O is defined in Section 3.4 of the OWL 2
Specification [OWL 2 Specification]:
ISNAMEDO(x) = true for x ∈ ΔInt if and only if (a)I = x for some named individual a occurring in the axiom closure of O.
Satisfaction of OWL 2 class expression axioms in Int w.r.t. O is defined as shown in Table 5.
Axiom | Condition |
---|---|
|
(CE1)C |
EquivalentClasses( CE1 ...
|
|
|
|
|
(CEj |
Satisfaction of OWL 2 object property expression axioms in Int w.r.t. O is defined as shown in Table 6.
Axiom | Condition |
---|---|
SubPropertyOf( OPE1 OPE2 ) | (OPE1)OP ⊆
|
SubPropertyOf( PropertyChain( OPE1 ...
|
∀ y0 , ... , yn : 〈
y0 , y1 |
EquivalentProperties( OPE1 ...
|
|
|
|
|
∀ x |
|
∀ x , y |
|
(OPE1)OP = { |
|
∀ x , y1 |
|
∀ x1 , x2 , y :
〈 x1 , y |
|
∀ x : x ∈ Δ |
IrreflexiveProperty( OPE ) | ∀ x : x ∈ Δ |
SymmetricProperty( OPE ) | ∀ x , y : 〈 x , y 〉 ∈ (OPE)OP implies 〈 y , x 〉 ∈ (OPE)OP |
AsymmetricProperty( OPE ) | ∀ x , y : 〈 x , y 〉 ∈ (OPE)OP implies 〈 y , x 〉 ∉ (OPE)OP |
TransitiveProperty( OPE ) | ∀ x , y , z : 〈 x , y 〉 ∈ (OPE)OP and 〈 y , z 〉 ∈ (OPE)OP imply 〈 x , z 〉 ∈ (OPE)OP |
Satisfaction of OWL 2 data property expression axioms in
Int w.r.t. O is notdefined as shown in R Ipo SymmetricObjectProperty(R) (Table 7.
Axiom | Condition |
---|---|
SubPropertyOf( DPE1 DPE2 ) | (DPE1)DP ⊆ (DPE2)DP |
EquivalentProperties( DPE1 ... DPEn ) | (DPEj)DP = (DPEk)DP for each 1 ≤ j ≤ n and each 1 ≤ k ≤ n |
DisjointProperties( DPE1 ... DPEn ) | (DPEj)DP ∩ (DPEk)DP = ∅ for each 1 ≤ j ≤ n and each 1 ≤ k ≤ n such that j ≠ k |
PropertyDomain( DPE CE ) | ∀ x , y : 〈 x , y 〉 ∈ (DPE)DP implies x ∈ (CE)C |
PropertyRange( DPE DR ) | ∀ x , y : 〈 x , y 〉 ∈
|
FunctionalProperty( DPE ) | ∀ x , y1 , y2 : 〈 x , y1 〉 ∈ (DPE)DP and 〈 x , y2 〉 ∈ (DPE)DP imply y1 = y2 |
Satisfaction of keys in Int w.r.t. O is defined as shown in Table 8.
Axiom | Condition |
---|---|
HasKey( CE PE1 ... PEn ) | ∀ x , y ,
z1 , ... , zn : if ISNAMEDO(x) and ISNAMEDO(y) and ISNAMEDO(z1) and ... and ISNAMEDO(zn) and x ∈ (CE)C and y ∈ (CE)C and for each 1 ≤ i ≤ n, if PEi is an object property, then 〈 x , zi 〉 ∈ (PEi)OP and 〈 y , zi 〉 ∈ (PEi)OP, and if PEi is a data property, then 〈 x , zi 〉 ∈ (PEi)DP and 〈 y , zi 〉 ∈ (PEi)DP then x = y |
Satisfaction of OWL 2 assertions in Int w.r.t. O is defined as shown in Table 9.
Axiom | Condition |
---|---|
SameIndividual( a1 ... an ) | (aj)I = (ak)I for each 1 ≤ j ≤ n and each 1 ≤ k ≤ n |
DifferentIndividuals( a1 ... an ) | (aj)I ≠ (ak)I for each 1 ≤ j ≤ n and each 1 ≤ k ≤ n such that j ≠ k |
ClassAssertion( CE a ) | (a)I ∈ (CE)C |
PropertyAssertion( OPE a1 a2 ) | 〈 (a1)I , (a2)I 〉 ∈ (OPE)OP |
NegativePropertyAssertion( OPE a1 a2 ) | 〈 (a1)I , (a2)I 〉 ∉ (OPE)OP |
PropertyAssertion( DPE a lt ) | 〈 (a)I , (lt)LT 〉 ∈ (DPE)DP |
NegativePropertyAssertion( DPE a lt ) | 〈 (a)I , (lt)LT 〉 ∉ (DPE)DP |
Int satisfies an OWL 2 ontology O if all axioms in the axiom closure of O (with anonymous individuals renamed apart as described in Section 5.6.2 of the OWL 2 Specification [OWL 2 Specification]) are satisfied in Int w.r.t. O.
An interpretation Int = ( ΔInt , ΔD , ⋅ C , ⋅ OP , ⋅ DP , ⋅ I , ⋅ DT , ⋅ LT , ⋅ FA ) is a model of an OWL 2 ontology O if an interpretation Int' = ( ΔInt , ΔD , ⋅ C , ⋅ OP , ⋅ DP , ⋅ I' , ⋅ DT , ⋅ LT , ⋅ FA ) exists such that ⋅ I' coincides with ⋅ I on all named individuals and Int' satisfies O.
Thus, an interpretation Int satisfying O is also a model of O. In contrast, a model Int of O may not satisfy O directly; however, by modifying the interpretation of anonymous individuals, Int can always be coerced into an interpretation Int' that satisfies O.
Let D be a datatype map and V a vocabulary over D. Furthermore, let O and O' be OWL 2 ontologies, CE, CE1, and CE2 class expressions, and a a named individual, such that all of them refer only to the vocabulary elements in V.
The semantics of OWL 2 has been defined in such a way that the semantics of an OWL 2 ontology O does not depend on the choice of a datatype map, as long as the datatype map chosen contains all the datatypes occurring in O. This statement is made precise by the following theorem, which has several useful consequences:
Theorem 1. Let O1 and
O2 be OWL 2 ontologies over a vocabulary V
and D = ( NDT , NLT ,
NFA , ⋅ DT ,
⋅ LT , ⋅ FA ) a
datatype map such that each datatype mentioned in
O1 and O2 is either
rdfs:Literal or it occurs in NDT.
Furthermore, let D' = ( yNDT' ,
x ) ∈ R Ipo AsymmetricObjectProperty(R) ( xNLT' , y ) ∈ R Ipo implies ( yNFA' ,
x⋅ DT ' ,
⋅ LT ' ,
⋅ FA ' ) is not in R Ipo TransitiveObjectProperty(R) R Ipo o R Ipo ⊆ R Ipo SubDataPropertyOf(U V) U Ipdbe a datatype map such that
NDT ⊆ V Ipd EquivalentDataProperties(U 1 ... UN ) U j Ipd = U k Ipd for each 1 ≤ jDT',
k ≤N DisjointDataProperties(U 1 ... ULT(DT) = N ) U j Ipd ∩ U k Ipd is emptyLT'(DT) and
NFA(DT) = NFA'(DT) for each
1 ≤ j , k ≤DT ∈ NDT, and
j ≠ k DataPropertyDomain(U C) { x | ∃ y : (x⋅ DT ',
y ) ∈ U Ipd } ⊆ C Ic DataPropertyRange(U DR) { y | ∃ x : (x⋅ LT ', y ) ∈ U Ipd } ⊆ DR D FunctionalDataProperty(U) ( xand
⋅ FA ' are extensions of
⋅ DT, ⋅ LT, y 1 ) ∈ U Ipdand
( x⋅ FA, yrespectively. Then,
O1 entails O2 ) ∈ U Ipd imply yw.r.t. D
if and only if O1 = yentails O2
SameIndividual(aw.r.t. D'.
Proof. Without loss of generality, one can assume
O1 ... a n ) a j Ii = a k Ii for eachand O2 to be in
negation-normal form [Description Logics]. The claim of the theorem
is equivalent to the following statement: an interpretation
Int w.r.t. D and and V exists such that
O1 ≤ j , k ≤ n DifferentIndividuals(ais and O2 is not satisfied
in Int if and only if an interpretation Int'
w.r.t. D' and V exists such that O1
... a n ) a j Ii ≠ a k Ii foris and O2 is not satisfied in Int'. The
(⇐) direction is trivial since each 1 ≤ j , k ≤ ninterpretation Int
w.r.t. D' and j ≠ k ClassAssertion(a C) a Ii ∈ C Ic ObjectPropertyAssertion(R a b)V is also an interpretation
w.r.t. D and V. For the (⇒) direction, assume that an
interpretation Int = ( a IiΔInt ,
ΔD , ⋅ C ,
⋅ OP , ⋅ DP ,
⋅ I , b Ii ) ∈ R Ipo NegativeObjectPropertyAssertion(R a b) ( a Ii⋅ DT ,
b Ii⋅ LT , ⋅ FA ) w.r.t.
D and V exists such that O1 is and
O2 is not satisfied in R Ipo DataPropertyAssertion(U a v)Int. Let Int' =
( a IiΔInt , vΔD ) ∈ U Ipd NegativeDataPropertyAssertion(U a v) ( a Ii' ,
v D⋅ C ' , ⋅ OP ,
⋅ DP ' , ⋅ I ,
⋅ DT ' , ⋅ LT '
, ⋅ FA ' ) is not in U Ipd Let Obe an OWL 2 ontology with vocabulary V . O is consistent if aninterpretation I existssuch
that
Clearly, ComplementOf( DR
)DT ⊆ ComplementOf( DR
)DT ' for each data range DR that
is satisfiable w.r.t. O if thereis either a model I of O such that C Ic is not empty. O entailsdatatype, a datatype restriction, or an OWL 2 ontology O' with vocabulary V if every modelenumerated
data range. The interpretation of Odata properties is also a model of O' ; furthermore,the same in
Int and Int', so (CE)C =
(CE)C ' for each class expression CE
occurring in O1 and O' are equivalent ifO entails O'2.
Therefore, O1 is and O' entailsO2 is not
satisfied in Int'. 3QED