=Paper=
{{Paper
|id=Vol-1486/paper_107
|storemode=property
|title=Updating Direct Graph for Incremental Reasoning in OWL 2 QL Ontology
|pdfUrl=https://ceur-ws.org/Vol-1486/paper_107.pdf
|volume=Vol-1486
|dblpUrl=https://dblp.org/rec/conf/semweb/WangFRWZ15a
}}
==Updating Direct Graph for Incremental Reasoning in OWL 2 QL Ontology==
Updating Direct Graph for Incremental Reasoning in
OWL 2 QL Ontology
Changlong Wang1,2 , Zhiyong Feng1 , Xin Wang1 ,Guozheng Rao1 ,Xiaowang Zhang1
1
School of Computer Science and Technology, Tianjin University,Tianjin 300072, China,
2
School of Computer Science and Engineer Technology, NWNU,Lanzhou 730070, China,
Abstract. We propose an incremental reasoning approach to QL ontologies by
mapping an evolving ontology to an updatable digraph and maintaining dynamic
transitive closure to obtain incremental classification. We describe the procedure
of updating ontology digraph and present an approach to identify the affected
paths for incremental classification. We implement the proposed method in a pro-
totype incR and evaluated it on widely-used ontologies. The experiments show
that our approach can lead to performance gain.
Keywords: Ontology; Incremental Reasoning; Direct Digraph
1 Introduction
Existing incremental reasoning techniques mainly focused on ontologies in OWL 2
and its profiles OWL 2 EL and OWL 2 RL [1–3]. In recent years, OWL 2 QL ontolo-
gies have become increasingly important in Ontology-Based Data Access (OBDA) [4].
However, to the best of our knowledge, there exists no incremental classification ap-
proach or implementation tailored to QL ontologies. In this paper, we close this gap by
extending the graph-based approach for static QL ontolgoies in [5].
2 Preliminaries
Graph Theory Notions. We use traditional notions in graph theory. A digraph D con-
sists of a non-empty finite vertex set V(D) and edge set E(D). The degree of a vertex v is
denoted by d(v). A path p is a sequence p=v1 , v2 , ..., vk of distinct vertices in V(D), such
that for every vi , vi+1 ∈ p, (vi , vi+1 ) ∈ E(D). A path from u to v is denoted with u v.
The size of path p is represented by the number of edges contained in p. The number of
distinct paths u v is denoted by Paths(u, v). We use TC(D) to denote the transitive
closure of a digraph D.
Digraph Representation of QL 2 Ontology. The idea of digraph representation of
a QL ontology is that, given an OWL 2 QL ontology O and its digraph DO , each vertex
v ∈ V(DO ) represents a basic concept(role). Let S 1 and S 2 be two atomic concept-
s(roles), O |= S 1 ⊑ S 2 iff ∃(S 1 , S 2 ) ∈ E(TC(DO )). Please refer to [5] for details. We use
L(α) (resp. R(α)) to denote the basic concept or basic role on the left (resp. right) sides
of α. we also use d(L(α)) or d(R(α)) to represent degree of the corresponding vertex.
For an axiom of the form Q1 ⊑ Q2 , we use d(Q1 ) and d(Q2 ) to represent the degrees of
Q1 and Q2 , respectively.
2 C. Wang, Z. Feng, G. Rao, X. Wang, X. Zhang
Table 1. Test ontologies
Ontology DL ♯A.C. ♯A.R. ♯Ont T QUONT
Mouse ALE 2753 1 3463 0.104
Gene SH 26225 4 42655 1.236
EL-Galen ALCH(D) 23136 950 97811 3.528
FMA-OBO ALE 75139 2 119558 4.723
3 Updating Digraph
When an axiom is added to an ontology, it is easy to update the corresponding digraph.
Let O be an ontology and α+ be an added axiom, if the basic concepts and basic roles in
α+ are already contained in O, we only insert edge(s) into DO ; if α+ contains new basic
concepts and basic roles, we insert vertex and edge(s) according to Definition 2 in [5].
Axiom deletions are complicated and discussed in details as follows:
From Definition 2 in [5], there exist some differences between concept axiom addi-
tions and role axiom additions. Let α− be a deleted axiom, we consider two cases :
— Case 1: α− is a concept inclusion.
(1) If d(L(α− )) > 1 and d(R(α− )) > 1, then, only the edge (L(α− ), R(α− )) is removed.
(2) If d(L(α− )) > 1 and d(R(α− )) = 1, then, the edge (L(α− ), R(α− )) and its head are
removed.
(3) If d(L(α− )) = 1 and d(R(α− )) > 1, then, the edge (L(α− ), R(α− )) and its tail are
removed.
(4) If d(L(α− ))) = 1 and d(R(α− )) = 1, then, the edge (L(α− ), R(α− )) is removed, both
its tail and head are removed.
— Case 2: α− is a role inclusion axiom of the form Q1 ⊑ Q2 .
(1) If d(Q1 ) > 1 and d(Q2 ) > 1, then, the 4 edges (Q1 , Q2 ), (Q−1 , Q−2 ), (∃Q1 , ∃Q2 ),
(∃Q−1 , ∃Q−2 ) need to be removed.
(2) If d(Q1 ) > 1 and d(Q2 ) = 1, then, the 4 edges (Q1 , Q2 ), (Q−1 , Q−2 ), (∃Q1 , ∃Q2 ),
(∃Q−1 , ∃Q−2 ), and the 4 vertices Q2 , Q−2 , ∃Q2 , ∃Q−2 need to be removed.
(3) If d(Q1 ) = 1 and d(Q2 ) > 1, then, the 4 edges (Q1 , Q2 ),(Q−1 , Q−2 ), (∃Q1 , ∃Q2 ),(∃Q−1 , ∃Q−2 ),
and 4 vertices Q1 , Q−1 , ∃Q1 ,∃Q−1 need to be removed.
(4) If d(Q1 ) = 1 and d(Q2 ) = 1, then, the 4 edges (Q1 , Q2 ),(Q−1 , Q−2 ), (∃Q1 , ∃Q2 ),(∃Q−1 , ∃Q−2 ),
and the 8 vertices Q1 , Q−1 , ∃Q1 , ∃Q−1 ,Q2 ,Q−2 , ∃Q2 ,∃Q−2 are removed.
4 Identifying the Affected Path for Incremental Classification
An edge addition (deletion) into (from) digraph may change the number of path i j.
It is necessary to identify those affected paths and recompute the transitive closure of
such affected subdigraph.
Definition 1 (affected path). Given a digraph DO containing vertices i, j, u, v, and
path i j, if the number of i j changes after an edge (u, v) is inserted (removed)
into (from) DO , the path i j is called affected path.
When we add (delete) axioms, no cycles is created in the corresponding digraph
DO . From Lemma 3.1 in [6], the following proposition holds:
Updating Direct Graph for Incremental Reasoning in OWL 2 QL Ontology 3
Table 2. IncR VS.Pellet.Time in seconds
Ontology n Number o f A.P.(Av/Mx) S ize o f A.P.(Av/Mx) T IncR(Av/Mx) T Pellet (Av/Mx)
mouse 1 96/321 148/431 0.002/0.032 0.021/0.039
mouse 2 164/404 170/518 0.003/0.043 0.044/0.063
mouse 4 225/664 274/673 0.006/0.061 0.068/0.072
mouse 8 452/811 471/831 0.013/0.084 0.082/0.095
Gene 1 23/71 42/79 0.006/0.182 0.029/0.191
Gene 2 58/104 63/119 0.112/0.243 0.357/0.489
Gene 4 76/164 98/294 0.128/0.302 0.432/0.764
Gene 8 149/394 219/438 0.363/0.414 0.927/1.014
EL-Galen 1 213/871 432/968 0.018/0.211 0.698/1.164
EL-Galen 2 486/1004 586/1484 0.024/0.298 0.835/2.718
EL-Galen 4 869/1864 1076/2038 0.217/0.393 1.107/2.973
EL-Galen 8 327/714 1482/3752 0.572/0.819 1.328/3. 219
FMA-OBO 1 45/89 83/174 0.007/0.131 0.012/0.275
FMA-OBO 2 69/127 192/387 0.148/0.573 0.726/0.915
FMA-OBO 4 136/259 293/653 0.152/0.512 0.759/1.416
FMA-OBO 8 283/894 461/934 0.263/0.748 1.663/1.943
Proposition 1. Let i j be an affected path after the edge (u, v) is inserted (or deleted),
the number of the paths i j increases (or decreases) by Paths(i, u) ∗ Paths(v, j).
In ontology development, a domain engineer often adds (or deletes) a set of axioms
related to a certain concept (role). Such modification will lead to a changed set of edges
incident to a common vertex and more affected paths in the corresponding digraph.
Proposition 2 [6] Let DO be a digraph and Ev be a updating set of edges incident to a
common vertex v, let ∆Paths(i, j) be the change to Paths(i, j),
∆Paths(i, j) ← Paths(i, v) ∗ ∆Paths(v, j) + ∆Paths(i, v) ∗ Paths(v, j) + ∆Paths(i, v) ∗
∆Paths(v, j).
From above discussion, it is feasible to design an algorithm for incremental classifi-
cation in QL ontologies. Give a digraph D and any two vertices i, j ∈ D, the number of
the path i j can be represented by an n × n adjacency matrix Q such that Q(i, j) = 0
if there exists no path from i to j. The transitive closure of a digraph D is presented
by an n × n adjacency matrix MD∗ such that MD∗ (i, j)=1 if Q(i, j) , 0, else MD∗ (i, j)=0.
While updating the digraph, if Q(i, j) increases from 0, MD∗ (i, j)=1, if Q(i, j) decreases
to 0, MD∗ (i, j)=0.
5 Implementation and Evaluation
We implement our approach in IncR. We perform experiments to compare IncR with
QUONTO [4] and Pellet [1]—QUONT supports the graph-based approach in [5] and
Pellet supports module-based incremental classification [1].
We select 4 widely-used ontologies from Bioportal 1 , of which the EL-Galen falls
out of OWL 2 QL and need to be approximated by a QL ontology. Table 1 provides
1
http://bioportal.bioontology.org/
4 C. Wang, Z. Feng, G. Rao, X. Wang, X. Zhang
basic information: the DL language , the number of atomic concept and role, the size of
ontology. The last column of Table 1 presents the time in seconds taken by QUONTO.
In order to compare IncR with Pellet, we use similar experimental methodology in
[1]: for various values of n, 1) remove n random axioms; 2) classify the resulting ontol-
ogy using IncR and Pellet ; then, we repeat the following steps 30 times: 3) randomly
remove an additional n axioms, add back the previously removed n axioms, and reclas-
sify the ontology using IncR and Pellet. All the results are gathered during step 3) of
the experiment. All tests are performed on a server with Intel Xeon E5620 2.40GHz
CPU, running Windows Server 2008 R2 Enterprise and Java 1.7 with 16GB of RAM
available to JVM.
Table 2 summarizes the results of our experiments for n=1,2,4 and 8, where Av
means average value and Mx represents maximum value. Column 3 Number o f A.P.(Av/Mx)
and 4 S ize o f A.P.(Av/Mx) indicates the number of affected paths and their total size,
respectively. Colomn 5 shows the time spent in maintaining the transitive closure of the
updated digraph, the time value includes time spent in identifying affected paths and
time in re-computing the transitive closure of all the affected paths. The last column
provides the time taken to classify those updated ontologies by Pellet.
6 Conclusion
We have proposed an approach to incremental classification in QL ontology by exploit-
ing digraph algorithm, which allows us to efficiently identify the small affected paths
and to reuse previous computation. We demonstrate the performance gain indicated by
the significant reduction of classification time. As a big challenge in the future, we
will develop a parallel version of our method to exploit many cores/CPUs available in
modern systems.
Acknowledgments. This work is supported by the NSFC (61100049,61373165) and
the 863 Program of China (2013AA013204).
References
1. Grau B. C., Wiener C. H., Kazakov Y.,et al.: Incremental classification of description logics
ontologies. J. of Automated Reasoning. 44(4), 337-369, 2010.
2. Kazakov Y., Klinov P.: Incremental reasoning in OWL EL without bookkeeping. In ISWC,
232-247, 2013.
3. Motik B., Nenov Y., Piro R., Horrocks I.: Incremental update of datalog materialisation : the
backward/forward algorithm. In AAAI, 1560-1568, 2015.
4. Calvanese D., Giacomo G. D., Lembo D., Lenzerini M.,et al.: The mastro system for ontology-
based data access. Semantic Web, 2(1), 43-53, 2011.
5. Domenico L., Santarelli V., Savo D. F.: A graph-based approach for classifying owl 2 QL
ontologies. In Description logic, 747-759, 2013.
6. King, Valerie, Garry Sagert: A fully dynamic algorithm for maintaining the transitive closure.
In STOC, 492-498, 1999.