<!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>Query-based comparison of OBDA specifications</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Meghyn Bienvenu</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Riccardo Rosati</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Dipartimento di Ingegneria informatica, automatica e gestionale Sapienza Universita` di Roma</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Laboratoire de Recherche en Informatique CNRS &amp; Universite ́ Paris-Sud</institution>
          ,
          <country country="FR">France</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>An ontology-based data access (OBDA) system is composed of one or more data sources, an ontology that provides a conceptual view of the data, and declarative mappings that relate the data and ontology schemas. In order to debug and optimize such systems, it is important to be able to analyze and compare OBDA specifications. Recent work in this direction compared specifications using classical notions of equivalence and entailment, but an interesting alternative is to consider query-based notions, in which two specifications are deemed equivalent if they give the same answers to the considered query or class of queries for all possible data sources. In this paper, we define such query-based notions of entailment and equivalence of OBDA specifications and investigate the complexity of the resulting analysis tasks when the ontology is formulated in DL-LiteR.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Ontology-based data access (OBDA) [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] is a recent paradigm that proposes the use
of an ontology as a conceptual, reconciled view of the information stored in a set of
existing data sources. The connection between the ontology and the data sources is
provided by declarative mappings, that relate the elements of the ontology with the
elements of the data sources. The ontology layer is the virtual interface used to access
data, through queries over the elements of the ontology.
      </p>
      <p>
        Due to the recent availability of techniques and systems for query processing in this
setting [
        <xref ref-type="bibr" rid="ref14 ref5">5, 14</xref>
        ], the OBDA approach has recently started to be experimented in real
applications (see e.g. [
        <xref ref-type="bibr" rid="ref1 ref10 ref7">1, 7, 10</xref>
        ]). In these projects, the construction, debugging and
maintenance of the OBDA specification, consisting of the ontology, the schemas of the data
sources, and the mapping, is a non-trivial task. Actually, the size and the complexity of
the ontology and, especially, the mappings makes the management of such
specifications a practical issue in these projects. Providing formal tools for supporting the above
activities is therefore very important for the successful deployment of OBDA solutions.
      </p>
      <p>
        In addition, the OBDA specification plays a major role in query answering, since
the form of the specification may affect the system performance in answering queries:
different, yet semantically equivalent specifications may give rise to very different
execution times for the same query. So, the study of notions of equivalence and formal
comparison of OBDA specifications is also important for optimizing query
processing in OBDA systems. Indeed, some systems already implement forms of optimization
based on transformations of the OBDA specification (an example is [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]).
      </p>
      <p>
        So far, most of the work in OBDA has focused on query answering, often in a
simplified setting without any mappings. Very little attention has been devoted to the
formal analysis of OBDA specifications. The first approach that explicitly focuses on
the formal analysis of OBDA specifications is [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], whose aim is the identification
of semantic anomalies in mappings. Such an approach is based on a classical notion
of logical equivalence and entailment between OBDA specifications. While it is very
natural to resort to such classical notions, a significant alternative in many cases may
be the adoption of query-based notions of equivalence and comparison, in which two
specifications are compared with respect to a given query or a given class of queries,
and are deemed equivalent if they give the same answers to the considered queries for
all possible extensions of the data sources. This idea has been already explored in the
data exchange and schema mapping literature (see, e.g., [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]) and for description logics
for comparing TBoxes and knowledge bases [
        <xref ref-type="bibr" rid="ref11 ref4">11, 4</xref>
        ]. To the best of our knowledge, it
has never been explicitly considered for OBDA specifications.
      </p>
      <p>The majority of work on on OBDA has considered conjunctive queries (CQs) as the
query language. Therefore, a first natural choice would be to compare OBDA
specifications with respect to the whole class of CQs. We thus define and study a notion of
CQentailment between OBDA specifications that formalizes this case. We also consider the
important subclass of instance queries (IQs), i.e., queries that ask for the instances of a
single concept or role, and analyze the notion of IQ-entailment between specifications.
Moreover, in many application contexts only a (small) set of predefined conjunctive
queries are of interest for the OBDA user(s): in such cases, it may be more appropriate
to tailor the comparison of specifications to a specific set of queries. For this reason, we
also study in this paper the notions of single CQ-entailment and single IQ-entailment,
which compare specifications with respect to a single CQ or IQ, respectively.</p>
      <p>
        We present a first investigation of the computational complexity of deciding the
above forms of entailment for a pair of OBDA specifications. We study ontologies
specified in DL-LiteR and three different mapping languages (linear, GAV and GLAV). In
all cases, we provide exact complexity bounds for the entailment problem. Our results
are summarized in Figure 1. As shown in the table, the complexity of the entailment
check ranges from NL (non-deterministic logarithmic space) for linear mappings and
IQ-entailment to EXPTIME for CQ-entailment. To obtain these results, we show that
instead of considering all possible data instances, it is sufficient to consider a small
number of databases of a particular form. We also exploit connections to query containment
in the presence of signature restrictions [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and KB query inseparability [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Preliminaries</title>
      <p>We start from four pairwise disjoint countably infinite set of names: the set of concept
names NC, the set of role names NR, the set of relation names Nrel, the set of constant
names NI (also called individuals).</p>
      <p>To introduce OBDA specifications, we first recall the notion of knowledge base
(KB) in Description Logics (DLs). A DL KB is a pair hT ; Ai, where: T , called the
TBox, is the intensional component of the KB, and is constituted by a finite set of
axioms expressing intensional knowledge; and A, called the ABox, is a finite set of
atomic concept and role assertions (set of ground facts). We assume that the concept,
role and constant names occurring in every TBox and ABox belong to NC, NR and
NI, respectively. We denote by sig(T ) and sig(A) the set of concept and role names
occurring in T and A, respectively.</p>
      <p>
        Although the definitions of Section 3 are general, in Section 4 we will focus on
the DL DL-LiteR [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. A DL-LiteR TBox consists of a finite set of concept inclusions
B v C and role inclusions R v S, where B, C, R, and S are defined according to the
following syntax (where A is a concept name and P is a role name):
      </p>
      <p>B ! A j 9R</p>
      <p>C ! B j :B</p>
      <p>R ! P j P</p>
      <p>S ! R j :R</p>
      <p>
        We now introduce OBDA specifications. As already explained, a mapping
assertion specifies the semantic relationship between elements of a DL ontology, specified
through a TBox, to elements of a database. Such a relationship is specified through
a pair of queries, one over the TBox signature, and the other one over the database
signature. In this paper, we focus on the case where both queries involved in the
mapping assertion are conjunctive queries: such mapping assertions are called GLAV (for
‘global-as-view’) mappings in the literature [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>Mappings are formally defined as follows. An atom is an expression r(t) where r
is a predicate and t is a tuple of variables and constants. Then, a (GLAV) mapping
assertion m is an expression of the form qs(x) ! qo(x), where qs(x) (called the body
of m, body (m)) is a conjunction of atoms over predicates from Nrel and constants from
NI, qo(x) (called the head of m, head (m)) is a conjunction of atoms using predicates
from NC [ NR and constants from NI, and x, called the frontier variables of m, are the
variables that appear both in qo and in qs. The arity of m is the number of its frontier
variables. When qo(x) has the form p(x) (i.e., qo(x) is a single atom whose arguments
are x), we call m a GAV mapping assertion. A linear mapping assertion is a GAV
assertion whose body consists of a single atom. A (GLAV) mapping M is a set of mapping
assertions. A GAV mapping is a mapping constituted of GAV mapping assertions. A
linear mapping is a set of linear mapping assertions. Without loss of generality, we
assume that in every mapping M, every pair of distinct mapping assertions uses pairwise
disjoint sets of variables.</p>
      <p>An OBDA specification is a pair = hT ; Mi, where T is a TBox and M is a
mapping. Given a mapping assertion m of arity n and an n-tuple of constants a, we
denote by m(a) the assertion obtained from m by replacing the frontier variables with
the constants in a.</p>
      <p>Given a set of atoms AT , gr (AT ) is the function that returns the set of ground atoms
obtained from AT by replacing every variable symbol x with a fresh constant symbol
cx. We assume that such constant symbols do not occur elsewhere in the application
context of the function gr (i.e., in the TBoxes, mappings and databases involved).</p>
      <p>In this paper, a database (instance) is a set of ground atoms using relation names
from Nrel and constant names from NI. Given a mapping M and a database instance D,
we define the ABox for D and M, denoted as AM;D, as the following ABox:
f</p>
      <p>2 gr (head (m(a))) j m 2 M and and D j= 9y:body (m(a)) g
where we assume that y are the variables occurring in body (m(a)). Given an OBDA
specification = hT ; Mi and a database instance D, we define the models of and
D, denoted as M ods( ; D) as the set of models of the KB hT ; AM;Di. When such a set
is empty, we write hT ; M; Di j= ? (analogously, when a KB hT ; Ai has no models,
we write hT ; Ai j= ?).</p>
      <p>We are interested in the problem of answering instance queries and conjunctive
queries over a pair composed of an OBDA specification and a database. A Boolean
conjunctive query (CQ) is an expression of the form 9x( 1 ^ : : : ^ n) where every i
is an atom whose arguments are either constants or variables from x. For a non-Boolean
CQ q with answer variables v1; : : : ; vk, a tuple of constants a = ha1; : : : ; aki occurring
in A is said to be a certain answer for q w.r.t. K just in the case that K j= q(a),
where q(a) is the Boolean query obtained from q by replacing each vi by ai. We call
instance query (IQ) a CQ consisting of a single atom of the form A(x) or R(x; y), with
A concept name, R role name, and x; y distinct free variables. We denote by sig(q) the
set of concept and role names occurring in a query q. We use CQ (resp. IQ ) to refer the
set of all CQs (resp. IQs) over the DL signature NC [ NR.</p>
      <p>Given an OBDA specification = hT ; Mi, a database instance D, and a
conjunctive query q, we define the certain answers for q w.r.t. ( ; D) as the tuples of constants
from D that are certain answers for q w.r.t. hT ; AM;Di. In particular, for Boolean CQs,
we say that q is entailed by ( ; D), denoted by ( ; D) j= q (or hT ; M; Di j= q),
if I j= q for every I 2 M ods( ; D). Note that for non-Boolean queries, we only
consider tuples of constants from D, in order to avoid including those fresh constants
introducing in AM;D by grounding existential variables in mapping heads.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Query-based Entailment for OBDA Specifications</title>
      <p>We start by recalling the classical notion of entailment between OBDA specifications.</p>
      <sec id="sec-3-1">
        <title>Definition 1 (Logical entailment). An OBDA specification hT1; M1i logically entails</title>
        <p>hT2; M2i, written hT1; M1i j=log hT2; M2i if and only the first-order theory T1 [ M1
logically entails the first-order theory T2 [ M2.</p>
        <p>We now define the formal notions of query-based entailment between OBDA
specifications considered in this paper. First, we introduce a notion of entailment that
compares specifications based upon the constraints they impose regarding consistency.
Definition 2 (?-entailment). Let q be a query. An OBDA specification hT1; M1i
?entails hT2; M2i, written hT1; M1i j=? hT2; M2i, iff, for every database D,
hT2; M2; Di j= ?</p>
        <p>)</p>
        <p>Next, we define a notion of query entailment between OBDA specifications with
respect to a single query.
hT1; M1; Di j= ?
Definition 3 (Single query entailment). Let q be a query. An OBDA
specification hT1; M1i q-entails hT2; M2i, written hT1; M1i j=q hT2; M2i, if and only if
hT1; M1i j=? hT2; M2i and for every database D,
hT2; M2; Di j= q(a)
)
hT1; M1; Di j= q(a)
When q is an IQ, we call the entailment relation in the preceding definition single
IQentailment, while we call it single CQ-entailment if q is an arbitrary CQ.</p>
        <p>We can generalize the previous definition to classes of queries as follows.
Definition 4 (Query entailment). Let L be a (possibly infinite) set of queries. An
OBDA specification hT1; M1i L-entails hT2; M2i, written hT1; M1i j=L hT2; M2i
iff hT1; M1i j=? hT2; M2i and hT1; M1i j=q hT2; M2i for every query q 2 L.
When L = IQ, we call the preceding entailment relation IQ-entailment, and for L =
CQ, we use the term CQ-entailment.</p>
        <p>Note that, for each of the above notions of entailment, a notion of equivalence
between OBDA specifications can be immediately derived, corresponding to entailment
in both directions (we omit the formal definitions due to space limitations).</p>
        <p>The following property immediately follows from the above definitions.
Proposition 1. Let hT1; M1i; hT2; M2i be two OBDA specifications, and let L1 be a
set of queries. Then, hT1; M1i j=log hT2; M2i implies hT1; M1i j=L1 hT2; M2i.
Moreover, if L2 L1, then hT1; M1i j=L1 hT2; M2i implies hT1; M1i j=L2 hT2; M2i.</p>
        <p>As a consequence of the above property, we have that logical entailment implies
CQ-entailment, and CQ-entailment implies IQ-entailment. The converse implications
do not hold, as the following examples demonstrate.</p>
        <p>Example 1. We start by illustrating the difference between logical entailment
and CQ-entailment. Consider a database containing instances for the relation
EXAM(studentName,courseName,grade,date). Then, let 1 = hT1; M1i, where
T1 = fStudent v Person; PhDStudent v Studentg</p>
        <p>M1 = fEXAM(x; y; z; w) ! Student(x)g
and let 2 = hT2; M2i, where T2 = fStudent v Persong and M2 = M1. It is
immediate to verify that 2 6j=log 1. However, we have that 2 j=CQ 1. Indeed,
2 j=CQ 1 can be intuitively explained by the fact that the mapping M1 does not
retrieve any instances of the concept PhDStudent (and there are no subclasses that can
indirectly populate it), so the presence of the inclusion PhDStudent v Student in T1
does not have any effect on query answering; in particular, every CQ that mentions
the concept PhDStudent cannot be entailed both under 1 and under 2. Notice also
that, if we modify the mapping M1 to map PhDStudent instead of Student (i.e., if M1
were fEXAM(x; y; z; w) ! PhDStudent(x)g), then CQ-entailment between 2 and 1
would no longer hold.</p>
        <p>Next, consider 3 = hT3; M3i, where T3 = ; and</p>
        <p>M3 = fEXAM(x; y; z; w) ! Student(x); EXAM(x; y; z; w) ! Person(x)g
Again, it it immediate to see that 3 6j=log 2, while we have that 3 j=CQ 2. Indeed,
3 j=CQ 2 follows informally from the fact that the mapping M3 is able to
“extensionally” simulate the inclusion Student v Person of T2, which is sufficient for 3 to
entail every CQ in the same way as 2.</p>
        <p>Example 2. We slightly modify the previous example to show the difference between
CQ-entailment and IQ-entailment. Consider 1 = hT1; Mi and 2 = hT2; Mi where
T1 = fStudent v Person; Student v 9takesCourseg
T2 = fStudent v Persong</p>
        <p>M = fEXAM(x; y; z; w) ! Student(x)g
Type of entailment</p>
        <p>Type of mapping
logical
?
CQ
IQ
single CQ
single IQ</p>
        <p>GAV / GLAV
linear
GAV / GLAV
linear
linear
GAV / GLAV
linear / GAV / GLAV
linear
GAV / GLAV
linear / GAV / GLAV</p>
        <p>EXPTIME-complete
Complexity
NP-complete
NL-complete
NP-complete
NL-complete
NL-complete
NP-complete</p>
        <p>2p-complete
NL-complete
NP-complete
Then, it can be easily verified that 2 6j=CQ 1. Indeed, consider the Boolean CQ
9x; y takesCourse(x; y): for every database D, this query is not entailed by the pair
( 2; D), while this is not the case when the specification is 1. On the other hand, we
have that 2 j=IQ 1: in particular, for every database D and for every pair of
individuals a; b, neither ( 1; D) nor ( 2; D) entails the IQ takesCourse(a; b). Finally, let q be
the non-Boolean CQ 9x takesCourse(x; y): then, it can be easily verified that the single
CQ-entailment 2 j=q 1 holds; while for the CQ q0 of the form 9y takesCourse(x; y),
the single CQ-entailment 2 j=q0 1 does not hold.</p>
      </sec>
      <sec id="sec-3-2">
        <title>Complexity Results for DL-LiteR</title>
        <p>
          In this section, we investigate the computational properties of the different notions of
entailment between OBDA specifications defined in the previous section. For this first
study, we focus on the case in which the TBox is formulated in DL-LiteR [
          <xref ref-type="bibr" rid="ref6">6</xref>
          ], as it is
the basis for the OWL 2 QL profile and one of the most commonly considered DLs for
OBDA. The results of our complexity analysis are displayed in Figure 1.
        </p>
        <p>In what follows, we formally state the different complexity results and provide some
ideas about the proofs. We begin by considering the complexity of deciding classical
entailment between OBDA specifications.</p>
        <p>Theorem 1. Classical logical entailment for OBDA specifications based upon
DL-LiteR TBoxes is NP-complete for GAV or GLAV mappings, and NL-complete for
linear mappings.</p>
        <p>
          Proof. Let 1 = hT1; M1i, 2 = hT2; M2i. First, it is easy to see that 1 j=log 2 iff
(i) T1 j= T2; and (ii) 1 j=log M2. Property (i) can be decided in NL [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ]. Property (ii)
can be decided by an algorithm that, for every assertion m 2 M2, first builds a database
D corresponding to gr (body (m)) (i.e., obtained by “freezing” the body of m), and then
checks whether h 1; Di entails the CQ corresponding to the head of m whose frontier
variables have been replaced by the corresponding constants. This algorithm runs in
NP in the case of GAV and GLAV mappings, and in NL in the case of linear mappings,
which implies the overall upper bounds in the theorem statement. The lower bound
for GAV mappings can be obtained through an easy reduction of conjunctive query
containment to logical entailment, while the one for linear mappings follows from a
reduction of the entailment of a concept inclusion axiom in a DL-LiteR TBox.
tu
        </p>
        <p>We next consider ?-entailment. Our upper bounds rely on the following result that
shows it is sufficient to consider a small number of small databases.</p>
        <p>Theorem 2. Let q be a CQ, and let 1 = hT1; M1i and 2 = hT2; M2i be OBDA
specifications such that T1; T2 are formulated in DL-LiteR, and M1; M2 are GLAV
mappings. Then 1 j=? 2 if and only if hT1; M1; Di j= ? for every database D
satisfying the following condition:1
– Condition 1: D is obtained by (i) taking two mapping assertions m1; m2 from
M2, (ii) selecting atoms 1 and 2 from head (m1) and head (m2) respectively,
(iii) identifying in m1 and m2 some variables from 1 and 2 in such a way that
hT ; gr (f 1; 2g)i j= ?, (iv) setting D equal to gr (body (m1) [ body (m2)).
Proof. The one direction is immediate from the definitions. For the interesting
direction, let us suppose that hT1; M1; Di j= ? for every database D satisfying Condition
1. Let us further suppose that we have hT2; M2; D0i j= ?, where D0 may be any
database. We thus have hT2; AM2;D0 i j= ?. It is well known that every minimal
inconsistent subset of a DL-LiteR KB contains at most two ABox assertions, so there
must exist a subset A0 AM2;D with jA0j 2 such that hT2; A0i j= ?. Let be
the conjunction of atoms obtained by taking for each ABox assertion in A0, a mapping
assertion that produced it, identifying those variables (and only those variables) needed
to produce the ABox assertion(s), and then taking the conjunction of the atoms in the
bodies. We observe that by construction D = gr ( ) satisfies Condition 1 and is such
that hT1; M1; D i j= ?. By construction, there is a homomorphism of into the
original database D0. It follows that hT1; M1; D0i j= ?. tu</p>
        <p>Using the preceding result, we can pinpoint the complexity of ?-entailment.
Theorem 3. The ?-entailment problem is NP-complete for OBDA specifications based
upon DL-LiteR TBoxes and GAV / GLAV mappings, and NL-complete in the case of
linear mappings.</p>
        <p>Proof. We know from Theorem 2 that 1 j=? 2 iff hT1; M1; Di j= ? for every
database D satisfying Condition 1. For the GAV / GLAV case, we guess one such
database D and a polynomial-size proof that hT1; M1; Di j= ?. For the linear case, we
note that the databases satisfying Condition 1 contain at most 2 tuples each and can be
enumerated in logarithmic space. For every such database, we can check using an NL
oracle whether hT1; M1; Di j= ?. Since LNL = NL, we obtain an NL procedure. tu</p>
        <p>Next we consider entailment with respect to a specific query. We again start by
showing it is sufficient to consider a finite number of databases of a particular form.
1 Recall that distinct mapping assertions in a mapping have no common variables.
Theorem 4. Let q be a CQ, and let 1 = hT1; M1i and 2 = hT2; M2i be OBDA
specifications such that T1; T2 are formulated in DL-LiteR, and M1; M2 are GLAV
mappings. Then 1 j=q 2 if and only if 1 j=? 2 and hT2; M2; Di j= q(a) implies
hT1; M1; Di j= q(a) for every database D satisfying the following condition:
– Condition 2: D is obtained by (i) taking k jqj mapping assertions
m1; m2; : : : ; mk from M2, (ii) identifying some of the frontier variables in
m1; m2; : : : ; mk, (iii) letting D = gr (body (m1) [ body (m2) [ : : : [ body (mk)).
If q is an IQ, then the latter condition can be replaced by:
– Condition 3: D is obtained by (i) taking a mapping assertion m from M2 and
choosing an atom 2 head (m), (ii) possibly identifying in m the (at most two)
frontier variables appearing in , and (iii) letting D = gr (body (m)).
Proof. Again the one direction is immediate. To show the non-trivial direction, let us
suppose that 1 j=? 2 and that hT2; M2; Di j= q(c) implies hT1; M1; Di j= q(c)
for every tuple c and database D satisfying Condition 2 (we return later to the case
of IQs). Let us further suppose that we have hT2; M2; D0i j= q(a). The first
possibility is that hT2; M2; D0i j= ?, in which case we have hT1; M1; D0i j= ?
because of 1 j=? 2. We thus obtain hT1; M1; D0i j= q0(a). The other possibility
is that hT2; M2; D0i j= q0(a) and hT2; M2; D0i 6j= ?. If hT1; M1; D0i j= ?, we
immediately obtain hT1; M1; D0i j= q0(a). Otherwise, let AM2;D0 be the ABox for
M2 and D0. Since hT2; M2; D0i j= q0(a), we have hT2; AM2;D0 i j= q0(a). It is
a well-known property of DL-LiteR that there exists a subset A0 AM2;D0 with
jA0j jq0j such that hT2; A0i j= q0(a). Let jA0j = k, and let 1; : : : ; k be the
ABox assertions in A0. For each i, we choose a mapping assertion mi 2 M2 and
a homomorphism hi of body (mi) into D0 such that gr (hi(head (m))) contains i.
We also select an atom i 2 head (m) such that gr (h( )) = . Let m0i be
obtained from mi by identifying frontier variables y and z if hi(y) = hi(z), and set
D0 = gr (body (m01) [ : : : [ body (m0k)). It is easy to see that D0 satisfies Condition 2.
Moreover, by construction, the ABox AM2;D0 contains a subset A00 that is isomorphic
to A0, and so hT2; M2; D0i j= q0(a0) where a0 is tuple corresponding to a according to
this isomorphism. Applying our assumption, we obtain hT1; M1; D0i j= q0(a0). Using
the fact that there is a homomorphism of body (m01) [ : : : [ body (m0k) into D0 that is an
isomorphism on the frontier variables, we obtain hT1; M1; Di j= q0(a).</p>
        <p>Finally, for the case of instance queries, we simply note that we have k = 1, and it
is only necessary to identify those variables in the head atom of the mapping that leads
to introducing the single ABox assertion of interest. This yields Condition 3.</p>
        <p>We pinpoint the complexity of single CQ-entailment, showing it to be
Theorem 5. The single CQ-entailment problem is 2p-complete for OBDA
specifications based upon DL-LiteR TBoxes and GLAV mappings. The lower bound holds even
for linear mapping assertions and when both TBoxes are empty.</p>
        <p>Proof. For the upper bound, consider two OBDA specifications 1 = hT1; M1i and
2 = hT2; M2i. From Theorems 2 and 4, we know that 1 6j=q 2 if and only if one of
the following holds:
tu
2p-complete.
– there is a database D satisfying Condition 2 such that hT1; M1; Di 6j= ?;
– there is a database D satisfying Condition 2 such that hT2; M2; Di j= q(a),
hT2; M2; Di 6j= ?, and hT1; M1; Di 6j= q(a).</p>
        <p>The first item can be checked using an NP oracle (by Theorem 3). To check the
second item, we remark that the size of databases satisfying Condition 2 cannot exceed
max(2; jqj) maxbody, where maxbody is the maximum number of atoms appearing
in the body of a mapping assertion in M2. It follows that to show that the second item
above is violated, we can guess a database D of size at most max(2; jqj) maxbody
together with a tuple of constants a and a polynomial-size proof that hT2; M2; Di j=
q(a), and then we can verify using an NP oracle that hT1; M1; Di 6j= q(a). We
therefore obtain a 2p procedure for deciding the complement of our problem.</p>
        <p>
          For the lower bound, we utilize a result from [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ] on query containment
over signature-restricted ABoxes. In that paper, it is shown how, given a 2QBF
8u9v'(u; v), one can construct a TBox T , Boolean CQs q1 and q2, and a signature
such that 8u9v'(u; v) is valid iff T ; A j= q1 ) T ; A j= q2 for all ABoxes A
with sig(A) . We will not detail the construction but simply remark that the same
TBox T = fT v V; F v V g is used for all QBFs, the signature is given by
(sig(T ) [ sig(q1) [ sig(q2)) n fV g, and the query q2 is such that V 62 sig(q2).
        </p>
        <p>In what follows, we will show how given T , q1, q2, and as above, we can reduce
the problem of testing whether T ; A j= q1 implies T ; A j= q2 for all -ABoxes to
the problem of single CQ entailment. We will use for our database instances, and we
create two copies 1 = fP 1 j P 2 g and 2 = fP 2 j P 2 g of the signature
to be used in the head of mapping assertions. Next, we define sets of mapping
assertions copy1( ) and copy2( ) that simply copies all of the predicates in into the
corresponding symbol in 1 (resp. 2). Formally, for j 2 f1; 2g,
copyj ( ) = fA(x) ! Aj (x) j A 2
\ NCg [ fR(x; y) ! Rj (x; y) j R 2
\ NRg
We further define, given a data signature 1 and DL signature
populate( 1; 2) of mapping assertions that populates the relations in
possible combinations of the constants appearing in tuples over 1:
2, a set
2 using all
populate( 1; 2) =fP1(x1; : : : ; xk) ! P2(x01; : : : ; x0`) j P1 2
1; arity(P ) = k;
P2 2
2; arity(P ) = `; fx01; : : : ; x0`g
fx1; : : : ; xk)g
Using copy1( ), copy2( ), populate( ; 1), and populate( ; 2), we construct the
following mappings:</p>
        <p>M1 = populate( ; 1) [ copy2( )</p>
        <p>
          M2 = copy1( ) [ populate( ; 2) [ fT (x) ! V (x); F (x) ! V (x)g
Observe that both mappings are linear. For the query, we let q10 (resp. q20) be obtained
from q1 (resp. q2) by replacing every predicate P by P 1( resp. P 2). We also rename
variables so that q10 and q20 do not share any variables. We then let q be the CQ obtained
by taking the conjunction of q10 and q20 and existentially quantifying all variables. In the
appendix, we show that h;; M1i j=q h;; M2i iff T ; A j= q1 ) T ; A j= q2 for all
-ABoxes. By combining this with the reduction from [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ], we obtain a reduction from
universal 2QBF to the q-entailment problem, establishing 2p-hardness of the latter. tu
        </p>
        <p>If we consider IQs instead, the complexity drops to either NP- or NL-complete.
Theorem 6. The single IQ-entailment problem is NP-complete for OBDA
specifications based upon DL-LiteR TBoxes and either GAV or GLAV mappings. It is
NLcomplete if linear mappings are considered.</p>
        <p>Proof. We give the arguments for GAV and GLAV mappings (for linear case, see the
appendix). For the NP upper bound, consider two OBDA specifications 1 = hT1; M1i
and 2 = hT2; M2i, and let q be an IQ. By Theorem 4, 1 j=q 2 if and only if 1 j=?
2 and hT2; M2; Di j= implies hT1; M1; Di j= for all databases D satisfying
Condition 3 and for all Boolean IQs obtained by instantiating the variable(s) in q
with constant(s) from D.</p>
        <p>We already know that it is in NP to test whether 1 j=? 2. For the second property,
observe that there are only polynomially many databases satisfying Condition 2, since
each corresponds to choosing a mapping assertion m in M2, an atom 2 head (m),
and deciding whether or not to identify variables in . For every such database D, we
compute (in polynomial time) the set of Boolean IQs obtained by instantiating the IQ
q with constants from D for which hT2; M2; gr (head (m))i j= . For every such , we
guess a polynomial-size proof that hT1; M1; Di j= . If all of our polynomially many
guesses succeed, then the procedure returns yes, and otherwise no. By grouping all of
the guesses together, we obtain an NP decision procedure.</p>
        <p>The NP lower bound is by reduction from the NP-complete CQ containment
problem: given two CQs q1; q2 both having a single answer variable x, we have q1
q2 iff h;; fq2 ! A(x)gi j=A(x) h;; fq1 ! A(x)gi, where A is a concept name
that does not appear in either of q1 and q2.
tu</p>
        <p>Finally, we consider entailment with respect to entire classes of queries. Again, we
can show it is sufficient to consider a small number of databases of a particular form.
Theorem 7. Let 1 = hT1; M1i and 2 = hT2; M2i be as in Theorem 4. For L 2
fCQ; IQg, 1 j=L 2 if and only if 1 j=? 2 and hT2; M2; Di j= q(a) implies
hT1; M1; Di j= q(a) for every q 2 L and every database D that satisfies Condition 3.</p>
        <p>
          We show that testing CQ-entailment is much more difficult than for single CQs.
Both the upper and lower bounds use recent results on KB query inseparability [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ].
Theorem 8. CQ-entailment is EXPTIME-complete for OBDA specifications based
upon DL-LiteR TBoxes and either GLAV, GAV, or linear mappings.
        </p>
        <p>
          Proof. We start with the proof of membership in EXPTIME. Consider OBDA
specifications 1 = hT1; M1i and 2 = hT2; M2i. By Theorem 7, 1 j=CQ 2 if and
only if 1 j=? 2 and hT2; M2; Di j= q(a) implies hT1; M1; Di j= q(a) for
every choice of q(a) and every database D satisfying Condition 3. We know that testing
1 j=? 2 can be done in NP (Theorem 3). To decide whether the second property
holds, we consider each of the (polynomially many) databases satisfying Condition 3.
For every such database D, we generate the two ABoxes AM1;D and AM2;D and the
corresponding KBs K1 = hT1; AM1;Di and K2 = hT2; AM2;Di. We then test whether
it is the case that for every CQ q over sig(K2), K2 j= q(a) implies K1 j= q(a), and we
return no if this is not the case. The preceding check corresponds to the -query
entailment problem for DL-LiteR KBs, which has been recently studied in [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ] and shown
to be EXPTIME-complete. We therefore obtain an EXPTIME procedure for deciding
CQ-entailment between OBDA specifications.
        </p>
        <p>
          Our lower bound also makes use of the recent work on query inseparability of
DL-LiteR knowledge bases. In [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ], the following problem is shown to be
EXPTIMEcomplete: given DL-LiteR TBoxes T1 and T2 that are consistent with the ABox fA(c)g,
decide whether the certain answers for q w.r.t. hT2; fA(c)gi are contained in those for
hT1; fA(c)gi for every CQ q with sig(q) sig(T2). To reduce this problem to the
CQentailment problem for OBDA specifications, we consider the following linear
mapping that populates a fresh concept A0 with all constants of a -instance (refer to the
proof of Theorem 5 for the definition of populate): M1 = M2 = populate( ; fA0g).
To complete the proof, we show in the appendix that hT1; M1i j=CQ hT2; M2i iff
hT2; fA(c)gi j= q(a) implies hT1; fA(c)gi j= q(a) for every CQ q, where T10 and T20
are obtained from T1 and T2 by replacing A with A0. tu
        </p>
        <p>Our final result shows that IQ-entailment has the same complexity as single
IQentailment. The proof proceeds similarly to the proof of Theorem 6.</p>
        <p>Theorem 9. IQ-entailment is NP-complete for OBDA specifications based upon
DL-LiteR TBoxes and either GAV or GLAV mappings. It is NL-complete if linear
mappings are considered.
5</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Conclusion and Future Work</title>
      <p>In this paper, we have introduced notions of query-based entailment of OBDA
specifications and have analyzed the complexity of checking query-based entailment for
different classes of queries and mappings and for TBoxes formulated in DL-LiteR.</p>
      <p>
        The present work constitutes only a first step towards a full analysis of query-based
forms of comparing OBDA specifications, and can be extended in several directions:
– First, it would be interesting to extend the computational analysis of query
entailment to other DLs beyond DL-LiteR. For instance, one interesting question for DLs
with functional or cardinality restrictions concerns the impact of the Unique Name
Assumption on the complexity of (and the techniques for) query entailment.
– Second, other forms of mapping beyond GAV and GLAV could be analyzed. In
particular, we would like to see whether decidability of query entailment is preserved
if we add some restricted form of inequality or negation to the mapping bodies.
– Third, we could introduce a query signature and only test entailment for queries
formulated in the given signature, as has been done for TBox and KB query
inseparability [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. In fact, all of the complexity upper bounds in this paper hold also if
we introduce a query signature, but this may not be the case for other DLs.
– Finally, to explore the impact of restricting the set of possible databases, we could
extend the computational analysis to database schemas with integrity constraints.
Acknowledgments. This research has been partially supported by the EU under FP7
project Optique (grant n. FP7-318338) and by the French National Research Agency
under ANR project PAGODA (grant n. ANR-12-JS02-007-01).
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>N.</given-names>
            <surname>Antonioli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Castano</surname>
          </string-name>
          `,
          <string-name>
            <given-names>C.</given-names>
            <surname>Civili</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Coletta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Grossi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Lembo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lenzerini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. F.</given-names>
            <surname>Savo</surname>
          </string-name>
          , and
          <string-name>
            <given-names>E.</given-names>
            <surname>Virardi</surname>
          </string-name>
          .
          <article-title>Ontology-based data access: the experience at the Italian Department of Treasury</article-title>
          .
          <source>In Proc. of the Industrial Track of the 25th Int. Conf. on Advanced Information Systems Engineering (CAiSE)</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>A.</given-names>
            <surname>Artale</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kontchakov</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zakharyaschev</surname>
          </string-name>
          .
          <article-title>The DL-Lite family and relations</article-title>
          .
          <source>J. of Artificial Intelligence Research</source>
          ,
          <volume>36</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>69</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>M.</given-names>
            <surname>Bienvenu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Lutz</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Wolter</surname>
          </string-name>
          .
          <article-title>Query containment in description logics reconsidered</article-title>
          .
          <source>In Proc. of the 13th Int. Conf. on the Principles of Knowledge Representation and Reasoning (KR)</source>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>E.</given-names>
            <surname>Botoeva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kontchakov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Ryzhikov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Wolter</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zakharyaschev</surname>
          </string-name>
          .
          <article-title>Query inseparability for description logic knowledge bases</article-title>
          .
          <source>In Proc. of the 14th Int. Conf. on the Principles of Knowledge Representation and Reasoning (KR)</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          , G. De Giacomo,
          <string-name>
            <given-names>D.</given-names>
            <surname>Lembo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lenzerini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rodriguez-Muro</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Rosati</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ruzzi</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D. F.</given-names>
            <surname>Savo</surname>
          </string-name>
          .
          <article-title>The Mastro system for ontology-based data access</article-title>
          .
          <source>Semantic Web J.</source>
          ,
          <volume>2</volume>
          (
          <issue>1</issue>
          ):
          <fpage>43</fpage>
          -
          <lpage>53</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          , G. De Giacomo,
          <string-name>
            <given-names>D.</given-names>
            <surname>Lembo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lenzerini</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Rosati</surname>
          </string-name>
          .
          <article-title>Tractable reasoning and efficient query answering in description logics: The DL-Lite family</article-title>
          .
          <source>J. of Automated Reasoning</source>
          ,
          <volume>39</volume>
          (
          <issue>3</issue>
          ):
          <fpage>385</fpage>
          -
          <lpage>429</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Giese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Haase</surname>
          </string-name>
          , I. Horrocks,
          <string-name>
            <given-names>T.</given-names>
            <surname>Hubauer</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Ioannidis</surname>
          </string-name>
          ,
          <string-name>
            <surname>E.</surname>
          </string-name>
          <article-title>Jime´nez-</article-title>
          <string-name>
            <surname>Ruiz</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Kharlamov</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Kllapi</surname>
            , J. Kl u¨wer, M. Koubarakis,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Lamparter</surname>
            , R. Mo¨ller, C. Neuenstadt,
            <given-names>T.</given-names>
          </string-name>
          <string-name>
            <surname>Nordtveit</surname>
            ,
            <given-names>O</given-names>
          </string-name>
          <string-name>
            <surname>¨</surname>
          </string-name>
          . O¨ zcep, M.
          <string-name>
            <surname>Rodriguez-Muro</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Roshchin</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          <string-name>
            <surname>Savo</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Schmidt</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Soylu</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Waaler</surname>
            , and
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Zheleznyakov</surname>
          </string-name>
          .
          <article-title>Optique: OBDA solution for big data</article-title>
          .
          <source>In Revised Selected Papers of ESWC 2013 Satellite Events</source>
          , volume
          <volume>7955</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>293</fpage>
          -
          <lpage>295</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>A.</given-names>
            <surname>Doan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. Y.</given-names>
            <surname>Halevy</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Z. G.</given-names>
            <surname>Ives</surname>
          </string-name>
          .
          <article-title>Principles of Data Integration</article-title>
          . Morgan Kaufmann,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>G.</given-names>
            <surname>Gottlob</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Pichler</surname>
          </string-name>
          , and
          <string-name>
            <given-names>V.</given-names>
            <surname>Savenkov</surname>
          </string-name>
          .
          <article-title>Normalization and optimization of schema mappings</article-title>
          .
          <source>Very Large Database J.</source>
          ,
          <volume>20</volume>
          (
          <issue>2</issue>
          ):
          <fpage>277</fpage>
          -
          <lpage>302</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. E. Kharlamov,
          <string-name>
            <given-names>M.</given-names>
            <surname>Giese</surname>
          </string-name>
          ,
          <string-name>
            <surname>E.</surname>
          </string-name>
          <article-title>Jime´nez-</article-title>
          <string-name>
            <surname>Ruiz</surname>
            ,
            <given-names>M. G.</given-names>
          </string-name>
          <string-name>
            <surname>Skjaeveland</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <string-name>
            <surname>Soylu</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Zheleznyakov</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          <string-name>
            <surname>Bagosi</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Console</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          <string-name>
            <surname>Haase</surname>
            , I. Horrocks,
            <given-names>S.</given-names>
          </string-name>
          <string-name>
            <surname>Marciuska</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Pinkel</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Rodriguez-Muro</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Ruzzi</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          <string-name>
            <surname>Santarelli</surname>
            ,
            <given-names>D. F.</given-names>
          </string-name>
          <string-name>
            <surname>Savo</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          <string-name>
            <surname>Sengupta</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Schmidt</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          <string-name>
            <surname>Thorstensen</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Trame</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Waaler</surname>
          </string-name>
          .
          <article-title>Optique 1.0: Semantic access to big data: The case of Norwegian Petroleum Directorate's FactPages</article-title>
          .
          <source>In Proc. of the ISWC Posters &amp; Demos Track</source>
          , pages
          <fpage>65</fpage>
          -
          <lpage>68</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>B.</given-names>
            <surname>Konev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kontchakov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ludwig</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Schneider</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Wolter</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Zakharyaschev</surname>
          </string-name>
          .
          <article-title>Conjunctive query inseparability of OWL 2 QL TBoxes</article-title>
          .
          <source>In Proc. of the 25th AAAI Conf. on Artificial Intelligence (AAAI)</source>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>D.</given-names>
            <surname>Lembo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Mora</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Rosati</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. F.</given-names>
            <surname>Savo</surname>
          </string-name>
          , and
          <string-name>
            <given-names>E.</given-names>
            <surname>Thorstensen</surname>
          </string-name>
          .
          <article-title>Towards mapping analysis in ontology-based data access</article-title>
          .
          <source>In Proc. of the 8th Int. Conf. on Web Reasoning and Rule Systems (RR)</source>
          , pages
          <fpage>108</fpage>
          -
          <lpage>123</lpage>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>A.</given-names>
            <surname>Poggi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Lembo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          , G. De Giacomo,
          <string-name>
            <given-names>M.</given-names>
            <surname>Lenzerini</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Rosati</surname>
          </string-name>
          .
          <article-title>Linking data to ontologies</article-title>
          .
          <source>J. on Data Semantics</source>
          , X:
          <fpage>133</fpage>
          -
          <lpage>173</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14. M.
          <string-name>
            <surname>Rodriguez-Muro</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Kontchakov</surname>
            , and
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Zakharyaschev</surname>
          </string-name>
          .
          <article-title>Ontology-based data access: Ontop of databases</article-title>
          .
          <source>In Proc. of the 12th Int. Semantic Web Conf. (ISWC)</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>