<!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>ADaMaP: Automatic Alignment of Relational Data Sources using Mapping Patterns (Abstract)</article-title>
      </title-group>
      <contrib-group>
        <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>Avigdor Gal</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Naor Haba</string-name>
          <email>naor-haba@campus</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Davide Lanti</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Marco Montali</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Alessandro Mosca</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Roee Shraga</string-name>
          <email>shraga89@campus</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Free-University of Bozen-Bolzano</institution>
          ,
          <addr-line>Bolzano</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Technion - Israel Institute of Technology</institution>
          ,
          <addr-line>Haifa</addr-line>
          ,
          <country country="IL">Israel</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Umeå University</institution>
          ,
          <country country="SE">Sweden</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>This extended abstract presents our work on automatic discovery of RDB-to-OWL 2 QL mapping patterns published at CAiSE 2021 [1].</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Modern industrial and business processes require intensive use of large-scale data
alignment and integration techniques to combine data from multiple heterogeneous data
sources into meaningful and valuable information. Such integration is performed on
structured and semi-structured data sets from various sources such as SQL and XML
schemata, entity-relationship (ER) diagrams, ontology descriptions, process models,
and web forms. One of the main challenges of data integration is to create a common
semantic understanding from the multiple available data sources. In ontology-based data
access (OBDA) and integration [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], this is achieved through two main components: (i) an
ontology that captures the relevant concepts and relations of the domain of interest at a
high level of abstraction, in turn acting as a vehicle for reaching a semantic consensus;
and (ii) a mapping specification that dictates how the data in relational sources can be
used to (virtually) populate the classes and properties of the ontology.
      </p>
      <p>
        A major impediment towards the adoption of OBDA is that data sources typically
lack a proper semantic documentation, which makes it extremely difficult and error-prone
to obtain both the ontology and the mapping. In this work, we aim at reconstructing such
lost domain semantics by inspecting relational data sources, without any additional
documentation. To do so, we start from the key observation that while the relational model
may be semantically-poor with respect to ontological models, the original
semanticallyrich design of the application domain leaves recognizable footprints that can be converted
into the aforementioned ontology and mapping specifications. Therefore, we propose
to use ontology mapping patterns [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], which systematically collect recurring ways of
linking relational data sources to ontologies via mapping assertions. Based on such
patterns, we propose an algorithmic technique called ADaMaP that, given a relational
data source, automatically determines how suitable fragments of its schema align with
corresponding mapping patterns. Once mapping patterns are suitably instantiated on a
      </p>
      <p>E-R diagram</p>
      <p>
        K A
E
given data source, they can be employed for a number of downstream data engineering
tasks, e.g., ontology bootstrapping [
        <xref ref-type="bibr" rid="ref3 ref4 ref5 ref8">3,4,5,8</xref>
        ] and schema cover [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
      </p>
      <p>
        Contributions. The contribution of this work is twofold. On a conceptual level, we offer
an approach to semantically enrich a relational model by exploiting the footprints left
by the conceptual design on which the relations are based. We then offer an algorithmic
solution to align the relations (for which we assume to have a definition of primary keys,
foreign keys, and unique constraints) with the mapping patterns introduced in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Ontology Mapping Patterns</title>
      <p>
        A mapping pattern is a quadruple ¹C S M Oº, where C is a conceptual schema, S
is a database schema, M is a set of mappings, and O is an ontology. In such mapping
pattern, the pair ¹C Sº puts into correspondence a conceptual representation to one of
its (many) admissible (i.e., formally sound) database schemata. Such variants are due
to differences in the applied methodology, efficiency and performance optimizations,
and database space consumption. The database schema ontology ontology O [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] is the
OWL 2 QL encoding (hence, not lossless) of C, and the set M of database schema
mappings provides the link between S and O. Table 1 shows two examples of patterns,
namely, Schema Entity (SE) and Schema Relationship (SR). SE is a fundamental
pattern that considers a single table ) with primary key K and other attributes A. The
pattern captures how ) is mapped into a corresponding class . The primary key of
) is employed to construct the objects that are instances of , using a template t
specific for that class. Each relevant attribute of ) is mapped to a data property of .
Example. A projects table whose primary key is the attribute id, together with their
funding scheme and their reference in the CORDIS portal, is mapped to a :Project class
using the id attribute to construct its instances. In addition, every attribute in the table
is mapped to a corresponding data property.
      </p>
      <p>SR considers three tables )', ) , and ) , in which the primary key of )' is
partitioned into two parts K' and K' that are foreign keys to ) and ) , respectively. )'
has no additional attributes. The pattern captures how )' is mapped to an object property
?', using the two parts K' and K' of the primary key to construct respectively the
subject and the object of each triple in ?'.</p>
      <p>https://cordis.europa.eu/projects/en
no
no
SE</p>
      <p>K' == FK'</p>
      <p>no
FK' id. '?
(b) 1
yes
K) == FK)
yes
yes</p>
      <p>SH
SRm + SE</p>
      <p>SHa</p>
      <p>Execute 1b
for each FK
ADaMaP: Automatic Alignment of Relational Data Sources using Mapping Patterns
no</p>
      <p>yes
K) == FK)</p>
      <p>no
Execute 1b
for each FK</p>
      <p>8'8 : K'8 == FK'8
(d) 3
yes</p>
      <p>SRR
K'1 == FK'1
^K'2 == FK'2 SRR</p>
      <p>K'1 == FK'1
^K'2 == FK'2 SR
yes
no</p>
      <p>yes
FK'1 id. '1?
_ FK'2 id. '2? SRa</p>
      <p>yes
no
no
K) == FK)
yes
no
yesFK) == )
no</p>
      <p>(c) 2</p>
      <p>SE
Example. A projects_erc_panels table connecting through two foreign keys the projects
to their corresponding ERC panels. Such table is mapped to an :ercPanel object property,
for which the ontology asserts that the domain is the class :Project and the range is an
additional class :ERC-Panel, which corresponds to the erc_panels table according to the
SE pattern.
3</p>
    </sec>
    <sec id="sec-3">
      <title>The ADaMaP Algorithm</title>
      <p>Evaluation. To assess the feasibility of the
approach in practice, we focus on non-trivial and real-world scenarios. We identified two
such scenarios, analyzing in total more than one thousand mapping assertions, namely:
– CORDIS, which is designed around the domain of competitive research projects,
provided by SIRIS Academic S.L. ( https://www.sirisacademic.com/wb/), a
consultancy company specialized in higher education and research; and
– NPD, which is built around the domain of oil and gas extraction, and contains data
coming from the FactPages portal ( https://factpages.npd.no/en).</p>
      <p>
        The full validation in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], confirms that the patterns automatically identified by
ADaMaP mostly conform to those manually identified by human experts. Hence, the
patterns identified by ADaMaP provide a sound basis that can be further manually
improved by experts.
      </p>
      <p>Acknowledgements. This research has been partially supported by the EU H2020 project
INODE (863410), the Italian PRIN project HOPE, the European Regional Development
Fund Investment for Growth and Jobs Programme 2014-2020 through the project IDEE
(FESR1133), and the Free University of Bozen-Bolzano through the projects QUADRO,
KGID, GeoVKG, and STyLoLa.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gal</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haba</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lanti</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Montali</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mosca</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shraga</surname>
          </string-name>
          , R.: Adamap:
          <article-title>Automatic alignment of data sources using mapping patterns</article-title>
          .
          <source>In: Proc. of the 33rd Int. Conf. on Advanced Information Systems Engineering (CAiSE</source>
          <year>2021</year>
          ).
          <source>Lecture Notes in Computer Science</source>
          , Springer (
          <year>2021</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gal</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lanti</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Montali</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mosca</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shraga</surname>
          </string-name>
          , R.:
          <article-title>Mapping patterns for virtual knowledge graphs</article-title>
          .
          <source>CoRR Technical Report arXiv:2012</source>
          .
          <year>01917</year>
          , arXiv.org e-Print
          <string-name>
            <surname>archive</surname>
          </string-name>
          (
          <year>2020</year>
          ), https://arxiv.org/abs/
          <year>2012</year>
          .01917
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Jiménez-Ruiz</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kharlamov</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zheleznyakov</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Horrocks</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pinkel</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Skjaeveland</surname>
            ,
            <given-names>M.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Thorstensen</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mora</surname>
            ,
            <given-names>J.:</given-names>
          </string-name>
          <article-title>BootOX: Practical mapping of RDBs to OWL 2</article-title>
          .
          <source>In: Proc. of the 14th Int. Semantic Web Conf. (ISWC). Lecture Notes in Computer Science</source>
          , vol.
          <volume>9367</volume>
          , pp.
          <fpage>113</fpage>
          -
          <lpage>132</lpage>
          . Springer (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4. de Medeiros,
          <string-name>
            <given-names>L.F.</given-names>
            ,
            <surname>Priyatna</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Corcho</surname>
          </string-name>
          ,
          <string-name>
            <surname>O.</surname>
          </string-name>
          :
          <article-title>MIRROR: Automatic R2RML mapping generation from relational databases</article-title>
          .
          <source>In: Proc. of the 15th Int. Conf. on Web Engineering (ICWE)</source>
          . pp.
          <fpage>326</fpage>
          -
          <lpage>343</lpage>
          . Springer (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Pinkel</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Binnig</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kharlamov</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haase</surname>
            ,
            <given-names>P.:</given-names>
          </string-name>
          <article-title>IncMap: pay as you go matching of relational schemata to OWL ontologies</article-title>
          .
          <source>In: Proc. WS on Ontology Matching. CEUR Workshop Proceedings</source>
          , http://ceur-ws.
          <source>org/</source>
          , vol.
          <volume>1111</volume>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Poggi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lembo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Calvanese</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>De Giacomo</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lenzerini</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rosati</surname>
          </string-name>
          , R.:
          <article-title>Linking data to ontologies</article-title>
          .
          <source>J. on Data Semantics</source>
          <volume>10</volume>
          ,
          <fpage>133</fpage>
          -
          <lpage>173</lpage>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Saha</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stanoi</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Clarkson</surname>
            ,
            <given-names>K.L.</given-names>
          </string-name>
          :
          <article-title>Schema covering: a step towards enabling reuse in information integration</article-title>
          .
          <source>In: Proc. of the 26th IEEE Int. Conf. on Data Engineering (ICDE)</source>
          . pp.
          <fpage>285</fpage>
          -
          <lpage>296</lpage>
          . IEEE Computer Society (
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Sequeda</surname>
            ,
            <given-names>J.F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Miranker</surname>
            ,
            <given-names>D.P.</given-names>
          </string-name>
          : Ultrawrap Mapper:
          <article-title>A semi-automatic relational database to RDF (RDB2RDF) mapping tool</article-title>
          .
          <source>In: Proc. of the 14th Int. Semantic Web Conf., Posters &amp; Demonstrations Track (ISWC)</source>
          .
          <source>CEUR Workshop Proceedings</source>
          , http://ceur-ws.
          <source>org/</source>
          , vol.
          <volume>1486</volume>
          (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Spanos</surname>
            ,
            <given-names>D.E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stavrou</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mitrou</surname>
          </string-name>
          , N.:
          <article-title>Bringing relational databases into the Semantic Web: A survey</article-title>
          .
          <source>Semantic Web J</source>
          .
          <volume>3</volume>
          (
          <issue>2</issue>
          ),
          <fpage>169</fpage>
          -
          <lpage>209</lpage>
          (
          <year>2012</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>