<!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>Interfaces to Data, Beyond Views</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Michael Benedikt</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Oxford University</institution>
          ,
          <country country="UK">United Kingdom</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>We discuss diferent ways in which we can define interfaces to data, going beyond standard view definitions. One is based on specifying a query, and asking for the views within a class that give the minimal information that sufice to support the query. Another is based on specifying which instances should be indistinguishable to users via the interface.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>
        How can we define an interface to a relational structure? In databases, a standard means is via
views – declarative queries whose output is made available to users as another structure: in the
case of relational database queries, a table. A huge amount of study has gone into the properties
of views and view languages. See e.g. [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>
        There are other mechanisms for interfacing with data that difer from views. At certain times
in the past, defining more flexible notions of “datasource capabilities” – one aspect of how
queries can interface with a data source – represented quite a hot topic in data management [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
One kind of data interface that has received continued attention are access methods [
        <xref ref-type="bibr" rid="ref3 ref4 ref5 ref6 ref7">3, 4, 5, 6, 7</xref>
        ].
Access methods give a functional interface allowing a user to look up matching rows in a table,
providing as input a subset of the attributes. They restrict access in a mannar orthogonal to
views, but one can add to their expressiveness by combining them with integrity constraints [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]
or with views [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Or one can limit the expressiveness further by adding number restrictions on
access outputs [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. Cautis et. al [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] give an intriguing formalism for defining “infinite sets of
views”, an interface limitation that is incomparable to access restrictions.
      </p>
      <p>
        Since this kind of research has diminished over the last few years, in this article we want to
overview a couple projects that might stimulate new thinking about interfaces to data beyond
views, and how one might measure the expressiveness of interfaces. This will be based on work
published previously [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], and also connected to work that is about to appear [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. Distributed schemas and classical views</title>
      <p>
        We first review some standard definitions in relational databases [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. A schema consists of a
ifnite set of relation names, each with an associated arity (a non-negative number). An instance
of a schema is an assignment of each relation name  in the schema of arity  to a collection
(finite or infinite) of -tuples of elements. We will often use ℐ for a generic instance. The active
domain of an instance ℐ, denoted adom(ℐ), is the set of elements occurring in some tuple of
some ℐ().
      </p>
      <p>
        An -ary query is a function from instances of a fixed schema  to -tuples. We assume the
usual semantics for active-domain first-order logic, given by a relation ℐ |=  for  a sentence.
A Conjunctive Query (CQ) is a logical formula of the form ∃y. ⋀︀  where  are atoms over the
schema. A Union of CQs (UCQ) is a disjunction of CQs where the free variables of each disjunct
are the same. UCQs can be extended to relational algebra, the standard algebraic presentation
of first-order relational queries: queries are build up from symbols for each relation name by
union, diference, selection, and product [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. Relational algebra queries can be expressed in
ifrst-order logic. Unlike arbitrary first-order logic formulas, whose truth value may depend on
an additional “universe” for the range of quantification, relational algebra queries are domain
independent: the output on an instance depends on the interpretation of each relation symbol.
A view is just a pairing of an -ary query with an -ary relation that names its output. Based
on the kind of query, we can talk about a CQ view, a relational algebra view, etc.
      </p>
      <p>We now come to some definitions that are specific to distributed query processing or data
integration. A distributed schema (d-schema)  consists of a finite set of sources Srcs, with each
source s associated with a local schema s.</p>
      <p>A query over a d-schema is simply a query over the relations occurring in some local schema.
A distributed view (d-view) assigns to each local schema a set of views over that schema. Thus a
d-view describes an interface where each local source exports some information.
Example 1. We have a d-schema consisting of two sources, a data source representing
papers submitted to VLDB VLDB(paperid, title, authorid, authorname) and another source with
relation SIGMOD with the same attributes, containing papers submitted to SIGMOD.</p>
      <p>A trivial -view might export the entire content of each relation. Another -view might have
the VLDB source export the projection on paperid, and the SIGMOD source export authorids.
Note that a query giving the intersection of VLDB and SIGMOD is not a d-view, since a d-view
consists of views that are local to a source. ▷</p>
    </sec>
    <sec id="sec-3">
      <title>3. Minimal information interfaces</title>
      <p>
        We are ready to look at our first non-standard means of defining an interface, from [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. Rather
than having the data designer explicitly provide views, the idea is that they only specify a
query, and then ask for the minimal information views (within a certain class) that can support
answering that query. This is particularly interesting in the distributed setting. We want to
formalize the notion of a set of views being useful for answering a query, and having minimal
information among those that are useful. We use Segoufin and Vianu’s notion of determinacy,
later developed jointly with Nash [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
      </p>
      <p>Definition 1. Two d-instances  and ′ are indistinguishable by a d-view  (or just
indistinguishable) if  () =  (′) for each view  ∈ .</p>
      <p>Since each view  ∈ s is defined only using relation names occurring in s, we can equivalently
say that 1 and 2 are -indistinguishable if  (1s) =  (2s) for each  ∈ s for each source
s.</p>
      <p>Definition 2. A d-view  determines a query  at a d-instance  if (′) = () for each
′ that is -indistinguishable from .</p>
      <p>The d-view  is useful for  if  determines  on every d-instance (for short, just “ determines
”).</p>
      <p>We are now ready to formalize the idea of a d-view that is useful for  but reveals as little as
possible:
Definition 3 (Minimally informative useful views). Given a class of views  and a query
, we say that a d-view  is a minimally informative useful d-view for  within  if  is useful
for  and, for any other d-view ′ useful for  based on views in , ′ determines the view
definition of each view in .</p>
      <p>Example 2. Returning to Ex. 1, consider a query  asking if there is a title and author name
common to SIGMOD and VLDB, a possible double-submission:
∃paperid title authorid authorname authorid′ paperid′</p>
      <p>VLDB(paperid, title, authorid, authorname)∧</p>
      <p>SIGMOD(paperid′, title, authorid′, authorname)</p>
      <p>Obviously there are many useful -views for : we could export all information from each
source, which be more than suficient to answer . But intuitively there is an obvious candidate
for the minimally informative useful view. From the VLDB source we should export
∃ authorid authorname</p>
      <p>VLDB(paperid, title, authorid, authorname)
and similarly for SIGMOD. That is, to minimally support the query  that joins across sources,
we should project out everything but the variables that cross sources.</p>
      <p>This is called the canonical d-view of  with respect to the distributed schema. It will follow
from the results mentioned in the next section that this really is the minimally-informative
dview for this example. From minimally-informativeness, it follows that if the interface designers
want to support this double-submission query with any d-view, they will need to reveal all the
paper titles submitted to each conference. ▷</p>
      <p>
        All of these definitions can be additionally parameterized by integrity constraints Σ . Given
d-instance  satisfying Σ and a d-view ,  determines a query  over the d-schema at 
relative to Σ if: for every ′ satisfying Σ that is -indistinguishable from , (′) = ().
We say that  is useful for a query  relative to Σ if it determines  on every d-instance
satisfying Σ . In the results in the next section we will assume that any integrity constraints are
traditional database constraints, like Tuple-Generating Dependencies [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. In the distributed
schema setting, our positive results will usually assume that constraints are local: each constraint
involves relations on a single source.
      </p>
    </sec>
    <sec id="sec-4">
      <title>4. Results on interfaces via minimally informative views</title>
      <p>
        We now present some results from [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] concerning when minimally informative views exist.
Theorem 3. [Minimally informative d-views exist] [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] For any query , there are minimally
informative d-views. The same holds in the presence of local constraints.
      </p>
      <p>
        The minimally informative d-view is not given constructively, but rather is defined via a
Myhill-Nerode style equivalence, which we will discuss further in Section 5. Of course if  is
an arbitrary query, we cannot say much about what the minimally informative views are. But
in the case where  is a CQ, we can get a very simple minimally informative view.
Theorem 4. [Minimally informative relational algebra d-views exist for CQs] [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] For any
conjunctive query , there are minimally informative d-views, computable from  and expressible in
relational algebra. The same holds in the presence of local constraints.
      </p>
      <p>
        Notice here that we mentioned relational algebra, rather than CQ or UCQ. Surprisingly, we
may need to use relational algebra features beyond UCQs:
Theorem 5. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] There are CQs  where the minimally informative d-views are not CQs or even
UCQs.
      </p>
      <p>Thus in particular there are queries where the minimally informative d-view is not the canonical
d-view.</p>
      <p>Example 6. Suppose we have two sources one with ternary relation , the other with unary
relation . Consider the conjunctive query :</p>
      <p>∃1, 2, .(1, 2, ) ∧ (, 2, 1) ∧ (1) ∧ (2)</p>
      <p>The canonical view at the  source is {1, 2|∃.(1, 2, ) ∧ (, 2, 1)} and at the 
source it is {1, 2|(1) ∧ (2)}: these are the “obvious” views to support the query. But
they are not the minimally informative views!</p>
      <p>Consider the views formed by replacing the view on  with the view exporting the pairs
1, 2 such that</p>
      <p>(∃.(1, 2, ) ∧ (, 2, 1)) ∨ (∃.(2, 1, ) ∧ (, 1, 2))
We reveal to an external user that either the pair 1, 2 or its reverse satisfies a certain pattern.
This is strictly less informative than the canonical views, which reveal which of the two cases
holds. But the reader can check that it is suficient to answer the query . ▷</p>
      <p>
        What about d-views that are minimally informative within the class of CQs? These always
exist as well, and it turns out that after minimizing  (removing redundant conjuncts), they are
indeed the canonical ones:
Theorem 7 (Minimally informative CQ views exist). [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] Let  a CQ that has no
redundant conjuncts. Then the canonical d-view of  is minimally informative useful within the class of
CQ views. The same holds in the presence of local constraints.
      </p>
      <p>Finally, notice that in Theorem 3 we required any integrity constraints to be local. Arguably
the simplest kind of non-local constraint is a replication constraint, saying that a relation 1 in
source 1 is identical to a relation 2 in source 2.</p>
      <p>
        Theorem 8. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] There is a CQ  and a single replication constraint where no minimally
informative d-view exists.
      </p>
      <p>
        [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] shows that a weaker notion of minimally informative view exists in the presence of
replication constraints, based on the “amount of disclosure”.
      </p>
    </sec>
    <sec id="sec-5">
      <title>5. Indistinguishability relations</title>
      <p>
        We now look at another way to define interfaces to data, based very roughly on work in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
An indistinguishabiity relation is an equivalence relation on instances of a schema. Clearly any
kind of classical view gives an indistinguishability relation: two instances are indistinguishable
if the views produce the same output. But it is natural to allow a data designer to define an
interface by simply declaring which pairs of databases should be indistinguishable, and then
let the system develop a method of querying – e.g. through translation to appropriate views.
Indistinguishability relations play a role in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], where often views are constructed implicitly
via indistinguishability. For example, in the proof of Theorem 3 from the previous section, what
one actually shows is:
Theorem 9. For any query  over a d-schema, there are minimally informative d-views, with
each view given implicitly by an indistinguishability relation.
      </p>
      <p>This is what we referred to in the last section when we said that the minimally informative
views are given by a Myhill-Nerode style equivalence relation. We sketch the argument, since
it gives the idea of how to implicitly define a view via an indistinguishability relation. For a
source s in a d-schema, an s-context is an instance for each source other than s. Given a source
s and a query , we say two s-instances ℐ, ℐ′ are (s, )-equivalent if for any s-context ,
(ℐ, ) |=  ⇔ (ℐ′, ) |= 
We say two d-instances  and ′ are globally -equivalent if for each source , the restrictions
of  and ′ over source , are (s, )-equivalent.</p>
      <p>Global -equivalence is clearly an indistinguishability relation. It is also not dificult to see
that the corresponding d-view is a minimally informative useful d-view for  within the class
of all views:</p>
      <p>Now let us return to indistinguishability relations in general. It is particularly interesting to
look at indistinguishability relations defined by logical sentences. For a schema , let 2 denote
the vocabulary with two copies of each relation  in , denoted  and ′. Thus an instance
for 2 is a pair of instances for , one using the primed relations and one using the unprimed
relations. We write such a pair as (ℐ1, ℐ2). Thus 2 is the natural vocabulary for describing
relationships between structures.</p>
      <p>Definition 4. Let  be a domain independent first-order logic sentence over 2. We say that  is
a first-order logic indistinguishability relation if
•  defines a transitive relationship on pairs of instances: for any instances ℐ1, ℐ2, ℐ3
(ℐ1, ℐ2) |=  , and (ℐ2, ℐ3) |=  implies (ℐ1, ℐ3) |= 
•  is commutative: (ℐ1, ℐ2) |=  if and only if (ℐ2, ℐ1) |=  .</p>
      <p>•  is reflexive: for all ℐ1, (ℐ1, ℐ1) |=</p>
      <p>We can similarly relativize this to constraints Σ on :  need only define an equivalence relation
on structures satisfying Σ . We can look at indistinguishability relations over all instances for Σ , or
deal with sentences  that define an indistinguishability relation only on finite instances.</p>
      <p>
        The results in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] do not restrict to the finite case, and have several other deviations from
the formalism as we present it here. But as we explain below, many of the results apply to the
setting of finite instances.
      </p>
      <sec id="sec-5-1">
        <title>5.1. Indistinguishability relations and relational/nested relational views</title>
        <p>
          We mentioned that the obvious way to get an indistingushability relation is via views. And
if we use relational algebra views, we get a first-order logic indistinguishability relation. Let
Γ = { 1 . . .  } be a finite set of relational algebra views, or equivalently, active domain
formulas. We let  Γ be the ℐ2 sentence ⋀︀ ∀x [ (x) ↔  ′(x)]. Here, for any
domainindependent logical formula  over .  ′ is the formula formed by priming every relation. For
any such Γ ,  Γ is a first-order logic indistinguishability relation. We call this a relational algebra
view indistinguishability relation. We now describe a generalization of the notion of relational
algebra view to nested relations. We refer here to the notion of nested set in database theory
[
          <xref ref-type="bibr" rid="ref16 ref17 ref18">16, 17, 18</xref>
          ], and we can consider views given by the nested relational calculus. We will not
need the exact definitions of nested relational calculus here. The observation is that agreement
on nested relational views is expressible as a first-order logic sentence over 2: even though
we are dealing with nested sets, we do not need “higher order logic” for the corresponding
indistinguishability relation.
        </p>
        <p>Example 10. Let schema  consist of binary relation . Consider the 2 sentence:
∀ ∃′ ∀. [(, ) ↔ ′(′, )]∧</p>
        <p>∀′ ∃ ∀. [(, ) ↔ ′(′, )]</p>
        <p>This is a first-order logic indistinguishability relation. It states that every adjacency set of an
element in one instance is the adjacency set of a (possibly diferent) element in the other set.
Informally, the family of adjacency sets in the instances are the same.</p>
        <p>If schema  consists of a ternary relation  (, , ), in any instance ℐ containing  and ,
we can let ℐ (, ) be the ’s such that  (, , ) holds in ℐ. We let ℐ () be the set of sets
ℐ (, ) as  ranges over nodes in ℐ, for a given  in ℐ. And we let ℐ be the set of sets of sets
ℐ () as  ranges over nodes in ℐ. Then there is a first-order logic indistinguishability relation
corresponding to preserving the nested set ℐ . ▷</p>
        <p>In general, a -nested view indistinguishability relation is given by a -partitioned formula;
this an active domain first-order formula in which the free variables are partitioned into  sets.
We write such formulas  (x1; . . . ; x). In the binary relation example above, the partitioned
formula is just (; ), while in the ternary example it is  (; ; ). The definition of the nested
set and the equivalence relation corresponding to  (x1; . . . ; x) is given by induction on ,
generalizing the example.</p>
        <p>What kinds of first-order logic indistinguishability relations are there beyond nested relational
views? Over infinite models, it is easy to arrive at logic-based indistinguishability relations that
are not nested views.</p>
        <p>Example 11. Let our vocabulary have binary relations &lt; and let Σ state that &lt; is a dense linear
order. Let  be the sentence over 2 stating:
∃.  &lt;′  &lt;′  ∧ (∀.  &lt;′  &lt;′  →  &lt;  &lt; )]∧
∃.  &lt;  &lt;  ∧ (∀.  &lt;  &lt;  →  &lt;′  &lt;′ )]</p>
        <p>[∀.  &lt;  &lt;  →
[∀.  &lt;′  &lt;′  →
 says that every open interval (, ) in one dataset is the union of open intervals (, ) in the
other dataset, and vice versa. Then  is a logic-based indistinguishability relation. One can
show that it is not a -nested view for any .
▷
Note that we made use of an infinite linear order here.</p>
        <p>The following natural question is open:
Question 1. Is there a set of first-order integrity constraints and a first-order indistinguishability
relation that is not given by a -nested relation view over finite structures?</p>
        <p>
          A negative answer would be a kind of semantics-to syntax or preservation theorem over
ifnite structures, and only a few such results are known [
          <xref ref-type="bibr" rid="ref19">19</xref>
          ].
        </p>
      </sec>
      <sec id="sec-5-2">
        <title>5.2. Some results</title>
        <p>
          We present some of the results from [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] that could be interesting in the database context,
warning the reader that the terminology and the formalism here does not match that in [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ],
which uses classical model theory as a framework.
        </p>
        <p>
          It is not so dificult to show that the indistinguishability relations based on nested relational
views form a strict hierarchy:
Proposition 1. [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] For every  there are ( + 1) nested view indistinguishability relations that
are not given by  nested view indistinguishability relations.
        </p>
        <p>For separation, we could use generalizations of the adjacency-based equivalence relation in
Example 10: the set of adjacency sets of a binary relation, the set of sets of adjacency sets of a
ternary relation, etc.</p>
        <p>
          In [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] this is argued explicitly for general  only over infinite structures, but in the finite is
illustrated in the case of 2 vs. 1. To prove the separation, one uses dense structures. In fact, one
can show that this is necessary:
Theorem 12. [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] If  is a class of sparse finite structures (e.g. graphs excluding a minor) then
every equivalence relation given by a -nested view indistinguishability relation is equivalent to
one given by a relational algebra view indistinguishability relation.
        </p>
        <p>Example 13. Let us to the adjacency-based indistinguishability relation, the first one in Example
10. Suppose the datasources are restricted to be finite trees, where  is the child relation. We
can see that the only way two trees can have the same adjacency sets is if they are identical!
Thus, over trees, this equivalence relation is presented by a relational algebra view. ▷</p>
        <p>
          If we consider the 2 sentence corresponding to a relational algebra view indistinguishability
relation, we only need a block of universal quantifiers that cross the two instances: it is of the
form ∀ [ (x) ↔  ′(x)], where  concerns only the unprimed instance and  ′ the primed
instance. Call such indistinguishability relations Π 1. In contrast, if we look at nested view
indistinguishability, we see at least three quantifier blocks ∀x ∃y ∀z (. . .). In the first example
within Example 10, the pattern was ∀ ∃′ ∀. In the second example, which involved ternary
relation  and sets of sets of sets, there would be an additional alternation of universal and
existential. The following result (which is shown looking at indistinguishability over both finite
and infinite structures), shows that the jump from one block to at least three blocks is essential:
Theorem 14. [
          <xref ref-type="bibr" rid="ref13">13</xref>
          ] Suppose an indistinguishability relation is given by a Π 2 sentence: of the form
∀1 . . . ∃1 . . .. Then it is given by a Π 1 indistinguishability relation.
        </p>
        <p>Although the canonical example of Π 1 relations are those given by relational algebra views,
it is shown that there is an indistinguishability relation that is Π 1 that is not given by relational
algebra vievws. As with Question 1, we do not know if Π 1 corresponds to relational algebra
when only finite structures are considered.</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>6. Conclusion</title>
      <p>
        The goal in this short article is to point to some work related to the expressiveness of mechanisms
for interfacing with datasources. It is striking that the notion of interface design and the notion
of indistinguishability appear so frequently in areas of computer science – see, for example
[
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] for a short survey on the latter – but relatively infrequently in the discussion of data
management interfaces.
      </p>
      <p>The particular formalizations we summarize are meant to be just examples of a broader set
of questions. What are the diferent ways of defining datasource interfaces, and how can we
compare their expressiveness? How can we answer queries against non-traditional interfaces
like indistinguishability relations? What kind of disclosure vs. privacy trade-ofs can we achieve
with diferent kinds of interfaces?</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>F. N.</given-names>
            <surname>Afrati</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Chirkova</surname>
          </string-name>
          , Answering Queries Using Views,
          <string-name>
            <surname>Second Edition</surname>
          </string-name>
          , Morgan &amp; Claypool Publishers,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>M.</given-names>
            <surname>Tork Roth</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Arya</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L. M.</given-names>
            <surname>Haas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Carey</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W. F.</given-names>
            <surname>Cody</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Fagin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. M.</given-names>
            <surname>Schwarz</surname>
          </string-name>
          ,
          <string-name>
            <surname>J. T. II</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. L.</given-names>
            <surname>Wimmers</surname>
          </string-name>
          , The Garlic Project, in: SIGMOD,
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>C.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <article-title>Computing complete answers to queries in the presence of limited access patterns</article-title>
          ,
          <source>VLDB Journal 12</source>
          (
          <year>2003</year>
          )
          <fpage>211</fpage>
          -
          <lpage>227</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>C.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Chang</surname>
          </string-name>
          ,
          <article-title>Query planning with limited source capabilities</article-title>
          ,
          <source>in: ICDE</source>
          ,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>A.</given-names>
            <surname>Nash</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Ludäscher</surname>
          </string-name>
          ,
          <article-title>Processing union of conjunctive queries with negation under limited access patterns</article-title>
          ,
          <source>in: EDBT</source>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>J. D.</given-names>
            <surname>Ullman</surname>
          </string-name>
          , Principles of Database and
          <string-name>
            <surname>Knowledge-Base</surname>
            <given-names>Systems</given-names>
          </string-name>
          , V2, Comp. Sci. Press,
          <year>1989</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A.</given-names>
            <surname>Rajaraman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Sagiv</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. D.</given-names>
            <surname>Ullman</surname>
          </string-name>
          ,
          <article-title>Answering queries using templates with binding patterns</article-title>
          ,
          <source>in: PODS</source>
          ,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A.</given-names>
            <surname>Deutsch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Ludäscher</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Nash</surname>
          </string-name>
          ,
          <article-title>Rewriting queries using views with access patterns under integrity constraints</article-title>
          ,
          <source>Theor. Comput. Sci</source>
          .
          <volume>371</volume>
          (
          <year>2007</year>
          )
          <fpage>200</fpage>
          -
          <lpage>226</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>J.</given-names>
            <surname>Romero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Preda</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Amarilli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F. M.</given-names>
            <surname>Suchanek</surname>
          </string-name>
          ,
          <article-title>Equivalent rewritings on path views with binding patterns</article-title>
          ,
          <source>in: ESWC</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>A.</given-names>
            <surname>Amarilli</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Benedikt</surname>
          </string-name>
          ,
          <article-title>When can we answer queries using result-bounded data interfaces?</article-title>
          ,
          <source>Log. Methods Comput. Sci</source>
          .
          <volume>18</volume>
          (
          <year>2022</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>B.</given-names>
            <surname>Cautis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Deutsch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Onose</surname>
          </string-name>
          ,
          <article-title>Querying data sources that export infinite sets of views</article-title>
          ,
          <source>Theory Comput. Syst</source>
          .
          <volume>49</volume>
          (
          <year>2011</year>
          )
          <fpage>367</fpage>
          -
          <lpage>428</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>M.</given-names>
            <surname>Benedikt</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Bourhis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Jachiet</surname>
          </string-name>
          , E. Tsamoura,
          <article-title>Balancing expressiveness and inexpressivenes in view design</article-title>
          ,
          <source>TODS</source>
          (
          <year>2021</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>M.</given-names>
            <surname>Benedikt</surname>
          </string-name>
          , E. Hrushovski, Model equivalences,
          <year>2024</year>
          . Arxiv.org/pdf/2406.15235.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>S.</given-names>
            <surname>Abiteboul</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Hull</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Vianu</surname>
          </string-name>
          , Foundations of Databases, Addison-Wesley,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>A.</given-names>
            <surname>Nash</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Segoufin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Vianu</surname>
          </string-name>
          ,
          <article-title>Views and queries: Determinacy and rewriting</article-title>
          ,
          <source>TODS</source>
          <volume>35</volume>
          (
          <year>2010</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>M.</given-names>
            <surname>Gyssens</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. V.</given-names>
            <surname>Gucht</surname>
          </string-name>
          ,
          <article-title>The expressiveness of query languages for nested relations</article-title>
          ,
          <source>IEEE Data Eng. Bull</source>
          .
          <volume>11</volume>
          (
          <year>1988</year>
          )
          <fpage>48</fpage>
          -
          <lpage>55</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>J.</given-names>
            <surname>Paredaens</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. V.</given-names>
            <surname>Gucht</surname>
          </string-name>
          ,
          <article-title>Possibilities and limitations of using flat operators in nested algebra expressions</article-title>
          ,
          <source>in: PODS</source>
          ,
          <year>1988</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>P.</given-names>
            <surname>Buneman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Naqvi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Tannen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Wong</surname>
          </string-name>
          ,
          <article-title>Principles of Programming with Complex Objects and Collection Types</article-title>
          ,
          <source>Theoretical Computer Science</source>
          <volume>149</volume>
          (
          <year>1995</year>
          )
          <fpage>3</fpage>
          -
          <lpage>48</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>B.</given-names>
            <surname>Rossman</surname>
          </string-name>
          , Homomorphism preservation theorems,
          <source>J. ACM</source>
          <volume>55</volume>
          (
          <year>2008</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>H.</given-names>
            <surname>Attiya</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Rajsbaum</surname>
          </string-name>
          , Indistinguishability,
          <source>Commun. ACM</source>
          <volume>63</volume>
          (
          <year>2020</year>
          )
          <fpage>90</fpage>
          -
          <lpage>99</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>