Query Translation for Ontology-extended Data Sources
Extending OWL with Integrity Constraints
1. Extending OWL with Integrity Constraints
Jiao Tao1 , Evren Sirin2 , Jie Bao1 , Deborah L. McGuinness1
taoj2@cs.rpi.edu, evren@clarkparsia.com
baojie@cs.rpi.edu, dlm@cs.rpi.edu
1 Tetherless World Constellation,
Department of Computer Science,
Rensselaer Polytechnic Institute,
Troy, NY 12180, USA.
2 Clark & Parsia,
Washington, DC 20001, USA.
The 23rd International Workshop on Description Logics (DL 2010)
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 1 / 20
2. Outline
Background
OWA and nUNA in OWL
IC Requirements for OWL
Related Work
Contributions
Preliminaries
SROIQ
DCQ
IC Semantics for OWL
Epistemic Approach
Formalization of IC Semantics
IC Validation
DCQnot
From ICs to DCQnot
IC Validation Algorithm
Implementation
Conclusions and Future Work
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 2 / 20
3. Background OWA and nUNA in OWL
OWA and nUNA in OWL
Open World Assumption (OWA)
CWA vs. OWA: any statement that is not known to be true is false vs.
unknown
Example 1: K satisfies α although p does not have a known producer.
K = {Product(p)}, α : Product ∃hasProducer.Producer
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 3 / 20
4. Background OWA and nUNA in OWL
OWA and nUNA in OWL
Open World Assumption (OWA)
CWA vs. OWA: any statement that is not known to be true is false vs.
unknown
Example 1: K satisfies α although p does not have a known producer.
K = {Product(p)}, α : Product ∃hasProducer.Producer
nonUnique Name Assumption (nUNA)
UNA vs. nUNA: two different names always refer to different entities
vs. may refer to the same entity
Example 2: K satisfies α although p has two producers.
K = {Product(p), hasProducer(p, m1 ), hasProducer(p, m2 )}
α : Product ≤ 1hasProducer. .
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 3 / 20
5. Background OWA and nUNA in OWL
OWA and nUNA in OWL
Open World Assumption (OWA)
CWA vs. OWA: any statement that is not known to be true is false vs.
unknown
Example 1: K satisfies α although p does not have a known producer.
K = {Product(p)}, α : Product ∃hasProducer.Producer
nonUnique Name Assumption (nUNA)
UNA vs. nUNA: two different names always refer to different entities
vs. may refer to the same entity
Example 2: K satisfies α although p has two producers.
K = {Product(p), hasProducer(p, m1 ), hasProducer(p, m2 )}
α : Product ≤ 1hasProducer. .
Difficult to use OWL for integrity constraint(IC) validation!
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 3 / 20
6. Background IC Requirements for OWL
IC Requirements for OWL
Strong needs to use OWL as an IC language! Especially in hybrid
settings where OWL KBs are integrated with relational databases and
ICs are needed to enforce the named individuals in KBs to have some
known values.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 4 / 20
7. Background IC Requirements for OWL
IC Requirements for OWL
Strong needs to use OWL as an IC language! Especially in hybrid
settings where OWL KBs are integrated with relational databases and
ICs are needed to enforce the named individuals in KBs to have some
known values.
Typing Constraints
Individuals participating in a relation should be instances of certain
types, i.e., domain&range axioms and universal restrictions.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 4 / 20
8. Background IC Requirements for OWL
IC Requirements for OWL
Strong needs to use OWL as an IC language! Especially in hybrid
settings where OWL KBs are integrated with relational databases and
ICs are needed to enforce the named individuals in KBs to have some
known values.
Typing Constraints
Individuals participating in a relation should be instances of certain
types, i.e., domain&range axioms and universal restrictions.
Participation Constraints
Instances of the constrained class should have a role assertion i.e.,
existential restrictions.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 4 / 20
9. Background IC Requirements for OWL
IC Requirements for OWL
Strong needs to use OWL as an IC language! Especially in hybrid
settings where OWL KBs are integrated with relational databases and
ICs are needed to enforce the named individuals in KBs to have some
known values.
Typing Constraints
Individuals participating in a relation should be instances of certain
types, i.e., domain&range axioms and universal restrictions.
Participation Constraints
Instances of the constrained class should have a role assertion i.e.,
existential restrictions.
Uniqueness Constraints
An individual cannot participate in multiple role assertions with the
same role, i.e., functional property restrictions, cardinality restrictions.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 4 / 20
10. Background Related Work
Related Work
Rule-based approach [4, 6]
⊥ ← DL[Product](x), not P(x, y )
P(x, y ) ← DL[hasProducer](x, y ), DL[Producer](y )
IC validation: KDL , ICRule |= ⊥
Limitations: ontology developers need to be familiar with rules
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 5 / 20
11. Background Related Work
Related Work
Rule-based approach [4, 6]
⊥ ← DL[Product](x), not P(x, y )
P(x, y ) ← DL[hasProducer](x, y ), DL[Producer](y )
IC validation: KDL , ICRule |= ⊥
Limitations: ontology developers need to be familiar with rules
Epistemic query-based approach [1]
KProduct(x) → ∃y .(KhasProducer(x, y ) ∧ KProducer(y ))
IC validation: Ans(ICEQL−Lite , KFOL )
Limitations: complexity results in expressive DLs are unknown
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 5 / 20
12. Background Related Work
Related Work
Rule-based approach [4, 6]
⊥ ← DL[Product](x), not P(x, y )
P(x, y ) ← DL[hasProducer](x, y ), DL[Producer](y )
IC validation: KDL , ICRule |= ⊥
Limitations: ontology developers need to be familiar with rules
Epistemic query-based approach [1]
KProduct(x) → ∃y .(KhasProducer(x, y ) ∧ KProducer(y ))
IC validation: Ans(ICEQL−Lite , KFOL )
Limitations: complexity results in expressive DLs are unknown
Approach based on epistemic extension of DLs [2, 3]
KProduct ∃KhasProducer.KProducer
IC validation: KDL |= ICEDL
Limitations: less expressive DLs, strict UNA
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 5 / 20
13. Background Related Work cont.
Related Work cont.
Approach reuses OWL as an IC language
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 6 / 20
14. Background Related Work cont.
Related Work cont.
Approach reuses OWL as an IC language
IC validation: T , A |=MM C
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 6 / 20
15. Background Related Work cont.
Related Work cont.
Approach reuses OWL as an IC language
IC validation: T , A |=MM C
Limitations:
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 6 / 20
16. Background Related Work cont.
Related Work cont.
Approach reuses OWL as an IC language
IC validation: T , A |=MM C
Limitations:
Unintuitive
Example 4: α is satisfied although the producer of p is unknown.
K = {Product(p), ∃hasProducer.Producer(p)}
α : Product ∃hasProducer.Producer
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 6 / 20
17. Background Related Work cont.
Related Work cont.
Approach reuses OWL as an IC language
IC validation: T , A |=MM C
Limitations:
Unintuitive
Example 4: α is satisfied although the producer of p is unknown.
K = {Product(p), ∃hasProducer.Producer(p)}
α : Product ∃hasProducer.Producer
Maintenance burden
Example 5: α is satisfied although we are not sure if the producer of p
is m1 or m2 .
K = {Product(p), (∃hasProducer.{m1 , m2 })(p), Producer(m1 ),
Producer(m2 ), O(p), O(m1 ), O(m2 )}
α : Product ∃hasProducer.(Producer O)
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 6 / 20
18. Background Contributions
Contributions
The main contributions of this paper include:
An IC semantics for OWL
A sound and complete IC validation algorithm
A prototype implementation
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 7 / 20
19. Preliminaries SROIQ
Description Logics SROIQ [5]
SROIQ-interpretation I = (∆, ·I ): ·I maps a concept C to a subset
of ∆, a role R to a subset of ∆ × ∆, a named individual NI to an
element of ∆.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 8 / 20
20. Preliminaries SROIQ
Description Logics SROIQ [5]
SROIQ-interpretation I = (∆, ·I ): ·I maps a concept C to a subset
of ∆, a role R to a subset of ∆ × ∆, a named individual NI to an
element of ∆.
I satisfies an axiom α, denoted I |= α, if
Type Axiom Condition on I
TBox C D C I ⊆ DI
R1 R2 I
R1 ⊆ R2 I
R1 . . . Rn R I ◦ . . . ◦ RI ⊆ RI
R1 n
RBox Ref(R) ∀x ∈ ∆ : x, x ∈ R I
Irr(R) ∀x ∈ ∆ : x, x ∈ R I
Dis(R1 , R2 ) I I
R1 ∩ R2 = ∅
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 8 / 20
21. Preliminaries SROIQ
Description Logics SROIQ [5]
SROIQ-interpretation I = (∆, ·I ): ·I maps a concept C to a subset
of ∆, a role R to a subset of ∆ × ∆, a named individual NI to an
element of ∆.
I satisfies an axiom α, denoted I |= α, if
Type Axiom Condition on I
TBox C D C I ⊆ DI
R1 R2 I
R1 ⊆ R2 I
R1 . . . Rn R I ◦ . . . ◦ RI ⊆ RI
R1 n
RBox Ref(R) ∀x ∈ ∆ : x, x ∈ R I
Irr(R) ∀x ∈ ∆ : x, x ∈ R I
Dis(R1 , R2 ) I I
R1 ∩ R2 = ∅
I is a model of K if it satisfies all the axioms in K.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 8 / 20
22. Preliminaries SROIQ
Description Logics SROIQ [5]
SROIQ-interpretation I = (∆, ·I ): ·I maps a concept C to a subset
of ∆, a role R to a subset of ∆ × ∆, a named individual NI to an
element of ∆.
I satisfies an axiom α, denoted I |= α, if
Type Axiom Condition on I
TBox C D C I ⊆ DI
R1 R2 I
R1 ⊆ R2 I
R1 . . . Rn R I ◦ . . . ◦ RI ⊆ RI
R1 n
RBox Ref(R) ∀x ∈ ∆ : x, x ∈ R I
Irr(R) ∀x ∈ ∆ : x, x ∈ R I
Dis(R1 , R2 ) I I
R1 ∩ R2 = ∅
I is a model of K if it satisfies all the axioms in K.
K entails α, written as K |= α, if I |= α for all models I ∈ Mod(K).
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 8 / 20
23. Preliminaries DCQ
Distinguished Conjunctive Query (DCQ)
Syntax:
Query atom: q ← C (x) | R(x, y ) | ¬R(x, y ) | x = y | x = y
Conjunctive Query (CQ): Q ← q | Q1 ∧ Q2
Distinguished Conjunctive Query (DCQ): CQ containing only
distinguished variables1
1
A distinguished variable can be mapped to only known individuals, i.e., an element
from NI .
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 9 / 20
24. Preliminaries DCQ
Distinguished Conjunctive Query (DCQ)
Syntax:
Query atom: q ← C (x) | R(x, y ) | ¬R(x, y ) | x = y | x = y
Conjunctive Query (CQ): Q ← q | Q1 ∧ Q2
Distinguished Conjunctive Query (DCQ): CQ containing only
distinguished variables1
Semantics:
Given a KB K, a DCQ Q, and an assignment σ : NV → NI , we say
that K |=σ Q if:
K |=σ q iff K |= σ(q)
σ
K |= Q1 ∧ Q2 iff K |=σ Q1 and K |=σ Q2
where σ(Q) denotes the application of σ to Q.
Ans(Q, K) = {σ | K |=σ Q}
K |= Q if Ans(Q, K) = ∅
1
A distinguished variable can be mapped to only known individuals, i.e., an element
from NI .
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 9 / 20
25. IC Semantics for OWL Epistemic Approach
Epistemic Approach
ICs are epistemic in nature [8]: about what the KB knows.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 10 / 20
26. IC Semantics for OWL Epistemic Approach
Epistemic Approach
ICs are epistemic in nature [8]: about what the KB knows.
We adopt this epistemic view of ICs and propose an IC semantics for
OWL, which is similar to how the semantics of epistemic DL ALCK
[2] and MKNF DL ALCKN F [3] are defined, but is still different from
them:
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 10 / 20
27. IC Semantics for OWL Epistemic Approach
Epistemic Approach
ICs are epistemic in nature [8]: about what the KB knows.
We adopt this epistemic view of ICs and propose an IC semantics for
OWL, which is similar to how the semantics of epistemic DL ALCK
[2] and MKNF DL ALCKN F [3] are defined, but is still different from
them:
weak UNA vs. strict UNA
expressive DLs, i.e., SROIQ, vs. less expressive DLs, i.e., ALC.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 10 / 20
28. IC Semantics for OWL Formalization of IC Semantics
IC-interpretation
An IC-interpretation is a pair I, U where I is a SROIQ
interpretation defined over ∆I and U is a set of SROIQ
interpretations.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 11 / 20
29. IC Semantics for OWL Formalization of IC Semantics
IC-interpretation
An IC-interpretation is a pair I, U where I is a SROIQ
interpretation defined over ∆I and U is a set of SROIQ
interpretations.
IC-interpretations of concepts, roles, individuals:
C I,U = {x I | x ∈ NI s.t. ∀J ∈ U, x J ∈ C J }
R I,U = { x I , y I | x, y ∈ NI s.t. ∀J ∈ U, x J , y J ∈ R J }
(R − )I,U = { x I , y I | y I , x I ∈ R I,U }
(C D)I,U = C I,U ∩ D I,U , (¬C )I,U = NI C I,U
(≥ nR.C )I,U = {x I | x ∈ NI s.t. #{y I | x I , y I ∈ R I,U , y I ∈ C I,U } ≥ n}
(∃R.Self)I,U = {x I | x ∈ NI s.t. x I , x I ∈ R I,U }, {a}I,U = {aI }.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 11 / 20
30. IC Semantics for OWL Formalization of IC Semantics
IC-interpretation
An IC-interpretation is a pair I, U where I is a SROIQ
interpretation defined over ∆I and U is a set of SROIQ
interpretations.
IC-interpretations of concepts, roles, individuals:
C I,U = {x I | x ∈ NI s.t. ∀J ∈ U, x J ∈ C J }
R I,U = { x I , y I | x, y ∈ NI s.t. ∀J ∈ U, x J , y J ∈ R J }
(R − )I,U = { x I , y I | y I , x I ∈ R I,U }
(C D)I,U = C I,U ∩ D I,U , (¬C )I,U = NI C I,U
(≥ nR.C )I,U = {x I | x ∈ NI s.t. #{y I | x I , y I ∈ R I,U , y I ∈ C I,U } ≥ n}
(∃R.Self)I,U = {x I | x ∈ NI s.t. x I , x I ∈ R I,U }, {a}I,U = {aI }.
IC-interpretations use the CWA w.r.t. NI (standard DL
interpretations: OWA).
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 11 / 20
31. IC Semantics for OWL Formalization of IC Semantics
Weak UNA
Weak UNA: two named individuals with different identifiers are
assumed to be different by default unless their equality is required to
satisfy the axioms in the KB.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 12 / 20
32. IC Semantics for OWL Formalization of IC Semantics
Weak UNA
Weak UNA: two named individuals with different identifiers are
assumed to be different by default unless their equality is required to
satisfy the axioms in the KB.
How weak UNA is formalized?
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 12 / 20
33. IC Semantics for OWL Formalization of IC Semantics
Weak UNA
Weak UNA: two named individuals with different identifiers are
assumed to be different by default unless their equality is required to
satisfy the axioms in the KB.
How weak UNA is formalized?
J = I if:
For every concept C, J |= C (a) implies I |= C (a);
For every role R, J |= R(a, b) implies I |= R(a, b);
EJ ⊂ EI
where EI = { a, b | a, b ∈ NI s.t. I |= a = b}.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 12 / 20
34. IC Semantics for OWL Formalization of IC Semantics
Weak UNA
Weak UNA: two named individuals with different identifiers are
assumed to be different by default unless their equality is required to
satisfy the axioms in the KB.
How weak UNA is formalized?
J = I if:
For every concept C, J |= C (a) implies I |= C (a);
For every role R, J |= R(a, b) implies I |= R(a, b);
EJ ⊂ EI
where EI = { a, b | a, b ∈ NI s.t. I |= a = b}.
ME models: the models of K with minimal equality (ME) between NI :
ModME (K) = {I ∈ Mod(K) | J , J ∈ Mod(K), J = I}
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 12 / 20
35. IC Semantics for OWL Formalization of IC Semantics
Weak UNA
Weak UNA: two named individuals with different identifiers are
assumed to be different by default unless their equality is required to
satisfy the axioms in the KB.
How weak UNA is formalized?
J = I if:
For every concept C, J |= C (a) implies I |= C (a);
For every role R, J |= R(a, b) implies I |= R(a, b);
EJ ⊂ EI
where EI = { a, b | a, b ∈ NI s.t. I |= a = b}.
ME models: the models of K with minimal equality (ME) between NI :
ModME (K) = {I ∈ Mod(K) | J , J ∈ Mod(K), J = I}
IC-semantics uses the weak UNA (standard DL semantics: nUNA).
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 12 / 20
36. IC Semantics for OWL Formalization of IC Semantics
Axiom Satisfaction, IC Satisfaction, Extended KB
An IC-interpretation I, U satisfies an axiom α, denoted as I, U |= α,if
Type Axiom Condition on I, U
TBox C D C I,U ⊆ D I,U
I,U I,U
R1 R2 R1 ⊆ R2
I,U I,U
R1 . . . Rn R R1 ◦ . . . ◦ Rn ⊆ R I,U
RBox Ref(R) ∀x ∈ NI : x I,U , x I,U ∈ R I,U
Irr(R) ∀x ∈ NI : x I,U , x I,U ∈ R I,U
I,U I,U
Dis(R1 , R2 ) R1 ∩ R2 = ∅
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 13 / 20
37. IC Semantics for OWL Formalization of IC Semantics
Axiom Satisfaction, IC Satisfaction, Extended KB
An IC-interpretation I, U satisfies an axiom α, denoted as I, U |= α,if
Type Axiom Condition on I, U
TBox C D C I,U ⊆ D I,U
I,U I,U
R1 R2 R1 ⊆ R2
I,U I,U
R1 . . . Rn R R1 ◦ . . . ◦ Rn ⊆ R I,U
RBox Ref(R) ∀x ∈ NI : x I,U , x I,U ∈ R I,U
Irr(R) ∀x ∈ NI : x I,U , x I,U ∈ R I,U
I,U I,U
Dis(R1 , R2 ) R1 ∩ R2 = ∅
The IC-satisfaction of α by K, i.e., K |=IC α, is defined as:
K |=IC α iff ∀I ∈ U, I, U |= α, where U = ModME (K)
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 13 / 20
38. IC Semantics for OWL Formalization of IC Semantics
Axiom Satisfaction, IC Satisfaction, Extended KB
An IC-interpretation I, U satisfies an axiom α, denoted as I, U |= α,if
Type Axiom Condition on I, U
TBox C D C I,U ⊆ D I,U
I,U I,U
R1 R2 R1 ⊆ R2
I,U I,U
R1 . . . Rn R R1 ◦ . . . ◦ Rn ⊆ R I,U
RBox Ref(R) ∀x ∈ NI : x I,U , x I,U ∈ R I,U
Irr(R) ∀x ∈ NI : x I,U , x I,U ∈ R I,U
I,U I,U
Dis(R1 , R2 ) R1 ∩ R2 = ∅
The IC-satisfaction of α by K, i.e., K |=IC α, is defined as:
K |=IC α iff ∀I ∈ U, I, U |= α, where U = ModME (K)
An extended KB is a pair K, C where K is a SROIQ KB
interpreted with the standard OWL semantics and C is a set of
SROIQ axioms interpreted with IC semantics. We say that K, C is
valid if ∀α ∈ C, K |=IC α.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 13 / 20
39. IC Validation DCQnot
Distinguished Conjunctive Query with not (DCQnot )
DCQnot is the extension of DCQ with the NAF operator not .
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 14 / 20
40. IC Validation DCQnot
Distinguished Conjunctive Query with not (DCQnot )
DCQnot is the extension of DCQ with the NAF operator not .
Syntax: Q ← q | Q1 ∧ Q2 | not Q | Q1 ∨ Q2
where Q1 ∨ Q2 is the abbreviation for not (not Q1 ∧ not Q2 ).
Semantics:
K |=σ not Q iff σ s.t. K |=σ σ(Q)
K |=σ Q1 ∨ Q2 iff K |=σ Q1 or K |=σ Q2
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 14 / 20
41. IC Validation From ICs to DCQnot
From ICs to DCQnot
Translation from ICs to DCQnot : translate an IC axiom α into a
query Q such that when α is satisfied, Q is false.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 15 / 20
42. IC Validation From ICs to DCQnot
From ICs to DCQnot
Translation from ICs to DCQnot : translate an IC axiom α into a
query Q such that when α is satisfied, Q is false.
Translation rules:
Concept Translation:
Tc (Ca , x) := Ca (x)
Tc (¬C , x) := not Tc (C , x)
Tc (C1 C2 , x) := Tc (C1 , x) ∧ Tc (C2 , x)
Tc (≥ nR.C , x) := (R(x, yi ) ∧ Tc (C , yi )) not (yi = yj )
1≤i≤n 1≤i<j≤n
Tc (∃R.Self, x) := R(x, x)
Tc ({a}, x) := (x = a)
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 15 / 20
43. IC Validation From ICs to DCQnot cont.
From ICs to DCQnot cont.
Translation rules cont.:
Axiom Translation:
T (C1 C2 ) := Tc (C1 , x) ∧ not Tc (C2 , x)
T (R1 R2 ) := R1 (x, y ) ∧ not R2 (x, y )
T (R1 . . . Rn R) := R1 (x, y1 ) ∧ . . . Rn (yn−1 , yn ) ∧ not R(x, yn )
T (Ref(R)) := not R(x, x)
T (Irr(R)) := R(x, x)
T (Dis(R1 , R2 )) := R1 (x, y ) ∧ R2 (x, y )
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 16 / 20
44. IC Validation From ICs to DCQnot cont.
From ICs to DCQnot cont.
Translation rules cont.:
Axiom Translation:
T (C1 C2 ) := Tc (C1 , x) ∧ not Tc (C2 , x)
T (R1 R2 ) := R1 (x, y ) ∧ not R2 (x, y )
T (R1 . . . Rn R) := R1 (x, y1 ) ∧ . . . Rn (yn−1 , yn ) ∧ not R(x, yn )
T (Ref(R)) := not R(x, x)
T (Irr(R)) := R(x, x)
T (Dis(R1 , R2 )) := R1 (x, y ) ∧ R2 (x, y )
Example 6:
T (Product ∃hasProducer.Producer)
:= Tc (Product, x) ∧ not Tc (∃hasProducer.Producer, x)
:= Product(x) ∧ not (hasProducer(x, y ) ∧ Tc (Producer, y ))
:= Product(x) ∧ not (hasProducer(x, y ) ∧ Producer(y ))
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 16 / 20
45. IC Validation IC Validation Algorithm
IC Validation Algorithm
Theorem: Given an extended KB K, C with expressivity SRI, SROIQ
( SROIQ, SROI resp.), we have that K |=IC α iff K |= T (α) where
α ∈ C [9].
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 17 / 20
46. IC Validation IC Validation Algorithm
IC Validation Algorithm
Theorem: Given an extended KB K, C with expressivity SRI, SROIQ
( SROIQ, SROI resp.), we have that K |=IC α iff K |= T (α) where
α ∈ C [9].
To limit the interactions between the disjunctive (in)equality axioms in K
and the cardinality restrictions in C, we can require:
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 17 / 20
47. IC Validation IC Validation Algorithm
IC Validation Algorithm
Theorem: Given an extended KB K, C with expressivity SRI, SROIQ
( SROIQ, SROI resp.), we have that K |=IC α iff K |= T (α) where
α ∈ C [9].
To limit the interactions between the disjunctive (in)equality axioms in K
and the cardinality restrictions in C, we can require:
K: within SRI, no nominals & cardinality restrictions thus no
disjunctive (in)equality;
C: within SROI, no cardinality restrictions.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 17 / 20
48. Implementation
Implementation
Prototype: IC validator 2 in the OWL 2 DL reasoner Pellet.
SPARQL-based [7] implementation.
2
http://clarkparsia.com/pellet/oicv-0.1.2.zip
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 18 / 20
49. Implementation
Implementation
Prototype: IC validator 2 in the OWL 2 DL reasoner Pellet.
SPARQL-based [7] implementation.
The validation process is as follows:
Reading OWL IC axioms
Translating to DCQnot
Translating to SPARQL query
Executed by the SPARQL query engine
2
http://clarkparsia.com/pellet/oicv-0.1.2.zip
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 18 / 20
50. Implementation
Implementation
Prototype: IC validator 2 in the OWL 2 DL reasoner Pellet.
SPARQL-based [7] implementation.
The validation process is as follows:
Reading OWL IC axioms
Translating to DCQnot
Translating to SPARQL query
Executed by the SPARQL query engine
Preliminary evaluation:
Dataset: LUBM(5), 100K individuals, 800K ABox axioms
IC validation time: 2s
Logical consistency checking time: 10s
2
http://clarkparsia.com/pellet/oicv-0.1.2.zip
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 18 / 20
51. Conclusions and Future Work
Conclusions and Future Work
In this paper, we have
described an IC semantics for OWL
presented a sound and complete IC validation algorithm
described the prototype IC validator
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 19 / 20
52. Conclusions and Future Work
Conclusions and Future Work
In this paper, we have
described an IC semantics for OWL
presented a sound and complete IC validation algorithm
described the prototype IC validator
In the future, we will:
look at the performance of IC validation in real-world datasets
explore the IC validation algorithms for the fullly expressive DLs
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 19 / 20
53. Questions
Questions?
Thanks for your attention!
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 20 / 20
54. Questions
D. Calvanese, G. D. Giacomo, D. Lembo, M. Lenzerini, and R. Rosati.
EQL-Lite: Effective First-Order Query Processing in Description
Logics.
In Proc. IJCAI2007, pages 274–279, 2007.
F. M. Donini, M. Lenzerini, D. Nardi, W. Nutt, and A. Schaerf.
An Epistemic Operator for Description Logics.
AI, 100(1–2):225–274, 1998.
F. M. Donini, D. Nardi, and R. Rosati.
Description Logics of Minimal Knowledge and Negation as Failure.
ACM Trans. Comput. Logic, 3(2):177–225, 2002.
T. Eiter, G. Ianni, T. Lukasiewicz, R. Schindlauer, and H. Tompits.
Combining Answer Set Programming with Description Logics for the
Semantic Web.
AI, 172(12-13):1495–1539, 2008.
I. Horrocks, O. Kutz, and U. Sattler.
The Even More Irresistible SROIQ.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 20 / 20
55. Questions
In Proc. KR2006, pages 57–67, 2006.
B. Motik.
A Faithful Integration of Description Logics with Logic Programming.
In Proc. IJCAI2007, pages 477–482, 2007.
E. Prud’hommeaux and A. Seaborne.
SPARQL Query Language for RDF, 2008.
R. Reiter.
On Integrity Constraints.
In Proc. TARK1988, pages 97–111, 1988.
J. Tao, E. Sirin, J. Bao, and D. McGuinness.
Integrity Constraints in OWL.
Technical report, Dept. of Computer Science, Rensselaer Polytechnic
Institute, Troy, NY., 2010.
Tao,Sirin,Bao,McGuinness (RPI,Clark Parsia) Extending OWL with Integrity Constraints May 2010, DL 2010 20 / 20