<!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>Combining Entity Resolution and Query Answering in Ontologies: A Formal Conceptual Framework</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>(Discussion Paper)</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ronald Fagin</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Phokion G. Kolaitis</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Domenico Lembo</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Lucian Popa</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Federico Scafoglieri</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>IBM Research</institution>
          ,
          <addr-line>Almaden</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Sapienza University of Rome</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>UC Santa Cruz</institution>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>This paper reports on a recent formal framework for integrating entity resolution and query answering within ontologies governed by rules expressed in the form of tuple-generating dependencies and equality-generating dependencies. Our framework outlines the semantics of the ontology by defining special instances involving equivalence classes of entities and sets of values. The former serve to gather entities referring to the same real-world object, and the latter to catalog alternative attribute values. This approach not only addresses entity resolution but also overcomes potential inconsistencies within the data. Additionally, we introduce a tailored chase procedure for this framework, ensuring non-failure and ultimately yielding a universal solution. This universal solution, in turn, can be used to obtain certain answers to conjunctive queries.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Formal Conceptual Framework</kwd>
        <kwd>Entity Resolution</kwd>
        <kwd>Query Answering</kwd>
        <kwd>Knowledge Bases</kwd>
        <kwd>Ontology</kwd>
        <kwd>Chase</kwd>
        <kwd>Universal Model</kwd>
        <kwd>tuple-generating dependencies</kwd>
        <kwd>equality-generating dependencies</kwd>
        <kwd>entity-resolution rules</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        Entity resolution is the problem of determining whether different data records refer to the same
real-world object, such as the same individual or the same organization, etc. [
        <xref ref-type="bibr" rid="ref1 ref2">1, 2</xref>
        ].
      </p>
      <p>
        In this discussion paper we summarize a framework recently appeared in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] for entity
resolution in combination with query answering in the context of ontologies consisting of ground atoms
and rules specified as tuple-generating dependencies (tgds) and equality-generating dependencies
(egds). These rules have been widely investigated in databases and knowledge representation, e.g.
in [
        <xref ref-type="bibr" rid="ref4 ref5 ref6 ref7">4, 5, 6, 7</xref>
        ]; they can express axioms that are used in Description Logics (DLs) [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], as well as
in knowledge bases that are similar to Datalog +/- programs [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Additionally, egds are employed
to express typical entity resolution rules that one may write in practice, as in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. These rules
specify the conditions under which to entities have to be made equal, to say, for instance, that
two persons are indeed the same person if they have similar names and the same date of birth. In
the following, we call such rules entity-egds, whereas we name value-egds the egds imposing
equality on values, used, e.g., to express that a person has only one name.
      </p>
      <p>
        In the proposed framework, the first challenge we face is to come up with a consistent way to
complete or modify the original ontology, while respecting all its rules. To this aim we propose
a new notion of valid models, called ontology solutions. They must satisfy all entity resolution
rules along with all other ontology rules. Furthermore, the solutions must include all original data
(i.e., no information is ever dropped or altered). Our approach is guided by the intuitive principle
that for each real-world object there must be a single node in the solution that represents all
“equivalent” entities denoting the object. To achieve this, we use equivalence classes of entities
that become first-class citizens in our framework. In addition, we relax the standard way in which
value-egds are satisfied by allowing solutions to use sets of values. Intuitively, we interpret egds
as matching dependencies [
        <xref ref-type="bibr" rid="ref1 ref11 ref12">11, 1, 12</xref>
        ]. That is, when the conditions expressed by (the body of)
an entity-egd or a value-egd hold in the data, and thus two entities or two values must be made
equal, we combine them through a merging function that amounts to taking the union of all the
alternatives. In this way, we group all entities that denote the same real-world object into a unique
set, which turns out to be an equivalence class. Similarly, when two values exist where only one
value is instead allowed according to the TBox, we explicitly form their union. Note that we
consider the union of entities a “global” feature for a solution, that is, an entity  may belong to
exactly one equivalence class; in contrast, the union of values is “local” to the context in which a
value occurs, that is, a particular value may belong to more than one set of values.
      </p>
      <p>We also remark that the semantics we adopt for value-egds allows us to always have a solution
(that is, a model) for an ontology, even when there are no models according to the standard
ifrst-order semantics. Indeed, if a value-egd enforces the equality of different values, we collect
together such values, whereas first-order logic would conclude that the ontology is inconsistent.</p>
      <p>
        Besides formalizing the aforementioned ideas, our contribution is on how to combine entity
resolution with query answering. In this respect, () we define universal solutions and show that,
as for standard tgd and egd semantics, universal solutions can be used to obtain the certain answers
of Conjunctive Queries (CQs); () we propose a variant of the classical chase procedure [
        <xref ref-type="bibr" rid="ref4 ref5">4, 5</xref>
        ]
tailored to our approach; () we show that, when the chase procedure terminates, it returns a
universal solution (and thus we have an algorithm for computing the certain answers to CQs).
      </p>
      <p>
        In the following, we discuss our findings mainly by examples and refer the reader to [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] for a
complete formal treatment.
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. Framework</title>
      <p>
        We refer the reader to [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] for an introduction to equivalence classes and relations. In the
following, let ∼ be an equivalence relation, we write [] to denote the equivalence class containing
, instead of []∼ . Moreover, we may write, for example [, , ]∼ (or simply [, , ]) to denote
the equivalence class consisting of the elements , , and .
      </p>
      <p>Syntax. An atom is an expression of the form  (1, . . . , ), where  is a symbol to denote an
-ary ontology or built-in predicate, i.e. a pre-interpreted predicate like the Jaccard similarity
(JaccSim). Each  is either a variable or a constant, which can be in turn a value or an entity, the
latter used to denote a real-world object. We impose that when  is a built-in predicate, constants
occurring in  (1, . . . , ) are only values. A ground atom is an atom with no variables.</p>
      <p>A conjunction () of atoms is an expression 1(1) ∧ . . . ∧ (), where each  ( ) is
an atom such that each variable in the tuple  of terms is among those in the tuple  of variables.</p>
      <p>An ontology  is a pair ( , ), consisting of a TBox  and a ABox . The TBox is a finite
set of tuple-generating dependencies (tgds) and equality-generating dependencies (egds).</p>
      <p>A tgd is a formula of the form:</p>
      <p>
        ∀ (() → ∃  (, )),
where () and  (, ) are conjunctions of atoms, such that  and  have no variables in
common and  (, ) is built-in free and, for simplicity, constant-free. As in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], we assume that
all variables in  appear in (), but not necessarily in  (, ). We call () the body of the
tgd, and  (, ) the head of it.
      </p>
      <p>An egd is a formula of the form:</p>
      <p>∀ (() →  = ),
where () is a conjunction of atoms and  and  are distinct variables occurring in (), such
that either both  and  are entity-variables (in which case we have an entity-egd) or both  and 
are value-variables (in which case we have a value-egd). We call () the body of the egd.</p>
      <p>In the examples, for simplicity, we will omit the universal quantification in tgds and egds.</p>
      <sec id="sec-2-1">
        <title>Example 1. Let  be the TBox consisting of the rules:</title>
        <p>(1) Name(1, 1) ∧ Name(2, 2) ∧ JaccSim(1, 2, 0.7) → 1 = 2
(2) Name(, 1) ∧ Name(, 2) → 1 = 2
(3) HPhone(, 1) ∧ HPhone(, 2) → 1 = 2
(4) HPhone(1,  ) ∧ HPhone(2,  ) → SameHouse(1, 2,  )</p>
        <p>Here 1, 2,  are entity-variables, i.e., occur in predicate arguments ranging over entities,
whereas 1, 2, 1, 2,  are value-variables, i.e., occur in predicate arguments ranging over
values. The predicates have the meaning suggested by their names. In particular, the predicate
Name maintains the individual’s name, HPhone stores their home phone contact, whereas
SameHouse associates individuals living in the same house with their phone number. Each of
the four rules makes an assertion about the predicates. In particular, the first rule ( 1) states that
if the Jaccard similarity of two names is higher then 0.7, then these names are associated to the
same individual. The TBox also says that everyone can have only one name (2) and only one
landline phone number (3), and that two individuals with the same landline phone number live
in the same house (4).</p>
        <p>The ABox  of an ontology  is a finite set of ground atoms of the form  (1, . . . , ) where
each  is an entity or a value.</p>
      </sec>
      <sec id="sec-2-2">
        <title>Example 2. Let  be the ABox consisting of the atoms</title>
        <p>(1) Name(Doe1, John Doe), (2) HPhone(Doe1, 358)
(3) Name(Doe2, Johnny Doe), (4) HPhone(Doe2, 635)
(5) Name(Doe3, Mary Doe), (6) HPhone(Doe3, 358)</p>
        <p>In words, the ABox  specifies that Doe1 has name John Doe and home phone number
358, Doe2 has name Johnny Doe and home phone number 635, Doe3 has name Mary Doe
and phone number 358.</p>
        <p>Semantics. We assume to have countably infinite many entity-nulls and value-nulls (note that
we consider generic tgds, i.e. possibly having existential variables in the rule head, even though,
for space limits we do not provide examples of this kind). The semantics of the ontology is given
using special ABoxes, called ontology instances, whose ground atoms have components that are
either equivalence classes of entities and entity-nulls, which we call E-sets, or non-empty sets of
values and value-nulls, which we call V-sets.</p>
        <p>
          Ontology Instance (Definition 1 of [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]). An instance ℐ for an ontology  w.r.t. an equivalence
relation ∼ is a set of facts  (1, . . . , ) such that  is a -ary predicate in , and each  is
either an E-set w.r.t. ∼ or a V-set.
        </p>
        <p>Example 3. Let  = ( , ) be an ontology such that  and  are as in Example 1 and in
Example 2, respectively. Consider the following set ℐ of facts.
(1) Name([Doe1, Doe2], {John Doe, Johnny Doe}) (2) HPhone([Doe1, Doe2], {358, 635})
(3) Name([Doe3], {Mary Doe}) (4) HPhone([Doe3], {358})
(5) SameHouse([Doe1, Doe2], [Doe3]) (6) SameHouse([Doe3], [Doe1, Doe2])
ℐ is an instance for  w.r.t. the equivalence relation ∼ over the set {Doe1, Doe2, Doe3} such
that Doe1 ∼ Doe2, i.e. Doe1 and Doe2 are in the same equivalence class and Doe3 is the only
element of another obviously disjoint equivalence class.</p>
        <p>
          To define the notions of satisfaction of tgds and egds by an instance, we first introduce the
notion of an assignment from a conjunction () of atoms to an instance ℐ for an ontology .
Assignment (Definition 3 of [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]). An assignment from a conjunction () of atoms to an instance
ℐ is a mapping  from the variables and values in () to E-sets and V-sets of ℐ such that
• each entity-variable is mapped to an E-set;
• different occurrences of a value-variable are mapped to V-sets with non-empty intersection;
• each value  is mapped to a V-set  , such that  ∈  ;
• for each atom  (, , ) of (), where  is a variable,  is an entity and  is a value, ℐ
contains a fact of the form  ( (), [],  ()) (the definition generalizes in the obvious way for
atoms of different form).
        </p>
        <p>Example 4. Let ℐ be the instance in Example 3. A possible assignment  from the body of rule
(4) of Example 1 to ℐ is given below:</p>
        <sec id="sec-2-2-1">
          <title>We are now ready to define the semantics of tgds and egds.</title>
          <p>
            Semantics of tgds (Definition 4 of [
            <xref ref-type="bibr" rid="ref3">3</xref>
            ]). An instance ℐ for an ontology  satisfies a tgd
∀(() → ∃ (, )) if for each assignment  from () to ℐ there is an assignment  ′ from
 (, ) to ℐ such that, for each  in 
•  () =  ′(), if  is an entity-variable
• the intersection of V-sets assigned by  to each occurrence of  in () is contained in the
intersection of V-sets assigned by  ′ to each occurrence of  in  (, ), if  is a value-variable
Example 5. Let ℐ be the instance in Example 3 and (4) be the tgd in Example 1. Let  be an
assignment from the body of (4) to ℐ and let  ′ be an assignment from the head of (4) to ℐ as
described below:
Since  is the only assignment from the body of (4) to ℐ, we conclude that ℐ satisfies (4).
Semantics of egds (Definition 4 of [
            <xref ref-type="bibr" rid="ref3">3</xref>
            ]). An instance ℐ for an ontology  satisfies an egd
∀(() →  = ) if each assignment  from () to ℐ is such that  () =  ()
          </p>
          <p>Note that according to the above definition, in every assignment () to ℐ all occurrences of 
and  must be mapped to the same set, for an egd to be satisfied by an ontology instance.
Example 6. Let ℐ be the instance in Example 3 and (3) be the egd in Example 1. Let  be an
assignment from the body of (3) to ℐ as described below:
The assignment  trivially enjoys the conditions of the definition of egd satisfaction. It is easy to
see that the same holds for all assignments from the body of (3) to ℐ, and thus we conclude that
ℐ satisfies (3).</p>
        </sec>
        <sec id="sec-2-2-2">
          <title>Finally, we define when an instance is a solution for an ontology.</title>
          <p>
            Ontology Solution (Definition 5 of [
            <xref ref-type="bibr" rid="ref3">3</xref>
            ]). Let  = ( , ) be an ontology and ℐ be an instance.
ℐ is a solution for  if ℐ satisfies  and , i.e.:
• ℐ satisfies  if ℐ satisfies every tgd and egd in  .
• ℐ satisfies  if it satisfies every ground atom  (1, . . . , ) in . A ground atom is
satisfied if there is a fact  (1, . . . , ) in ℐ such that  ∈ , for 1 ≤  ≤ .
          </p>
          <p>
            Among all ontology solutions we are interested to the so-called universal solutions, which
exhibit special properties with respect to the task of query answering (see, e.g., [
            <xref ref-type="bibr" rid="ref14 ref15 ref5">5, 14, 15</xref>
            ]).
Universal Solution (Definitions 8 of [
            <xref ref-type="bibr" rid="ref3">3</xref>
            ]). A solution  for an ontology  is universal if, for
every solution ℐ for , there is a homomorphism ℎ :  → ℐ.
          </p>
          <p>
            The notion of homomorphism used in the previous definition is tailored to our framework
and suitably considers E-sets and V-sets occurring in instances. Informally, for an instance ℐ,
we denote with under (ℐ) the set containing all entities, entity-nulls, values, and value-nulls
occurring in ℐ. Then, let ℐ1 and ℐ2 be two instances, an homomorphism ℎ : ℐ1 → ℐ2 is a
structure-preserving mapping from under (ℐ1) to under (ℐ2) (we refer to Definition 7 of [
            <xref ref-type="bibr" rid="ref3">3</xref>
            ] for
further details).
          </p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>3. Query Answering</title>
      <p>A conjunctive query (CQ) () is a formula ∃ (, ), where (, ) is a built-in free
conjunction of atoms.</p>
      <p>Answers to CQs. The answer ℐ to a CQ (1, . . . , ) on an instance ℐ is the set of all tuples
⟨1, . . . , ⟩ such that there is an assignment  from  to ℐ for which:
•  =  (), if  is an entity-variable;
• , is the intersection of the V-sets assigned to the various occurrences of , if  is a
value-variable.</p>
      <p>Example 7. Below we give an example of query, assignment  from the query to the instance ℐ
of Example 3, and answers to the query.</p>
      <p>It is easy to see that ℐ = {⟨{358}⟩}.</p>
      <p>
        When querying an ontology , we are interested in reasoning over all solutions for . We
thus adapt the classical notion of certain answers to our framework. To this aim, we need some
preliminary definitions. A tuple  = ⟨1, . . . , ⟩ is null-free if each  is non-empty and
contains no nulls. Let  = ⟨1, . . . , ⟩ and  ′ = ⟨1′ , . . . , ′⟩ be two tuples of E-sets and
V-sets, we say that  ′ dominates  , denoted  ≤  ′, if  ⊆ ′, for all 1 ≤  ≤ .
Certain Answers (Definition 9 of [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]). A null-free tuple  of E-sets and V-sets is a certain
answer to a CQ  w.r.t. an ontology  if
1. for every solution ℐ for , there is a tuple  ′ ∈ ℐ such that  ≤  ′
2. there is no null-free tuple  ′ that satisfies (1) and  &lt;  ′
We write (, ) to denote the set of certain answers to  w.r.t.
      </p>
      <p>We are now able to present the main result of this section, which asserts that universal solutions
can be used to compute certain answers to CQs in our framework.</p>
      <p>
        Compute Certain Answers over a Universal Solution (Theorem 1 of [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]). Let  be a CQ, let 
be an ontology, and let  be a universal solution for . Then (, ) =  ↓ .
      </p>
      <p>
        The operator ↓ first eliminates nulls occurring in  , then, in the resulting set, it eliminates
tuples that are dominated by other tuples (see [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] for the details).
      </p>
    </sec>
    <sec id="sec-4">
      <title>4. Computing Universal Solution</title>
      <p>
        In order to compute the universal solution that can be used to obtain the certain answers to
CQs, we adapt here the well-known notion of restricted chase [
        <xref ref-type="bibr" rid="ref15 ref16 ref4 ref5">4, 16, 5, 15</xref>
        ] to our framework.
Intuitively, given an ontology  = ( , ), we define a procedure that starts from an instance for
 “specular” to the ABox , which we call the base instance of , and incrementally constructs
an instance that satisfies the tgds and the egds of the TBox  .
      </p>
      <p>Example 8. Let  = ( , ) be an ontology such that  and  are as in Example 1 and in
Example 2, respectively. The base instance of  is as follows:
(1) Name([Doe1], {John Doe}) (2) Name([Doe2], {Johnny Doe})
(3) HPhone([Doe1], {358}) (4) HPhone([Doe2], {635})
(5) Name([Doe3], {Mary Doe}) (6) HPhone([Doe3], {358})</p>
      <p>A universal solution for  is obtained by iteratively applying three chase rules, one for each
kind of rule that may occur in  , as long as they are triggered in the (current) instance.
(i) entity-egd chase rule. An entity-egd ∀(() →  = ) is triggered in an instance ℐ if there
is an assignment  from () to ℐ such that  () ̸=  (). Then, the chase substitutes  () and
 () everywhere ℐ with  () ∪  ().</p>
      <p>Example 9. Let ℐ0 be the starting instance in Example 8 and (1) be the e-egd Name(1, 1) ∧
Name(2, 2) ∧ JaccSim(1, 2, 0.7) → 1 = 2. The egd (1) is triggered in ℐ0 because of
(1),(2). Its application generates ℐ1, which is as follows:
(7) Name([Doe1, Doe2], {John Doe}) (8) Name([Doe1, Doe2], {Johnny Doe})
(9) HPhone([Doe1, Doe2], {358}) (10) HPhone([Doe1, Doe2], {635})
(5) Name([Doe3], {Mary Doe}) (6) HPhone([Doe3], {358})
ℐ1 is obtained from ℐ0 by replacing everywhere [Doe1] and [Doe2] with [Doe1, Doe2].
(ii) value-egd chase rule. Similarly to the entity-edg case, when a value-egd forces two different
sets of values to be equated, we take the union of the two sets and modify the instance accordingly.
Example 10. Let ℐ1 be the instance in Example 9 and (3) be the value-egd HPhone(, 1) ∧
HPhone(, 2) → 1 = 2. The egd (3) is triggered in ℐ1 because of (9),(10). Its application
generates ℐ2, shown below:
(7) Name([Doe1, Doe2], {John Doe}) (8) Name([Doe1, Doe2], {Johnny Doe})
(11) HPhone([Doe1, Doe2], {358, 635}) (6) HPhone([Doe3], {358})
(5) Name([Doe3], {Mary Doe})
ℐ2 is obtained from ℐ1 by replacing in 9 and 10 {358} and {635} with their union
{358, 635}.
(iii) tgd chase rule. A tgd ∀ (() → ∃ (, )) is triggered in an instance ℐ if there is an
assignment  from () to ℐ such that there is no assignment  ′ from  (, ) to ℐ, as required
by the definition of tgd satisfaction. Then, the chase adds new facts to ℐ so that  ′ does exist in
the obtained instance.</p>
      <p>Example 11. Let ℐ2 be the instance in Example 10 and (4) be the tgd HPhone(1,  ) ∧
HPhone(2,  ) → SameHouse(1, 2,  ). The tgd (4) is triggered in ℐ2 because of (11),(6).
Its application generates ℐ3, shown below:
(7) Name([Doe1, Doe2], {John Doe}) (8) Name([Doe1, Doe2], {Johnny Doe})
(11) HPhone([Doe1, Doe2], {358, 635}) (6) HPhone([Doe3], {358})
(5) Name([Doe3], {Mary Doe}) (12) SameHouse([Doe1, Doe2], [Doe3], {358})
ℐ3 is obtained by adding SameHouse([Doe1, Doe2], [Doe3], {358}) to ℐ2.</p>
      <p>The chase procedure terminates when it produces an instance for which no rule in the TBox is
applicable. One such sequence  = ℐ0, ℐ1, . . . , ℐ is called a finite chase and the result of the
chase, chase(,  ), coincides with ℐ.</p>
      <p>
        The result of the chase is an Universal Solution (Theorem 2 of [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]). If  is an ontology and 
is a finite chase for , then chase(,  ) is a universal solution for .
      </p>
      <p>Given the ontology composed by the TBox in Example 1 and the ABox in Example 2, it is
possible to construct a finite chase sequence ℐ0, ℐ1, ℐ2, ℐ3, . . . ℐ, where ℐ0, ℐ1, ℐ2, ℐ3 are as in
Examples 8–11 and ℐ is the universal solution of Example 3 (and thus ℐ coincides with the set
of certain answers to ).</p>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusion and Future Works</title>
      <p>
        In this paper we reported on a principled approach to query answering and entity resolution that
may be relevant to several areas, like Data Exchange [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] and Integration [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], or Ontology-based
Data Access [
        <xref ref-type="bibr" rid="ref18">18, 19</xref>
        ] considered the central role played by tgds and egds in those contexts,
but also in Information Extraction [20, 21, 22] or in general for data-intensive tasks [23]. Our
investigation is however still initial and several aspects need further study. Although not explicitly
shown in this document, tgds could give rise to an infinite universal solution because of the
possible infinite creation of existentials. We left open how to obtain a universal solution from a
non-terminating chase sequence. Solving this case would extend our approach even to settings
where all universal solutions are infinite. Though not fully materializable, the infinite chase is
generally considered an important theoretical tool to show properties of query answering, such
as rewritability [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], possibly combined with partial materialization of the chase result [24].
Morover our framework intentionally considers expressive tgds and egds, in order to encompass
several popular ontology languages. It is however well-known that without suitable restrictions
query answering (and reasoning in general) is undecidable [25, 26]. It is thus crucial to identify
conditions ensuring decidability, and possibly tractability, of query answering.
      </p>
    </sec>
    <sec id="sec-6">
      <title>Acknowledgments</title>
      <p>Scafoglieri’s research was entirely and exclusively supported by PNRR MUR project
PE0000013FAIR. Lembo’s research was supported by EU ICT-48 2020 project TAILOR (No. 952215), EU
ERA-NET Cofund ICT-AGRI-FOOD project ADCATER (No. 40705), PNRR MUR project
PE0000013-FAIR and the MUR PRIN 2022LA8XBH project Polar (POLicy specificAtion and
enfoRcement for privacy-enhanced data management).
logics, in: W. Faber, A. Paschke (Eds.), Reasoning Web. Semantic Technologies for
Intelligent Data Access – 11th Int. Summer School Tutorial Lectures (RW), volume 9203,
2015, pp. 218–307.
[19] D. Calvanese, G. De Giacomo, D. Lembo, M. Lenzerini, R. Rosati, Ontology-based data
access and integration, in: L. Liu, M. T. Özsu (Eds.), Encyclopedia of Database Systems,
Second Edition, Springer, 2018.
[20] D. Lembo, Y. Li, L. Popa, K. Qian, F. Scafoglieri, Ontology mediated information extraction
with MASTRO SYSTEM-T, in: Proceedings of the ISWC 2020 Demos and Industry
Tracks, volume 2721 of CEUR Electronic Workshop Proceedings, http://ceur-ws.org/,
CEUR-WS.org, 2020, pp. 256–261.
[21] D. Lembo, F. M. Scafoglieri, Ontology-based document spanning systems for
information extraction, Int. J. Semantic Comput. 14 (2020) 3–26. URL: https://doi.org/10.1142/
S1793351X20400012. doi:10.1142/S1793351X20400012.
[22] R. Fagin, B. Kimelfeld, F. Reiss, S. Vansummeren, Document spanners: A formal approach
to information extraction, Journal of the ACM (JACM) 62 (2015) 1–51.
[23] V. Christophides, V. Efthymiou, T. Palpanas, G. Papadakis, K. Stefanidis, An overview
of end-to-end entity resolution for big data, ACM Computing Surveys (CSUR) 53 (2020)
1–42.
[24] C. Lutz, D. Toman, F. Wolter, Conjunctive query answering in the description logic ℰ ℒ
using a relational database system, in: Proc. of the 21st Int. Joint Conf. on Artificial
Intelligence (IJCAI), 2009, pp. 2070–2075.
[25] C. Beeri, M. Y. Vardi, The implication problem for data dependencies, in: Proc. of the 8th
Coll. on Automata, Languages and Programming (ICALP), volume 115 of Lecture Notes in
Computer Science, Springer, 1981, pp. 73–85.
[26] A. Calì, D. Lembo, R. Rosati, On the decidability and complexity of query answering over
inconsistent and incomplete databases, in: Proc. of the 22nd ACM SIGACT SIGMOD
SIGART Symp. on Principles of Database Systems (PODS), 2003, pp. 260–271.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>O.</given-names>
            <surname>Benjelloun</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Garcia-Molina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Menestrina</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Q.</given-names>
            <surname>Su</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. E.</given-names>
            <surname>Whang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Widom</surname>
          </string-name>
          ,
          <article-title>Swoosh: a generic approach to entity resolution</article-title>
          ,
          <source>Very Large Database J</source>
          .
          <volume>18</volume>
          (
          <year>2009</year>
          )
          <fpage>255</fpage>
          -
          <lpage>276</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>G.</given-names>
            <surname>Papadakis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Ioannou</surname>
          </string-name>
          , E. Thanos, T. Palpanas,
          <source>The Four Generations of Entity Resolution, Synthesis Lectures on Data Management</source>
          , Morgan &amp; Claypool Publishers,
          <year>2021</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>R.</given-names>
            <surname>Fagin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. G.</given-names>
            <surname>Kolaitis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Lembo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Popa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Scafoglieri</surname>
          </string-name>
          ,
          <article-title>A Framework for Combining Entity Resolution and Query Answering in Knowledge Bases</article-title>
          ,
          <source>in: Proceedings of the 20th International Conference on Principles of Knowledge Representation and Reasoning</source>
          ,
          <year>2023</year>
          , pp.
          <fpage>229</fpage>
          -
          <lpage>239</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>C.</given-names>
            <surname>Beeri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. Y.</given-names>
            <surname>Vardi</surname>
          </string-name>
          ,
          <article-title>A proof procedure for data dependencies</article-title>
          ,
          <source>J. of the ACM</source>
          <volume>31</volume>
          (
          <year>1984</year>
          )
          <fpage>718</fpage>
          -
          <lpage>741</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>R.</given-names>
            <surname>Fagin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. G.</given-names>
            <surname>Kolaitis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. J.</given-names>
            <surname>Miller</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Popa</surname>
          </string-name>
          ,
          <article-title>Data exchange: Semantics and query answering</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>336</volume>
          (
          <year>2005</year>
          )
          <fpage>89</fpage>
          -
          <lpage>124</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>J.</given-names>
            <surname>Baget</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Leclère</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mugnier</surname>
          </string-name>
          , E. Salvat,
          <article-title>On rules with existential variables: Walking the decidability line</article-title>
          ,
          <source>Artificial Intelligence</source>
          <volume>175</volume>
          (
          <year>2011</year>
          )
          <fpage>1620</fpage>
          -
          <lpage>1654</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>M.</given-names>
            <surname>Krötzsch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Marx</surname>
          </string-name>
          ,
          <string-name>
            <surname>S. Rudolph,</surname>
          </string-name>
          <article-title>The power of the terminating chase (invited talk)</article-title>
          ,
          <source>in: Proc. of the 22nd Int. Conf. on Database Theory (ICDT)</source>
          , volume
          <volume>127</volume>
          of LIPIcs,
          <year>2019</year>
          , pp.
          <volume>3</volume>
          :
          <fpage>1</fpage>
          -
          <lpage>3</lpage>
          :
          <fpage>17</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>F.</given-names>
            <surname>Baader</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>McGuinness</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Nardi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. F.</given-names>
            <surname>Patel-Schneider</surname>
          </string-name>
          (Eds.),
          <source>The Description Logic Handbook: Theory, Implementation and Applications</source>
          , 2nd ed., Cambridge University Press,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>A.</given-names>
            <surname>Calì</surname>
          </string-name>
          , G. Gottlob,
          <string-name>
            <given-names>T.</given-names>
            <surname>Lukasiewicz</surname>
          </string-name>
          ,
          <article-title>A general datalog-based framework for tractable query answering over ontologies</article-title>
          ,
          <source>J. of Web Semantics</source>
          <volume>14</volume>
          (
          <year>2012</year>
          )
          <fpage>57</fpage>
          -
          <lpage>83</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Bienvenu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Cima</surname>
          </string-name>
          ,
          <string-name>
            <surname>V.</surname>
          </string-name>
          <article-title>Gutieérrez-Basulto, LACE: A logical approach to collective entity resolution</article-title>
          ,
          <source>in: Proc. of the 41st ACM SIGACT SIGMOD SIGAI Symp. on Principles of Database Systems (PODS)</source>
          ,
          <year>2022</year>
          , pp.
          <fpage>379</fpage>
          -
          <lpage>391</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>L. E.</given-names>
            <surname>Bertossi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Kolahi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. V. S.</given-names>
            <surname>Lakshmanan</surname>
          </string-name>
          ,
          <article-title>Data cleaning and query answering with matching dependencies and matching functions</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>52</volume>
          (
          <year>2013</year>
          )
          <fpage>441</fpage>
          -
          <lpage>482</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>W.</given-names>
            <surname>Fan</surname>
          </string-name>
          ,
          <article-title>Dependencies revisited for improving data quality</article-title>
          ,
          <source>in: Proc. of the 27th ACM SIGACT SIGMOD SIGART Symp. on Principles of Database Systems (PODS)</source>
          ,
          <year>2008</year>
          , pp.
          <fpage>159</fpage>
          -
          <lpage>170</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>K.</given-names>
            <surname>Devlin</surname>
          </string-name>
          , Sets, functions, and
          <article-title>logic: an introduction to abstract mathematics, Chapman</article-title>
          and Hall/CRC,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>A.</given-names>
            <surname>Calì</surname>
          </string-name>
          , G. Gottlob,
          <string-name>
            <surname>M.</surname>
          </string-name>
          <article-title>Kifer, Taming the infinite chase: Query answering under expressive relational constraints</article-title>
          ,
          <source>J. of Artificial Intelligence Research</source>
          <volume>48</volume>
          (
          <year>2013</year>
          )
          <fpage>115</fpage>
          -
          <lpage>174</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <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>R.</given-names>
            <surname>Rosati</surname>
          </string-name>
          ,
          <article-title>Tractable reasoning and efcfiient query answering in description logics: The DL-Lite family</article-title>
          ,
          <source>J. of Automated Reasoning</source>
          <volume>39</volume>
          (
          <year>2007</year>
          )
          <fpage>385</fpage>
          -
          <lpage>429</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>D. S.</given-names>
            <surname>Johnson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. C.</given-names>
            <surname>Klug</surname>
          </string-name>
          ,
          <article-title>Testing containment of conjunctive queries under functional and inclusion dependencies</article-title>
          ,
          <source>J. of Computer and System Sciences</source>
          <volume>28</volume>
          (
          <year>1984</year>
          )
          <fpage>167</fpage>
          -
          <lpage>189</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <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>
          ,
          <string-name>
            <given-names>Z. G.</given-names>
            <surname>Ives</surname>
          </string-name>
          , Principles of Data Integration, Morgan Kaufmann,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>M.</given-names>
            <surname>Bienvenu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Ortiz</surname>
          </string-name>
          ,
          <article-title>Ontology-mediated query answering with data-tractable description</article-title>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>