<!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>OBDA Over Non-Relational Databases?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Elena Botoeva</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Diego Calvanese</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Benjamin Cogrel</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Martin Rezk</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Guohui Xiao</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Free University of Bozen-Bolzano</institution>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The database landscape has been significantly diversified during the last decade, resulting in the emergence of a variety of non-relational (also called NoSQL) databases, e.g., XML and JSON-document databases, key-value stores, and graph databases. To facilitate access to such databases and to enable data integration of non-relational data sources, we generalize the well-known ontologybased data access (OBDA) framework so as to allow for querying arbitrary databases through a mediating ontology. We instantiate this framework to MongoDB, a popular JSON-document database, and implement a prototype extension of the virtual OBDA system Ontop for answering SPARQL queries over MongoDB.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1 Introduction</title>
      <p>
        Accessing data using native query languages is getting a more and more involved task
for users, as databases (DBs) increase in complexity and heterogeneity. The
OntologyBased Data Access (OBDA) paradigm [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] has emerged as a proposal to simplify this
kind of access, by allowing users to write high-level ontological queries, which in the
classical virtual approach are translated automatically into low-level queries that DB
engines can handle. This separation of concerns between the conceptual level and the
DB level has been proven successful in practice, notably when data sources have a
complex structure and end-users have domain but not necessarily data management
expertise [
        <xref ref-type="bibr" rid="ref1 ref5 ref6">6,5,1</xref>
        ]. The OBDA approach is implemented by connecting a DB to an ontology by
means of mappings, where traditionally the ontology is expressed in the OWL 2 QL
profile of the Web Ontology Language OWL 2 [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], the queries are formulated in SPARQL,
the Semantic Web query language, and the DB is assumed to be relational [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        As envisioned by Stonebraker and Cetintemel [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], a multitude of DB
architectures is required to satisfy the needs of a wide variety of modern applications. This has
been confirmed by the significant diversification of the DB landscape during the last
decade. Some of these architectural changes have been proposed within the scope of
relational DBs (e.g., column-oriented storage), while many have gone beyond them,
causing the emergence of the so-called NoSQL (not only SQL) DBs. These non-relational
DBs usually adopt one of four main data models, namely the column-family, key-value,
document, and graph data models, and provide an (intimidating) number of query
languages with varying querying capabilities. Notably, many of these new languages are
limited [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] and thus clients might need to set up compensating post-processing
techniques so as to satisfy advanced information needs. In this paper, to let users query
non-relational DBs at the conceptual level, we propose to extend the OBDA framework
to non-relational DBs, and then instantiate it to MongoDB, a popular document DB.
? This is an abridged version of [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
    </sec>
    <sec id="sec-2">
      <title>Generalized OBDA framework</title>
      <p>We consider fixed countably infinite sets C of DB values, and ED of elements built over
C, e.g., named tuples, trees, or XML documents. We assume to deal with a class D of
DBs, where each DB in D is a finite subset of ED, e.g., relational DBs, MongoDB, or
XML DBs. Moreover, we assume that D comes equipped with:
– Suitable forms of constraints, which might express both information about the
structure of the data in DBs of D, e.g., the schema information in relational DBs,
and “constraints” in the usual sense of DBs, e.g., primary and foreign key
constraints for relational DBs. We call a collection of such constraints a D-schema.
– A query language QD , such that, for each query q 2 QD and for each instance</p>
      <p>D 2 D, the answer ans(q; D) of q over D is defined, and is itself a DB in D.
– A relational wrapper [[ ]]D , which is a function transforming a QD -query q into a
new query [[q]]D that takes a DB in D and returns a relation over C (i.e., a relation
in first normal form)1. The role of the wrapper is to present ans(q; D) as a relation,
by actually computing a query that retrieves from D what can be considered as the
relational representation of ans(q; D). In particular, when q is the identity query,
[[q]]D is the query computing the relational view of a DB D 2 D.</p>
      <p>Having these building blocks at hand, we now define D-mapping assertions and
their semantics. We start by introducing the notion of variable-to-RDF-term map,
which is a generalization of the RDF-term template in relational OBDA. We say that
f (x1; : : : ; xn) is an RDF term constructor if it is a (partial) function f : Cn ! I [ L,
where I is the set of IRIs and L is the set of RDF literals. Then, a
variable-to-(RDF)term map (for variable ?X) has the form ?X 7! f (x1; : : : ; xn). In the following,
x1;:::;xn denotes the standard projection operator of relational algebra.
Definition 1. A D-mapping assertion m is an expression q K h where:
– q is a QD -query, called source query;
– h is an RDF triple pattern, called target, of the form (?X1 rdf:type A) or
(?X1 P ?X2), where A is a class name, and P is a property name;
– K is a set of variable-to-term maps, one for each variable ?Xi appearing in h.
The mapping assertion m is safe if for each ?Xi 7! f (x1; : : : ; xn) in K, we have that
the function x1;:::;xn [[q]]D is well-defined.</p>
      <p>A D-mapping M is a finite set of D-mapping assertions.</p>
      <p>Notice that, the mapping assertion m is safe if and only if, for each variable-to-term
map ?Xi 7! f (x1; : : : ; xn) used by m, the wrapper [[ ]]D , when applied to the source
query q of m, returns a query producing a relation whose attributes contain x1; : : : ; xn.
Definition 2. Let D be a class of DBs, m = q K h a D-mapping assertion, and
D 2 D. The RDF graph m(D) generated by m from D is defined as follows:
– When h = (?X1 rdf:type A), then</p>
      <p>m(D) = (f (v) rdf:type A) j K = f?X1 7! f (x)g; v 2 x([[q]]D (D)) .
1 Discussing the specific form and properties of wrappers is outside the scope of this paper.
– When h = (?X1 P ?X2), then
m(D) = (f1(v1) P f2(v2)) j K = f?X1 7! f1(x1); ?X2 7! f2(x2)g;
v1 2 x1 ([[q]]D (D)); v2 2 x2 ([[q]]D (D)) :
For a D-mapping M, the RDF graph M(D) is defined as Sm2M m(D).</p>
      <p>Now, an OBDA specification for D is a triple hT ; M; Si, where T is an ontology, S
is a D-schema, and M is a D-mapping. An OBDA instance for D consists of an OBDA
specification hT ; M; Si for D and an instance D 2 D satisfying S. The semantics of
such an instance is derived naturally from the semantics of D-mapping assertions.
3</p>
    </sec>
    <sec id="sec-3">
      <title>OBDA Framework over MongoDB</title>
      <p>In this section we instantiate the generalized OBDA framework to MongoDB, a
popular DB that stores collections of semi-structured JSON-style documents. A sample
document consisting of (possibly nested) key-value pairs and arrays is given below.
{ "_id": 4,
"awards": [
{ "award": "Rosing Prize", "year": 1999, "by": "Norwegian Data Association" },
{ "award": "Turing Award", "year": 2001, "by": "ACM" },
{ "award": "IEEE John von Neumann Medal", "year": 2001, "by": "IEEE" } ],
"birth": "1926-08-27",
"contribs": ["OOP", "Simula"],
"death": "2002-08-10",
"name": {</p>
      <p>"first": "Kristen", "last": "Nygaard" }
}</p>
      <p>
        This instantiation relies on work in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], where we obtain the following results:
– We formalize a fragment of MongoDB aggregate queries that consists of match,
unwind, project, group, and lookup stages, and that we call MUPGL.
– We propose a notion of MongoDB type constraints. These constraints allow one
to specify that certain paths (concatenations of keys) must point to an array (e.g.,
awards), or an atomic value (e.g., name.last), or an object (e.g., name).
– We define a relational view over MongoDB with respect to a set of type constraints.
– We develop a translation from RA expressions (over the relational view) to MUPGL
queries. This translation shows that full RA can be captured by MUPGL, while RA
over a single collection can be captured by MUPG.
      </p>
      <p>We start by introducing a compact notation for MongoDB mapping assertions,
which we also use to specify type constraints. We consider two extensions of paths
called array paths. An array index path is a path where a key is followed by any
combination of keys and ‘#’, separated by dots. An array element path is the concatenation
of an array index path with ‘.[#]’. Intuitively, for (simple) paths p1 and p2, any of the
array paths p1.#.p2, p1.#, or p1.[#] imply that p1 must point to an array. Moreover, the
path p1.#.p2 (e.g., awards.#.year) is used to access the value of the path p2 inside the
array pointed to by p1, while p1.# (e.g., awards.#) is used to denote the indices and
p1.[#] (e.g., contribs.[#]) to denote the single elements of such an array. Hence, the
presence of ‘#’ or ‘[#]’ requires that the path preceding it points to an array, whereas a
path that does not end with ‘#’ or ‘[#]’ must point to atomic values. We use extended
paths to refer both to normal paths and to array paths.</p>
      <p>
        The source queries we consider are a restricted form of MUP queries and can be
represented as a pair (C; '), where C is a collection name and ' is a criterion constructed
using extended paths. Let K be a set of variable-to-term maps ?X 7! f (p1; : : : ; pn),
where each pi is an extended path. Then, a MongoDB mapping assertion is an
expression of the form (C; ') K h, where the variables in h constitute the domain of K.
Given a MongoDB mapping M, we can extract from it the MongoDB schema SM (a
set of type constraints), and then define a relational wrapper [[ ]]MongoDB for the source
queries in M (see [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] for more details).
      </p>
      <p>
        We built a prototype implementation for answering SPARQL queries over MongoDB
as an extension of the state-of-the-art OBDA system Ontop [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        Architecture of Ontop. Query answering (QA) in Ontop under the OWL 2 QL
entailment regime involves an offline and an online stage:
sStPrAinRgQL 1 SpPaArsRinQgL SPARQL Q 2 Rewriting RSPeAwRriQttLenQ0T 3w.rU.t.nmfoaldpipnigngs RA q1 4Struocpttuirmali/zsaetmioanntic
fiOlnetology Opnatroslionggy ii T claOsnstiofilcoagtiyoniii COlaFssFifiLedINTE coTMm-Mappiaplpaipntiigonngiv MMTSacphpeimnga MS Manaaplpyisnisg i fiMleapping RA q2
rSePsAuRltQL 8 proPcoessts-ing rNeastuilvtes 7 Evaluation qNuaetirviees 6 quReAry-ttora-nnsaltaivtieon RA q3 5 DNeocrmomalpizoastiitoionn/
The offline stage (highlighted in gray) takes as input the mapping and the ontology
files and produces three entities used by the online QA stage: the classified ontology,
the DB schema (extracted from the mapping file), and the T-mapping, constructed
by ‘compiling’ the classified ontology into the input mapping [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. The online stage
handles individual SPARQL queries: 1 the input SPARQL query is parsed, 2 rewritten
w.r.t. the ontology, and 3 unfolded w.r.t. the T-mapping; 4 (the internal representation
of) the resulting RA query is simplified by applying structural and semantic
optimization techniques; 5 the RA query is normalized and (possibly) decomposed so that
it can be directly handled by the RA-to-native-query translator; 6 each normalized
RA (sub)query is translated into a native query, which is then 7 evaluated by the DB
engine; 8 the native results are post-processed into SPARQL results.
      </p>
      <p>Implementation for MongoDB. We observe that steps ii – iv and 1 – 4 are
independent of the actual class D of DBs, while steps i and 5 – 8 require specific
implementations according to D. Therefore, our prototype implements the latter five components.
The current implementation supports MongoDB 3.2 and is able to return sound and
complete answers to the subset of SPARQL queries that (i) correspond to BGPs with
filters consisting of comparisons, and (ii) can be translated into MUPG queries.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusions</title>
      <p>We are currently working on providing support for (most of) SPARQL 1.0. In the future
we want to explore the tradeoff between delegating all of query processing to MongoDB
vs. a fine-grained decomposition of the input query together with post-processing to
combine the results of the sub-queries. We will test our techniques on real-world
largescale use-cases, so as to assess the practical feasibility of OBDA over MongoDB.</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>
          , volume
          <volume>1017</volume>
          <source>of CEUR Electronic Workshop Proceedings</source>
          , http://ceur-ws.
          <source>org/</source>
          , pages
          <fpage>9</fpage>
          -
          <lpage>16</lpage>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>E.</given-names>
            <surname>Botoeva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Cogrel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rezk</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Xiao</surname>
          </string-name>
          .
          <article-title>A formal presentation of MongoDB (Extended version)</article-title>
          .
          <source>CoRR Technical Report abs/1603</source>
          .09291, arXiv.org e-Print archive,
          <year>2016</year>
          . Available at http://arxiv.org/abs/1603.09291.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>E.</given-names>
            <surname>Botoeva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Cogrel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rezk</surname>
          </string-name>
          , and
          <string-name>
            <surname>G. Xiao.</surname>
          </string-name>
          <article-title>OBDA beyond relational DBs: A study for MongoDB</article-title>
          .
          <source>In Proc. of the 29th Int. Workshop on Description Logics (DL)</source>
          , volume
          <volume>1577</volume>
          <source>of CEUR Electronic Workshop Proceedings</source>
          , http://ceur-ws.
          <source>org/</source>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Cogrel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Komla-Ebri</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Kontchakov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Lanti</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rezk</surname>
          </string-name>
          , M. RodriguezMuro, and
          <string-name>
            <given-names>G.</given-names>
            <surname>Xiao.</surname>
          </string-name>
          <article-title>Ontop: Answering SPARQL queries over relational databases</article-title>
          .
          <source>Semantic Web J.</source>
          ,
          <year>2016</year>
          . To appear.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Liuzzo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Mosca</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Remesal</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Rezk</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Rull</surname>
          </string-name>
          .
          <article-title>Ontology-based data integration in EPNet: Production and distribution of food during the Roman Empire</article-title>
          .
          <source>Engineering Applications of Artificial Intelligence</source>
          ,
          <year>2016</year>
          . To appear.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>M.</given-names>
            <surname>Giese</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Soylu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Vega-Gorgojo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Waaler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Haase</surname>
          </string-name>
          ,
          <string-name>
            <surname>E.</surname>
          </string-name>
          <article-title>Jime´nez-</article-title>
          <string-name>
            <surname>Ruiz</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Lanti</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Rezk</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          <string-name>
            <surname>Xiao</surname>
            ,
            <given-names>O</given-names>
          </string-name>
          <string-name>
            <surname>¨ . L. O</surname>
          </string-name>
          <article-title>¨ zc¸ep, and</article-title>
          <string-name>
            <given-names>R.</given-names>
            <surname>Rosati</surname>
          </string-name>
          . Optique:
          <article-title>Zooming in on Big Data</article-title>
          . IEEE Computer,
          <volume>48</volume>
          (
          <issue>3</issue>
          ):
          <fpage>60</fpage>
          -
          <lpage>67</lpage>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>B.</given-names>
            <surname>Motik</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Fokoue</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            <surname>Horrocks</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Wu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Lutz</surname>
          </string-name>
          , and
          <string-name>
            <given-names>B. Cuenca</given-names>
            <surname>Grau. OWL Web</surname>
          </string-name>
          <article-title>Ontology Language profiles</article-title>
          .
          <source>W3C Recommendation</source>
          , World Wide Web Consortium, Oct.
          <year>2009</year>
          . Available at http://www.w3.org/TR/owl-profiles/.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>K. W.</given-names>
            <surname>Ong</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Papakonstantinou</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Vernoux</surname>
          </string-name>
          . The SQL+
          <article-title>+ query language: Configurable, unifying and semi-structured</article-title>
          .
          <source>CoRR Technical Report abs/1405</source>
          .3631, arXiv.
          <source>org ePrint archive</source>
          ,
          <year>2014</year>
          . Available at http://arxiv.org/abs/1405.3631.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <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="ref10">
        <mixed-citation>
          10. 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>
          , volume
          <volume>8218</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>558</fpage>
          -
          <lpage>573</lpage>
          . Springer,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>M.</given-names>
            <surname>Stonebraker</surname>
          </string-name>
          and
          <string-name>
            <given-names>U.</given-names>
            <surname>Cetintemel</surname>
          </string-name>
          .
          <article-title>“one size fits all”: An idea whose time has come and gone</article-title>
          .
          <source>In Proc. of the 21st IEEE Int. Conf. on Data Engineering (ICDE)</source>
          , pages
          <fpage>2</fpage>
          -
          <lpage>11</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>