<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Introducing Nominals to the Combined Query Answering Approaches for E L</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Giorgio Stefanoni</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Boris Motik</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ian Horrocks</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Computer Science, University of Oxford</institution>
        </aff>
      </contrib-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Description logics (DLs) [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] are a family of knowledge representation formalisms that
underpin OWL 2 [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]—an ontology language used in advanced information systems
with many practical applications. Answering conjunctive queries (CQs) over
ontologyenriched data sets is a core reasoning service in such systems, so the computational
aspects of this problem have received a lot of interest lately. For expressive DLs, the
problem is at least doubly exponential in query size [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. The problem, however, becomes
easier for the E L [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and the DL-Lite [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] families of DLs, which provide the foundation
for the OWL 2 EL and the OWL 2 QL profiles of OWL 2. An important goal of this
research was to devise not only worst-case optimal, but also practical algorithms. The
known approaches can be broadly classified as follows.
      </p>
      <p>
        The first group consists of automata-based approaches for DLs such as OWL 2
EL [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] and Horn-SHOIQ and Horn-SROIQ [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. While worst-case optimal, these
approaches are typically not suitable for practice since their best-case and worst-case
performance often coincide.
      </p>
      <p>
        The second group consists of rewriting-based approaches. Roughly speaking, these
approaches rewrite the ontology and/or the query into another formalism, typically a
union of conjunctive queries or a datalog program; the relevant answers can then be
obtained by evaluating the rewriting over the data. Rewriting-based approaches were
developed for members of the DL-Lite family [
        <xref ref-type="bibr" rid="ref5 ref8">5, 8</xref>
        ], and the DLs E LHIO? [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] and
Horn-SHIQ [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], to name just a few. A common problem, however, is that
rewritings can be exponential in the ontology and/or query size. Although this is often not a
problem in practice, such approaches are not worst-case optimal. An exception is the
algorithm by Rosati [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] that rewrites an E LH? ontology into a datalog program of
polynomial size; however, the algorithm also uses a nondeterministic step to transform
the CQ into a tree-shaped one, and it is not clear how to implement this step in a
goaldirected manner.
      </p>
      <p>
        The third group consists of combined approaches, which use a three-step process:
first, they augment the data with certain consequences of the ontology; second, they
evaluate the CQ over the augmented data; and third, they filter the result of the
second phase to eliminate unsound answers. The third step is necessary because, to ensure
termination, the first step is unsound and may introduce facts that do not follow from
the ontology; however, this is done in a way that makes the third step feasible. Such
approaches have been developed for logics in the DL-Lite [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] and the E L [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]
families, and they are appealing because they are worst-case optimal and practical: only the
second step is intractable (in query size), but it can be solved using database techniques.
      </p>
      <p>
        None of the combined approaches proposed thus far, however, handles nominals—
concepts containing precisely one individual. Nominals are included in OWL 2 EL, and
they are often used to state that all instances of a class have a certain property value,
such as ‘the sex of all men is male’, or ‘each German city is located in Germany’. In this
paper we present a combined approach for E LHO?r —the DL that covers all features of
OWL 2 EL apart from transitive roles and complex role inclusions. To the best of our
knowledge, this is the first combined approach that handles nominals. Our extension is
nontrivial because nominals require equality reasoning, which increases the complexity
of the first and the third step of the algorithm. In particular, nominals may introduce
recursive dependencies in the filtering conditions used in the third phase; this is in
contrast to the known combined approach for E L [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] in which filtering conditions are
not recursive and thusly can be incorporated into the input query. To solve this problem,
our algorithm evaluates the original CQ and then uses a polynomial function to check
the relevant conditions for each answer.
      </p>
      <p>
        Following Kro¨tzsch, Rudolph, and Hitzler [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], instead of directly materialising the
relevant consequences of the ontology and the data, we transform the ontology into
a datalog program that captures the relevant consequences. Although seemingly just
a stylistic issue, a datalog-based specification may be beneficial in practice: one can
either materialise all consequences of the program bottom-up in advance, or one can
use a top-down technique to compute only the consequences relevant for the query at
hand. The latter can be particularly useful in informations systems that have read-only
access to the data, or where data changes frequently.
      </p>
      <p>We have implemented a prototypical system using our algorithm, and we carried
out a preliminary empirical evaluation of (i) the blowup in the number of facts
introduced by the datalog program, and (ii) the number of unsound answers obtained in the
second phase. Our experiments show both of these numbers to be manageable in typical
cases, suggesting that our algorithm provides a practical basis for answering CQs in an
expressive fragment of OWL 2 EL.</p>
      <p>
        The proofs of our technical results are provided in the technical report [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Preliminaries</title>
      <p>
        Logic Programming. We use the standard notions of variables, constants, function
symbols, terms, atoms, formulas, and sentences [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. We often identify a conjunction
with the set of its conjuncts. A substitution is a partial mapping of variables to terms;
dom( ) and rng( ) are the domain and the range of , respectively; jS is the
restriction of to a set of variables S; and, for a term or a formula, ( ) is the result of
simultaneously replacing each free variable x occurring in with (x). A Horn clause
C is an expression of the form B1 ^ : : : ^ Bm ! H, where H and each Bi are atoms.
Such C is a fact if m = 0, and it is commonly written as H. Furthermore, C is safe
if each variable occurring in H also occurs in some Bi. A logic program is a finite
set of safe Horn clauses; furthermore, is a datalog program if each clause in is
function-free.
      </p>
      <p>In this paper, we interpret a logic program in a model that can be constructed
bottom-up. The Herbrand universe of is the set of all terms built from the constants
and the function symbols occurring in . Given an arbitrary set of facts B, let (B)
be the smallest superset of B such that, for each clause ' ! 2 and each
substitution mapping the variables occurring in the clause to the Herbrand universe of , if
(') B, then ( ) (B). Let I0 be the set of all facts occurring in ; for each
i 2 N, let Ii+1 = (Ii); and let I = Si2N Ii. Then I is the minimal Herbrand model
of , and it is well known that I satisfies 8~x:C for each Horn clause C 2 and ~x the
vector of all variables occurring in C.</p>
      <p>
        In this paper we allow a logic program to contain the equality predicate . In
first-order logic, is usually interpreted as the identity over the interpretation domain;
however, can also be explicitly axiomatised [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. Let be the set containing clauses
(1)–(3), an instance of clause (4) for each n-ary predicate R occurring in and each
1 i n, and an instance of clause (5) for each n-ary function symbol f occurring in
and each 1 i n.
      </p>
      <p>x1
x1</p>
      <p>x2 ^ x2
R(~x) ^ xi</p>
      <p>! x
x2 ! x2
x3 ! x1
x
x1
x3
x0i ! R(x1; : : : ; x0i; : : : ; xn)
xi
x0i ! f (: : : ; xi; : : :)
f (: : : ; x0i; : : :)
(1)
(2)
(3)
(4)
(5)
The minimal Herbrand model of a logic program that contains is the minimal
Herbrand model of [ .</p>
      <p>Conjunctive Queries. A conjunctive query (CQ) is a formula q = 9~y: (~x; ~y) with
a conjunction of function-free atoms over variables ~x [ ~y. Variables ~x are the answer
variables of q. Let NT (q) be the set of terms occurring in q.</p>
      <p>For a substitution such that rng( ) contains only constants, let (q) = 9~z: ( ),
where ~z is obtained from ~y by removing each variable y 2 ~y for which (y) is defined.
Note that, according to this definition, non-free variables can also be replaced; for
example, given q = 9y1; y2:R(y1; y2) and = fy2 7! ag, we have (q) = 9y1:R(y1; a).</p>
      <p>Let be a logic program, let I be the minimal Herbrand model of , and let
q = 9~y: (~x; ~y) be a CQ that uses only the predicates occurring in . A substitution
is a candidate answer for q in if dom( ) = ~x and rng( ) contains only constants;
furthermore, such a is a certain answer to q over , written j= (q), if a substitution
exists such that dom( ) = ~x [ ~y, = j~x, and (q) I.</p>
      <p>
        Description Logic. DL E LHO?r is defined w.r.t. a signature consisting of
mutually disjoint and countably infinite sets NC , NR, and NI of atomic concepts (i.e., unary
predicates), roles (i.e., binary predicates), and individuals (i.e., constants), respectively.
Furthermore, for each individual a 2 NI , expression fag denotes a nominal—that is,
a concept containing precisely the individual a. Also, we assume that &gt; and ? are
unary predicates (without any predefined meaning) not occurring in NC . We consider
only normalised knowledge bases, as it is well known [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] that each E LHO?r KB can
r
be normalised in polynomial time without affecting the answers to CQs. An E LHO?
TBox is a finite set of axioms of the form shown in the left-hand side of Table 1, where
A(i) 2 NC [ f&gt;g, B 2 NC [ f&gt;; ?g, R; S 2 NR, and a 2 NI . An ABox A is a finite
set of facts constructed using the symbols from NC [ f&gt;; ?g, NR, and NI . Finally, an
E LHO?r knowledge base (KB) is a tuple K = hT ; Ai, where T is an E LHO?r TBox
T and an A is an ABox such that each predicate occurring in A also occurs in T .
      </p>
      <p>We interpret K as a logic program. Table 1 shows how to translate a TBox T into a
logic program (T ). Moreover, let &gt;(T ) be the set of the following clauses instantiated
for each atomic concept A and each role R occurring in T .</p>
      <p>A(x) ! &gt;(x)</p>
      <p>R(x; y) ! &gt;(x)</p>
      <p>
        R(x; y) ! &gt;(y)
A KB K = hT ; Ai is translated into the logic program (K) = (T ) [ &gt;(T ) [ A.
Then, K is unsatisfiable if (K) j= 9y:?(y). Furthermore, given a conjunctive query q
and a candidate answer for q, we write K j= (q) iff K is unsatisfiable or (K) j= (q).
Given a candidate answer for q, deciding whether (K) j= (q) holds is NP-complete
in combined complexity, and PTIME-complete in data complexity [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
3
      </p>
      <p>Datalog Rewriting of E LHO?r TBoxes
For the rest of this section, we fix an arbitrary E LHO?r knowledge base K = hT ; Ai.
We next show how to transform K into a datalog program D(K) that can be used to
check the satisfiability of K. In the following section, we then show how to use D(K)
to answer conjunctive queries.</p>
      <p>
        Due to axioms of type 6 (cf. Table 1), (K) may contain function symbols and
is generally not a datalog program; thus, the evaluation of (K) may not terminate.
To ensure termination, we eliminate function symbols from (K) using the technique
by Kro¨tzsch, Rudolph, and Hitzler [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]: for each A 2 NC [ f&gt;g and each R 2 NR
occurring in T , we introduce a globally fresh and unique auxiliary individual oR;A.
Intuitively, oR;A represents all terms in the Herbrand universe of (K) needed to satisfy
the existential concept 9R:A. Kro¨tzsch, Rudolph, and Hitzler [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] used this technique
to facilitate taxonomic reasoning, while we use it to obtain a practical CQ answering
algorithm. Please note that oR;A depends on both R and A, whereas in the known
approaches such individuals depend only on A [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] or R [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
      </p>
      <p>Definition 1. Datalog program D(T ) is obtained by translating each axiom of type
other than 6 in the TBox T of K into a clause as shown in Table 1, and by translating
each axiom A1 v 9R:A in T into clauses A1(x) ! R(x; oR;A) and A1(x) ! A(oR;A).
Furthermore, the translation of K into datalog is given by D(K) = D(T ) [ &gt;(T ) [ A.</p>
      <p>J
ai taught
krtautaught
g t
h
john ≈ fT,J(kr) advisor
I
ai taught oT,Padvisor</p>
      <p>taught
kr taught</p>
      <p>advisor
advisor oA,P
john ≈ oT,J
fT,P(ai) advisor fA,P (fT,P(ai)) advisor
fT,P(kr) advisor fA,P (fT,P(kr)) advisor
fA,P (≈john) advisor
fA,P (fT,J(kr))
Then, D(T ) contains the following clauses:
KRC v Course
range(taught ; Prof )
KRC (x) ! taught (x; oT;J ) Prof (x) ! advisor (x; oA;P ) KRC (kr)
KRC (x) ! JProf (oT;J ) Prof (x) ! Prof (oA;P ) KRC (x) ! Course(x)
Course(x) ! taught (x; oT;P ) JProf (x) ! x john taught (x; y) ! Prof (y)
Course(x) ! Prof (oT;P ) taught (x; y) ! Course(x)</p>
      <p>The following result readily follows from the definition of (K) and D(K).
Proposition 1. Program D(K) can be computed in time linear in the size of K.</p>
      <p>Next, we prove that the datalog program D(K) can be used to decide the
satisfiability of K. To this end, we define a function that maps each term w in the Herbrand
universe of (K) to the Herbrand universe of D(K) as follows:
(w) =
(w
oR;A
if w 2 NI ;
if w is of the form w = fR;A(w0):
Let I and J be the minimal Herbrand models of (K) and D(K), respectively. Mapping
establishes a tight relationship between I and J as illustrated in the following example.
Example 2. Let A = fCourse(ai )g, let T be as in Example 1, and let K = hT ; Ai.
Figure 1 shows a graphical representation of the minimal Herbrand models I and J of
(K) and D(K), respectively. The grey dotted lines show how relates the terms in I
to the terms in J. For the sake of clarity, Figure 1 does not show the reflexivity of .</p>
      <p>Mapping is a homomorphism from I to J.</p>
      <p>Lemma 1. Let I and J be the minimal Herbrand models of (K) and D(K),
respectively. Mapping satisfies the following three properties for all terms w0 and w, each
B 2 NC [ f&gt;; ?g, and each R 2 NR.
1. B(w) 2 I implies B( (w)) 2 J.
2. R(w0; w) 2 I implies R( (w0); (w)) 2 J.
3. w0 w 2 I implies (w0) (w) 2 J.</p>
      <p>For a similar result in the other direction, we need a couple of definitions. Let H
be an arbitrary Herbrand model. Then, dom(H) is the set containing each term w that
occurs in H in at least one fact with a predicate in NC [ f&gt;; ?g [ NR; note that, by this
definition, we have w 62 dom(H) whenever w occurs in H only in assertions involving
the predicate. Furthermore, auxH is the set of all terms w 2 dom(H) such that, for
each term w0 with w w0 2 H, we have w0 62 NI . We say that the terms in auxH are
‘true’ auxiliary terms—that is, they are not equal to an individual in NI . In Figure 1,
bold terms are ‘true’ auxiliary terms in I and J.</p>
      <p>Lemma 2. Let I and J be the minimal Herbrand models of (K) and D(K),
respectively. Mapping satisfies the following five properties for all terms w1 and w2 in
dom(I), each B 2 NC [ f&gt;; ?g, and each R 2 NR.
1. B( (w1)) 2 J implies that B(w1) 2 I.
2. R( (w1); (w2)) 2 J and (w2) 62 auxJ imply that R(w1; w2) 2 I.
3. R( (w1); (w2)) 2 J and (w2) 2 auxJ imply that (w2) is of the form oP;A, that</p>
      <p>R(w1; fP;A(w1)) 2 I, and that a term w10 exists such that R(w10; w2) 2 I.
4. (w1) (w2) 2 J and (w2) 62 auxJ imply that w1 w2 2 I.
5. For each term u occurring in J, term w 2 dom(I) exists such that (w) = u.</p>
      <p>Lemmas 1 and 2 allow us to decide the satisfiability of K by answering a simple
query over D(K), as shown in Proposition 2. The complexity claim is due to the fact
that each clause in D(K) contains a bounded number of variables [17].</p>
      <p>Proposition 2. For K an arbitrary E LHO?r knowledge base, (K) j= 9y:?(y) if and
only if D(K) j= 9y:?(y). Furthermore, the satisfiability of K can be checked in time
polynomial in the size of K.
4</p>
    </sec>
    <sec id="sec-3">
      <title>Answering Conjunctive Queries</title>
      <p>In this section, we fix a satisfiable E LHO?r knowledge base K = hT ; Ai and a
conjunctive query q = 9~y: (~x; ~y). Furthermore, we fix I and J to be the minimal Herbrand
models of (K) and D(K), respectively.</p>
      <p>While D(K) can be used to decide the satisfiability of K, the following example
shows that D(K) cannot be used directly to compute the answers to q.</p>
      <p>Example 3. Let K be as in Example 2, and let q1, q2, and q3 be the following CQs:
q1 = taught (x1; x2)
q3 = 9y: advisor (y; y)
q2 = 9y1; y2; y3: taught (x1; y1) ^ taught (x2; y2) ^ advisor (y1; y3) ^ advisor (y2; y3)
Furthermore, let i be the following substitutions:
1 = fx1 7! kr ; x2 7! oT;P g
2 = fx1 7! kr ; x2 7! ai ; y1 7! oT;P ; y2 7! oT;P ; y3 7! oA;P g
3 = fy 7! oA;P g
Finally, let each i be the projection of i to the answer variables of qi. Using Figure 1,
one can readily check that D(K) j= i(qi), but (K) 6j= i(qi), for each 1 i 3.</p>
      <p>This can be explained by observing that J is a homomorphic image of I. Now
homomorphisms preserve CQ answers (i.e., (K) j= (q) implies D(K) j= (q)), but
they can also introduce unsound answers (i.e., D(K) j= (q) does not necessarily imply
(K) j= (q)). This gives rise to the following notion of spurious answers.
Definition 2. A substitution with dom( ) = ~x [ ~y and D(K) j= (q) is a spurious
answer to q if j~x is not a certain answer to q over (K).</p>
      <p>Based on these observations, we answer q over K in two steps: first, we evaluate q
over D(K) and thus obtain an overestimation of the certain answers to q over (K);
second, for each substitution obtained in the first step, we eliminate spurious
answers using a special function isSpur. We next formally introduce this function. We
first present all relevant definitions, after which we discuss the intuitions. As we shall
see, each query in Example 3 illustrates a distinct source of spuriousness that our
function needs to deal with.</p>
      <p>Definition 3. Let be a substitution s.t. dom( ) = ~x [ ~y and D(K) j= (q). Relation</p>
      <p>NT (q) NT (q) for q, , and D(K) is the smallest reflexive, symmetric, and
transitive relation closed under the fork rule, where auxD(K) is the set containing each
individual u from D(K) for which no individual c 2 NI exists such that D(K) j= u c.
(fork) s0
s
t0
t</p>
      <p>R(s; s0) and P (t; t0) occur in q, and (s0) 2 auxD(K)</p>
      <p>Please note that the definition auxD(K) is actually a reformulation of the definition
of auxJ , but based on the consequences of D(K) rather than the facts in J.</p>
      <p>Relation is reflexive, symmetric, and transitive, so it is an equivalence relation,
which allows us to normalise each term t 2 NT (q) to a representative of its
equivalence class using the mapping defined below. We then construct a graph Gaux that
checks whether substitution matches ‘true’ auxiliary individuals in a way that cannot
be converted to a match over ‘true’ auxiliary terms in I.</p>
      <p>Definition 4. Let and be as specified in Definition 3. Function : NT (q) 7! NT (q)
maps each term t 2 NT (q) to an arbitrary, but fixed representative (t) of the
equivalence class of that contains t. Furthermore, the directed graph Gaux = hVaux; Eauxi
is defined as follows.</p>
      <p>– Set Vaux contains a vertex (t) for each term t 2 NT (q) such that (t) 2 auxD(K).
– Set Eaux contains an edge h (s); (t)i for each atom of the form R(s; t) in q such
that f (s); (t)g Vaux.</p>
      <p>Query q is aux-cyclic w.r.t.
acyclic w.r.t. and D(K).</p>
      <p>and D(K) if Gaux contains a cycle; otherwise, q is
aux</p>
      <p>We are now ready to define our function that checks whether a substitution
spurious answer.
is a
Definition 5. Let and be as specified in Definition 3. Function isSpur(q; D(K); )
returns t if and only if at least one of the following conditions hold.
(a) Variable x 2 ~x exists such that (x) 62 NI .
(b) Terms s and t occurring in q exist such that s t and D(K) 6j= (s) (t).
(c) Query q is aux-cyclic w.r.t. and D(K).</p>
      <p>We next discuss the intuition behind our definitions. We ground our discussion in
minimal Herbrand models I and J, but our technique does not depend on such models:
all conditions are stated as entailments that can be checked using an arbitrary sound
and complete technique. Since K is an E LHO?r knowledge base, the shape of model
I resembles a forest: roughly speaking, the role assertions in I that involve at least
one functional term are of the form R(w1; fR;A(w1)) or R(w1; a) for a 2 NI ; thus,
I can be viewed as a family of directed trees whose roots are the individuals in NI
and whose edges point from parents to children or to the individuals in NI . This is
illustrated in Figure 1, whose lower part shows the the forest-model of the knowledge
base from Example 3. Note that assertions of the form R(w1; a) are introduced via
equality reasoning and may result in links from functional terms to individuals.</p>
      <p>Now let be a substitution such that D(K) j= (q), and let = j~x. If is not
a spurious answer, it should be possible to convert into a substitution such that
= j~x and (q) I. Using the queries from Example 3, we next identify three
reasons why this may not be possible.</p>
      <p>First, may map an answer variable of q to an auxiliary individual, so by the
definition cannot be a certain answer to q; condition (a) of Definition 5 identifies such cases.
Query q1 and substitution 1 from Example 3 illustrate such a situation: 2(x2) = oT ;P
and oT ;P is a ‘true’ auxiliary individual, so 1 is not a certain answer to q1.</p>
      <p>The remaining two problems arise because model J is not forest-shaped, so might
map q into J in a way that cannot be converted into a substitution that maps q into I.</p>
      <p>The second problem is best explained using substitution 2 and query q2 from
Example 3. Query q2 contains a ‘fork’ advisor (y1; y3) ^ advisor (y2; y3). Now,
substitution 2 maps y3 to ‘true’ auxiliary individual oA;P which represents ‘true’ auxiliary
terms fA;P (fT;P (ai )), fA;P (fT;P (kr )), and so on. Since I is forest-shaped, a match
2 for q in I obtained from 2 would need to map y3 to one of these terms; let us assume
that 2 (y3) is mapped to fA;P (fT;P (ai )). Since I is forest-shaped and fA;P (fT;P (ai ))
is a ‘true’ auxiliary term, this means that both y1 and y2 must be mapped to the same
term (in both J and I). This is captured by the (fork) rule: since is reflexive, the rule
derives y1 y2, and condition (b) of Definition 5 checks whether 2 maps y1 and y2
in a way that satisfies this constraint. Note that, due to role hierarchies, the rule needs
to be applied to atoms R(s; s0) and P (t; t0) with R 6= P . Moreover, such constraints
must be propagated further up the query. In our example, due to y1 y2 and 2(y1) is
a ‘true’ auxiliary individual, atoms taught (x1; y1) ^ taught (x2; y2) in q2 also
constitute a ‘fork’, so the rule derives x1 x2; this allows condition (b) of Definition 5 to
correctly identify 2 as spurious.</p>
      <p>The third problem is best explained using substitution 3 and query q3 from
Example 3. Model J contains a ‘loop’ on individual oA;P , which allows 3 to map q3 into J.
In contrast, model I is forest-shaped, and so the ‘true’ auxiliary terms that correspond
to oA;P do not form loops. Condition (c) of Definition 5 detects such situations using
the graph Gaux. The vertices of Gaux correspond to the terms of q that are matched to
‘true’ auxiliary individuals (mapping simply ensures that equal terms are represented
as one vertex), and edges of Gaux correspond to the role atoms in q. Hence, if Gaux is
cyclic, then the substitution obtained from would need to match the query q over
a cycle of ‘true’ auxiliary terms, which is impossible since I is forest-shaped.</p>
      <p>Unlike the known combined approaches, our approach does not extend q with
conditions that detect spurious answers. Due to nominals, the relevant equality constraints
have a recursive nature: they depend on both the substitution and on the previously
derived constraints. Given that first-order queries do not allow for expressing recursive
properties, extending q with these constraints seems to necessarily result in an
exponential blow-up in the size of the query. Consequently, filtering in our approach is realised
as postprocessing. The following theorem proves the correctness of our approach.
Theorem 1. Let K = hT ; Ai be a satisfiable E LHO?r KB, let q = 9~y: (~x; ~y) be a CQ,
and let : ~x 7! NI be a candidate answer for q. Then, (K) j= (q) iff a substitution
exists such that dom( ) = ~x [ ~y, j~x = , D(K) j= (q), and isSpur(q; D(K); ) = f.</p>
      <p>Furthermore, isSpur(q; D(K); ) can be evaluated in polynomial time, so the main
source of complexity in our approach is in deciding whether D(K) j= (q) holds. This
gives rise to the following result.</p>
      <p>Theorem 2. Deciding whether K j= (q) can be implemented in nondeterministic
polynomial time w.r.t. the size of K and q, and in polynomial time w.r.t. the size of A.
5</p>
    </sec>
    <sec id="sec-4">
      <title>Evaluation</title>
      <p>To gain insight into the practical applicability of our approach, we implemented our
technique in a prototypical system. The system uses HermiT, a widely used ontology
reasoner, as a datalog engine in order to materialise the consequences of D(K) and
evaluate q. The system has been implemented in Java, and we ran our experiments on a
MacBook Pro with 4GB of RAM and an Intel Core 2 Duo 2.4 Ghz processor. We used
two ontologies in our evaluation, details of which are given below. The ontologies, the
queries, and the prototype are available at http://www.cs.ox.ac.uk/isg/tools/KARMA/.</p>
      <p>The LSTW benchmark [18] consists of an OWL 2 QL version of the LUBM
ontology [19], queries q1l; : : : ; q1l1, and a data generator. The LSTW ontology extends the
standard LUBM ontology with several axioms of type 6 (see Table 1). To obtain an
E LHO?r ontology, we removed inverse roles and datatypes, added 11 axioms using 9
freshly introduced nominals, and added one axiom of type 4 (see Table 1). These
additional axioms resemble the ones in Example 1, and they were designed to test equality
reasoning. The resulting signature consists of 132 concepts, 32 roles, and 9 nominals,
and the ontology contains 180 axioms. From the 11 LSTW queries, we did not consider
queries q4l, q6l, q7l, and q1l1 because their result sets were empty: q4l relies on existential
quantification over inverse roles, and the other three are empty already w.r.t. the original
LSTW ontology. Query q2l is similar to query q2 from Example 3, and it was designed
to produce only spurious answers and thus stress the system. We generated data sets
with 5, 10 and 20 universities. For each data set, we denote with L-i the knowledge
base consisting of our E LHO?r ontology and the ABox for i universities (see Table 2).</p>
      <p>SEMINTEC is an ontology about financial services developed within the
SEMINTEC project at the University of Poznan. To obtain an E LHO?r ontology, we
removed inverse roles, role functionality axioms, and universal restrictions, added nine
axioms of type 6 (see Table 1), and added six axioms using 4 freshly introduced
nominals. The resulting ontology signature consists of 60 concepts, 16 roles, and 4 nominals,
and the ontology contains 173 axioms. Queries qs–q5s are tree-shaped queries used in
1
the SEMINTEC project, and we developed queries qs–q9s ourselves. Query q6s resembles
6
query q2l from LSTW, and queries q8s and q9s were designed to retrieve a large number
of answers containing auxiliary individuals, thus stressing condition (a) of Definition
5. Finally, the SEMINTEC ontology comes with a data set consisting of approximately
65,000 facts concerning 18,000 individuals (see row SEM in Table 2).</p>
      <p>The practicality of our approach, we believe, is determined mainly by the following
two factors. First, the number of facts involving auxiliary individuals introduced during
the materialisation step should not be ‘too large’. Table 2 shows the materialisation
results: the first column shows the number of individuals before and after materialisation
and the percentage of ‘true’ auxiliary individuals, the second column shows the number
of unary facts before and after materialisation and the percentage of facts involving a
‘true’ auxiliary individual, and the third column does the same for binary facts. As one
can see, for each data set, the materialisation introduces few ‘true’ auxiliary individuals,
and the number of facts at most doubles. The number of unary facts involving a ‘true’
auxiliary individual does not change with the size of the input data set, whereas the
number of such binary facts increases by a constant factor. This is because, in clauses
of type 6, atoms A(oR;A) do not contain a variable, whereas atoms R(x; oR;A) do.</p>
      <p>Second, evaluating q over D(K) should not produce too many spurious answers.
Table 3 shows the total number of answers for each query—that is, the number of answers
obtained by evaluating the query over D(K); moreover, the table shows what percentage
of these answers are spurious. Queries q2l, q1l0, q6s, and q8s retrieve a significant
percentage of spurious answers. However, only query q2l has proven to be challenging for our
system due to the large number of retrieved answers, with an evaluation time of about
40 minutes over the largest knowledge base (L-20). Surprisingly, q1l also performed
rather poorly despite a low number of spurious answers, with an evaluation time of
about 20 minutes for L-20. All other queries were evaluated in at most a few seconds,
thus suggesting that queries q1l and q2l are problematical mainly because HermiT does
not implement query optimisation algorithms typically used in relational databases.
6</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>We presented the first combined technique for answering conjunctive queries over DL
ontologies that include nominals. A preliminary evaluation suggests the following. First,
the number of materialised facts over ‘true’ anonymous individuals increases by a
constant factor with the size of the data. Second, query evaluation results have shown that,
while some cases may be challenging, in most cases the percentage of answers that
are spurious is manageable. Hence, our technique provides a practical CQ answering
algorithm for a large fragment of OWL 2 EL.</p>
      <p>We anticipate several directions for our future work. First, we would like to
investigate the use of top-down query evaluation techniques, such as magic sets [20] or SLG
resolution [21]. Second, tighter integration of the detection of spurious answers with the
query evaluation algorithms should make it possible to eagerly detect spurious answers
(i.e., before the query is fully evaluated). Lutz et al. [18] already implemented a filtering
condition as a user-defined function in a database, but it is unclear to what extent such
an implementation can be used to optimise query evaluation. Finally, we would like to
extend our approach to all of OWL 2 EL.</p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgements</title>
      <p>This work was supported by the Royal Society; Alcatel-Lucent; the EU FP7 project
OPTIQUE; and the EPSRC projects ExODA, MASI3, and QueRe.
17. Dantsin, E., Eiter, T., Gottlob, G., Voronkov, A.: Complexity and expressive power of logic
programming. ACM Computing Surveys 33(3) (2001) 374–425
18. Lutz, C., Seylan, I., Toman, D., Wolter, F.: The Combined Approach to OBDA: Taming
Role Hierarchies using Filters. In Fokoue, A., Liebig, T., Goodman, E., Weaver, J., Urbani,
J., Mizell, D., eds.: Proceedings of the Joint Workshop on Scalable and High-Performance
Semantic Web Systems (SSWS+HPCSW 2012). Volume 943 of CEUR Workshop
Proceedings., CEUR-WS.org (2012) 16–31
19. Guo, Y., Pan, Z., Heflin, J.: LUBM: A benchmark for OWL knowledge base systems. Journal
of Web Semantics 3(2–3) (2005) 158–182
20. Abiteboul, S., Hull, R., Vianu, V.: Foundations of Databases. Addison-Wesley (1995)
21. Chen, W., Warren, D.S.: Query evaluation under the well-founded semantics. In:
Proceedings of the 12th ACM SIGACT-SIGMOD-SIGART symposium on Principles of database
systems. PODS ’93, New York, NY, USA, ACM (1993) 168–179</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGuinness</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nardi</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel-Schneider</surname>
          </string-name>
          , P.F., eds.: The Description Logic Handbook: Theory, Implementation, and
          <string-name>
            <surname>Applications</surname>
          </string-name>
          . Cambridge University Press (
          <year>2007</year>
          )
          <article-title>ISBN 9780511717383</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Cuenca</given-names>
            <surname>Grau</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Horrocks</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            ,
            <surname>Motik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Parsia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Patel-Schneider</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Sattler</surname>
          </string-name>
          ,
          <string-name>
            <surname>U.</surname>
          </string-name>
          :
          <article-title>OWL 2: The next step for OWL</article-title>
          .
          <source>Journal of Web Semantics</source>
          <volume>6</volume>
          (
          <issue>4</issue>
          ) (
          <year>2008</year>
          )
          <fpage>309</fpage>
          -
          <lpage>322</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Glimm</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lutz</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sattler</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <article-title>Conjunctive Query Answering for the Description Logic SHIQ</article-title>
          .
          <source>Journal of Artificial Intelligence Research</source>
          <volume>31</volume>
          (
          <year>2008</year>
          )
          <fpage>151</fpage>
          -
          <lpage>198</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Baader</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Brandt</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lutz</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Pushing the E L Envelope. In Kaelbling</surname>
            ,
            <given-names>L.P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Saffiotti</surname>
          </string-name>
          , A., eds.
          <source>: Proceedings of the 19th International Joint Conference on Artificial Intelligence (IJCAI</source>
          <year>2005</year>
          ), Edinburgh, UK, Morgan Kaufmann Publishers (
          <article-title>July 30-August 5</article-title>
          <year>2005</year>
          )
          <fpage>364</fpage>
          -
          <lpage>369</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Giacomo</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lembo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lenzerini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosati</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          :
          <article-title>Tractable Reasoning and Efficient Query Answering in Description Logics: The DL-Lite Family</article-title>
          .
          <source>Journal of Automated Reasoning</source>
          <volume>9</volume>
          (
          <issue>3</issue>
          ) (
          <year>2007</year>
          )
          <fpage>385</fpage>
          -
          <lpage>429</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6. Kro¨ tzsch,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Rudolph</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Hitzler</surname>
          </string-name>
          ,
          <string-name>
            <surname>P.</surname>
          </string-name>
          :
          <article-title>Conjunctive queries for a tractable fragment of OWL 1.1</article-title>
          . In Aberer,
          <string-name>
            <given-names>K.</given-names>
            ,
            <surname>Choi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.S.</given-names>
            ,
            <surname>Noy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            ,
            <surname>Allemang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.I.</given-names>
            ,
            <surname>Nixon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            ,
            <surname>Golbeck</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Mika</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Maynard</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Mizoguchi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Schreiber</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            ,
            <surname>Cudre</surname>
          </string-name>
          ´-Mauroux, P., eds.
          <source>: Proceedings of the 6th International Semantic Web Conference (ISWC'07)</source>
          . Volume 4825 of LNCS., Springer (
          <year>2007</year>
          )
          <fpage>310</fpage>
          -
          <lpage>323</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Ortiz</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rudolph</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Simkus</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Query Answering in the Horn Fragments of the Description Logics SHOIQ and SROIQ</article-title>
          . In Walsh, T., ed.
          <source>: Proceedings of the 22nd International Joint Conference on Artificial Intelligence (IJCAI</source>
          <year>2011</year>
          ), Barcelona, Spain, AAAI Press (
          <year>July</year>
          16-22
          <year>2011</year>
          )
          <fpage>1039</fpage>
          -
          <lpage>1044</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Artale</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kontchakov</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zakharyaschev</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>The DL-Lite Family and Relations</article-title>
          .
          <source>Journal of Artificial Intelligence Research</source>
          <volume>36</volume>
          (
          <year>2009</year>
          )
          <fpage>1</fpage>
          -
          <lpage>69</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Pe</surname>
          </string-name>
          <article-title>´rez-</article-title>
          <string-name>
            <surname>Urbina</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Motik</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>Tractable Query Answering and Rewriting under Description Logic Constraints</article-title>
          .
          <source>Journal of Applied Logic</source>
          <volume>8</volume>
          (
          <issue>2</issue>
          ) (
          <year>2010</year>
          )
          <fpage>186</fpage>
          -
          <lpage>209</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Eiter</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ortiz</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Simkus</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tran</surname>
            ,
            <given-names>T.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xiao</surname>
          </string-name>
          , G.:
          <article-title>Query Rewriting for Horn-SHIQ Plus Rules</article-title>
          .
          <source>In: Proceedings of the 26th AAAI Conference on Artificial Intelligence</source>
          ,
          <source>(AAAI</source>
          <year>2012</year>
          ), AAAI Press (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Rosati</surname>
          </string-name>
          , R.: On Conjunctive Query Answering in E L. In
          <string-name>
            <surname>Calvanese</surname>
          </string-name>
          , D.,
          <string-name>
            <surname>Franconi</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haarslev</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lembo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Motik</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Turhan</surname>
            ,
            <given-names>A.Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tessaris</surname>
          </string-name>
          , S., eds.
          <source>: Proceedings of the 20th International Workshop on Description Logics (DL-2007). CEUR Workshop Proceedings</source>
          , CEUR-WS.org (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Kontchakov</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lutz</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Toman</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wolter</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zakharyaschev</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>The Combined Approach to Ontology-Based Data Access</article-title>
          . In Walsh, T., ed.
          <source>: Proceedings of the 22nd International Joint Conference on Artificial Intelligence (IJCAI</source>
          <year>2011</year>
          ), AAAI Press (
          <year>2011</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Lutz</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Toman</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wolter</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          :
          <article-title>Conjunctive Query Answering in the Description Logic E L Using a Relational Database System</article-title>
          . In Boutilier, C., ed.
          <source>: Proceedings of the 21st International Joint Conference on Artificial Intelligence</source>
          ,
          <source>(IJCAI</source>
          <year>2009</year>
          ), AAAI Press (
          <year>2009</year>
          )
          <fpage>2070</fpage>
          -
          <lpage>2075</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14. Kro¨ tzsch,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Rudolph</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Hitzler</surname>
          </string-name>
          ,
          <string-name>
            <surname>P.</surname>
          </string-name>
          : ELP:
          <article-title>Tractable rules for OWL 2</article-title>
          .
          <string-name>
            <given-names>In</given-names>
            <surname>Sheth</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Staab</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Dean</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Paolucci</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Maynard</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Finin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            ,
            <surname>Thirunarayan</surname>
          </string-name>
          , K., eds.
          <source>: Proceedings of the 7th International Semantic Web Conference (ISWC'08)</source>
          . Volume 5318 of LNCS., Springer (
          <year>2008</year>
          )
          <fpage>649</fpage>
          -
          <lpage>664</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Stefanoni</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Motik</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          :
          <article-title>Introducing Nominals to the Combined Query Answering Approaches for EL</article-title>
          .
          <source>CoRR abs/1303</source>
          .7430 (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Fitting</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>First-order logic</article-title>
          and
          <source>automated theorem proving (2nd ed.)</source>
          . Springer-Verlag New York, Inc., Secaucus, NJ, USA (
          <year>1996</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>