<!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>R2RML-F: Towards Sharing and Executing Domain Logic in R2RML Mappings</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Christophe Debruyne</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>CCS Concepts</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Linked Data</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mapping.</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Trinity College Dublin Dublin 2</institution>
          ,
          <country country="IE">Ireland</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2012</year>
      </pub-date>
      <volume>7538</volume>
      <abstract>
        <p>Many initiatives have emerged to aid one in publishing structured resources as Linked Data on the Web with one of the major achievements being the R2RML W3C Recommendation. R2RML and its dialects assume a certain underlying technology (e.g., Core SQL 2008). This means that domain-specific data transformations - such as transforming geospatial coordinates - rely either on that underlying technology or data-preprocessing steps. We argue that one can incorporate and subsequently share that procedural domain knowledge in such mappings. Such an extension would make certain pre-processing steps redundant. One can furthermore attach metadata to these functions, which can be published as well. In this paper, we present R2RML-F, an extension to R2RML, that adopts ECMAScript for capturing domain knowledge and for which we have developed a prototype. We demonstrate the viability of the approach with a demonstration and compare its performance with different mappings in some initial experiments. Our preliminary results suggest that there is little or no overhead with respect to relying on underlying technology.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. INTRODUCTION</title>
      <p>
        Fifteen years ago, Tim Berners-Lee wrote a Design Issue [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]
suggesting how to publish the information contained in relational
databases on the Semantic Web. Many tools have emerged (see
[
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] for a survey) to generate RDF from these databases either via
direct mappings – based on the ideas outlined in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] with the RDF
reflecting the database’s structure and labels – or via annotations
where tables, views and queries are related to concepts and
relations in ontologies to create a knowledge base. Both approaches
ultimately led to two W3C Recommendations; a direct mapping
of relational data to RDF [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] and R2RML [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. The R2RML
specification assumes that the relational database is annotated to
conform to the Core SQL 2008 specification.
      </p>
      <p>
        According to [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], a model management system is “a component
that supports the creation, compilation, reuse, evolution, and
execution of mappings between schemas represented in a wide range
of metamodels.” They also argued that mapping languages should
be more expressive if one wants to support various use case
scenarios and that – provided that tractability is not a problem – one
1.
2.
      </p>
      <p>Ensure a minimal extension of R2RML that reuses as
much as possible existing predicates;
Adopt a standardized programming language to
represent procedural domain knowledge for which multiple
implementations exist.</p>
      <p>The result of taking this approach is R2RML-F, where the ‘F’
stands for “function”. R2RML-F adopts ECMAScript1 as the
programming language and we have extended the R2RML
vocabulary to include notions for function calls and parameter bindings.
Next to these contributions, this paper presents details of the
prototype and examples demonstrating the viability of the approach.
The remainder of this paper is organized as follows: Section 2
presents R2RML-F; Section 3 provides some details on the
implementation of the prototype; Section 4 is used to demonstrate
the ideas as well as to present experiments to evaluate the
performance of R2RML-F; Section 5 presents related work; and Section
6 concludes the paper.</p>
    </sec>
    <sec id="sec-2">
      <title>2. EXTENDING R2RML</title>
      <p>In this section we describe the predicates introduced and our
extension of R2RML. We do assume the reader is familiar with
R2RML and will introduce the notions of the approach through a
simple example. In Listing 1 we declare a function that multiplies
1 JavaScript is a popular implementation of ECMAScript.
Implementations of ECMAScript often extend the language or
provide APIs. One example is JavaScript providing APIs to interact
with a Web browser.
two arguments2:
&lt;#Multiply&gt;
rrf:functionName "multiply" ;
rrf:functionBody """
function multiply(var1, var2) {
return var1 * var2 ;
Each function is a resource that must have two relationships: a
function name (a literal) and a function body (also a literal); the
function name and name of the function in the function body must
be identical. Each R2RML-F mapping cannot have two functions
with the same name and each function must have exactly one
function name and exactly one function body. Any errors will be
reported to the user.</p>
      <p>Listing 2 demonstrates how functions are called from within a
Predicate Object Map. We have introduced the new term map
function call. A term map must now be exactly one of the
following: a constant-valued term map, a column-valued term map, a
template-valued term map or a function-call-valued term map. A
function call:
•
•
must refer to exactly one function; and
must have at most one list of parameter bindings.</p>
      <p>
        When no list of parameter bindings or an empty list is provided,
they are considered to be function calls where no parameters are
being passed. The order of the parameters that are passed is
important. Adopting the RDF Sequence container was not an option,
as RDF does not provide a mechanism to state a container has no
more members [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. The RDF Collection vocabulary of classes and
properties can describe a closed collection as a list [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. RDF
Collections are therefore suitable for passing arguments. The
elements in this list – if any – must be term maps. Functions calls can
thus be passed the results of columns, constants, templates or
another function call.
&lt;#TriplesMap1&gt;
rr:logicalTable [ rr:tableName "Employee"; ];
rr:subjectMap [
rr:template "http://org.com/employee/{ID}";
] ;
rr:predicateObjectMap [
rr:predicate ex:salary ;
rr:objectMap [
rr:datatype xsd:double ;
rrf:functionCall [
rrf:function &lt;#Multiply&gt; ;
rrf:parameterBindings (
[ rr:constant "12"^^xsd:integer ]
[ rr:column "monthly_salary" ]
) ;
] ;
] ;
] ;
      </p>
    </sec>
    <sec id="sec-3">
      <title>3. IMPLEMENTATION</title>
      <p>An existing R2RML processor, called db2triples, was extended.
The extension is available as a branch on GitHub.3 Prior to
processing the mappings, the R2RML-F processor first looks for and
evaluates the functions using Java’s Nashorn4 JavaScript engine.
Any problems with the function results in an error that will be sent
back to the user.</p>
      <p>Function calls are implemented as term maps and each function
call has a list of term-maps that constitute its arguments. Each
argument is evaluated before the results are passed on to the
function being called. This can be compared to the greedy evaluation
strategy found in some programming languages. Any runtime
errors halt the process and the user is made aware of where the
problem resides.</p>
      <p>We currently support no monitoring of the functions and rely on
Nashorn and the Java Runtime Environment to handle issues
concerning memory management and the correctness of code (e.g.,
infinite loops).
4. DEMONSTRATION AND EXPERIMENT
We demonstrate and evaluate our approach with a use case
provided by the Ordnance Survey Ireland (OSi)5. The OSi is Ireland’s
national mapping agency and the geometries in their system are
represented using the Irish Transverse Mercator (ITM)6
coordinate system. At an international level, however, World Geodetic
System 84 (or WSG 84)7 is the standard used in cartography and
navigation (amongst others). Transforming coordinates from one
coordinate system to another is a common task for which
(integrated) tools exist, but not all relational databases support those.
For the demonstration and experiment, we created a table
representing the 26 counties of The Republic of Ireland (see Table 1),
with the following fields: “id” – an identifier stored as an integer;
“name” – the name of the county as a varchar; “geom” – a point
of that county as a geometry object (internal representation
omitted for this paper); and “geoms” – capturing that same point as a
varchar in WKT format.8 The table is stored in a PostgreSQL
database supporting geometries with PostGIS. The purpose of this
table is to demonstrate the transformation of the textual
representation of points with our approach and compare it with a mapping
using PostGIS’ functionality.
2 http://kdeg.scss.tcd.ie/ns/rrf# is the namespace URI for the</p>
      <p>R2RML-F predicates and is prefixed with “rrf” in this paper.
3 Available at https://github.com/CNGL-repo/db2triples
4 https://blogs.oracle.com/nashorn/
5 http://www.osi.ie/
6 https://en.wikipedia.org/wiki/Irish_Transverse_Mercator
7 https://en.wikipedia.org/wiki/World_Geodetic_System
8 https://en.wikipedia.org/wiki/Well-known_text
Simulating a relational database that does not support geometries,
we have created a mapping M1 that maps “id”, “name” and
“geoms” to triples. This mapping is shown in Listing 3, but the
function – which takes a fair amount of space and therefore omitted –
is based on a PHP script9 that has been ported to ECMAScript.
One can see that the mapping should result in two RDF triples for
each record.
&lt;#TriplesMap1&gt;
rr:logicalTable [
rr:sqlQuery "SELECT id, name, geoms FROM county" ;
] ;
rr:subjectMap [
rr:template "http://data.example.com/county/{id}" ;
] ;
rr:predicateObjectMap [
rr:predicate ex:name ;
rr:termType rr:Literal;
rr:objectMap [ rr:column "name" ];
] ;
rr:predicateObjectMap [
rr:predicate ex:point ;
rr:objectMap [
rr:termType rr:Literal;
rrf:functionCall [
rrf:function &lt;#Transform&gt; ;
rrf:parameterBindings (
[ rr:column "geoms" ]
) ;
] ;
] ;
] ;
The execution of our processor generated 52 triples of which
some are shown in Figure 1. We will now proceed with evaluating
our approach with other mappings in order to analyze the impact
of incorporating domain knowledge in the mapping.</p>
      <p>Before describing the experiment, we note that our experiment
9 The function to transform ITM into WGS84 is based on
http://www.nearby.org.uk/blog/2009/05/13/itm-wgs84-andirish-grid-and-british-national-grid-php-code/
was run on a MacBook Pro 12.1 with an Intel Core i5 processor
(2.7 GHz) and a memory of 8 GB (1867 MHz DDR3). The IDE
used is the Eclipse IDE Mars Release (4.5.0) and the Java version
1.8.0_45.</p>
      <p>To compare the performance of our approach, we have created
two additional mappings. The mappings we will compare are:
•
•
•</p>
      <p>M1 (Listing 3) mapping a text field containing points
which are transformed via a function;
M2 (Listing 4) casting the geometry into a string and
providing that field as input to the function; and
M3 (Listing 5) transforming the geometry into WGS84
in the SQL query, therefore not relying on the function
provided in the mapping.</p>
      <p>M2 was created to analyze the impact of casting geometries to
strings.</p>
      <p>For each mapping we have run a script that executes a mapping
110 times in the same virtual machine and measures the execution
times. The script was thus run three times, once for each mapping.
For each mapping, we ignore the first ten measurements to avoid a
bias created by cold starting the Java Virtual Machine. Even
though M3 does not use a function, we have not removed the
function from the mapping. As functions are loaded only once
(prior to executing the mappings), this creates a constant across
the three mappings allowing us to more reliably compare the
execution times measured. The results are shown in Table 2.
Looking at the average runtime, it is surprising to see that our
approach in M1 seemingly performs better than a mapping with
no function calls. In order to investigate whether the differences
are significant, we performed a Welch Two Sample T-Test for
each pair of mappings M1-M2, M1-M3 and M1-M2. The
significance level we adopt is 0.05. The p-values for each test are:
1.
2.
3.</p>
      <p>M1-M2: 0.8518 &gt; 0.05
M1-M3: 0.06564 &gt; 0.05</p>
      <p>M2-M3: 0.0838 &gt; 0.05
All p-values are above 0.05, which suggests that the differences
are not significant. This also suggests – at the moment – that our
approach, viable from a technical point of view, seems not to
cause any serious overhead for this particular use case. We notice
that the last two p-values – comparing a mapping applying the
function with a mapping that does not – are closer to the
confidence level than the first. M1 and M2 rely on calling the function
and their difference seems not significant.</p>
    </sec>
    <sec id="sec-4">
      <title>4.1 Additional Experiments</title>
      <p>
        We recognize the size of the dataset is limited and the function
very complex, so we have ran additional experiments with a larger
dataset and a simple function that are similar in setup. We created
a table with two columns (“id”, “x” and “y” – all integers) and
generated 1,000 records with random values between 0 and 100
for x and y. The first experiment mapped the multiplication of x
with x, the second the multiplication of x and y. The main
difference is the number of parameters (one vs. two), with the first
being more similar to the conversion of coordinates (i.e., only one
argument is passed).
create richer mappings, but limited to XML documents. The same
holds for RML [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] when mapping XML documents to RDF.
Two mappings were created for the first experiment: one applying
a function that multiplies x with x, and one where that
multiplication is part of the SQL query.10 Again executing each mapping
110 times in the same process and only taking the last 100 times
into account, we now notice that the p-value is 0.00541 indicating
that there is strong evidence against the two mappings being
equal, with M1 performing better. Similarly, two mappings were
created for the second experiment: one passing x and y to a
function and one doing the multiplication in the query. Again, there is
strong evidence that both mappings are different (p-value =
0.0000000204), and this time in favor of M2. From these
additional experiments, we conclude that further experiments – both in
terms of dataset size and varying complexity of functions – are
necessary to evaluate performance
      </p>
    </sec>
    <sec id="sec-5">
      <title>5. RELATED WORK</title>
      <p>
        We have to note that functions in transformations have been
studied in different domains, such as model-to-model transformations,
for which specifications have been developed. One noteworthy
example of such a specification in that domain is
Query/View/Transformation (QVT) defined by the Object
Management Group allowing one access to operators, constructs and
functions to transform UML into, for instance, ER [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. QVT and
similar approaches have been adopted in the Semantic Web
community to transform meta-models in e.g., UML into OWL
ontologies [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], but this is a different problem than the one we address.
In this study, we incorporated the notion in a W3C
Recommendation for publishing data as RDF. The adoption of RDF allows one
to furthermore publish the functions that were developed.
On capturing functions in mappings. Hert et al. presented a
survey in which they investigated the capabilities of RDB-2-RDF
tools, both direct and annotated [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. One of the aspects they
investigated was “Transformation Functions”, which are user-defined
functions to transform the (syntactic) representation in RDF. In
their survey, they consider this aspect covered when the
underlying database technology supports these conversions. Our approach
is different as we capture those functions in the mapping.
ECMAScript provides the ability to load (external) scripts, and
hence functionality not necessarily available by the underlying
technology.
      </p>
      <p>
        XSPARQL [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] – initially developed to mediate between XML and
RDF via SPARQL and XQuery – has recently been used as an
R2RML processor [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Since the XQuery specification prescribes
support for defining user-defined functions, one should be able to
10 Unlike the previous experiment, the outcome of the function
using the underlying technology does not need to be cast to a
different data type and therefore no third mapping to analyze
that overhead is needed.
      </p>
      <p>
        On representing functions. SPIN [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] provides concepts and
predicates for describing functions that we have decided not to
reuse. One of the important differences is that SPIN proposes the
use of predicates sp:arg1, …, sp:argn for binding the
parameters. We consider the use RDF Collections more elegant. As
[
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] noted, Apache Jena11 allows one to integrate functions by
extending special abstract Java classes which are then available
via a special namespace. This, however, creates a dependency on
both Java and Apache Jena. All of this also holds for SPIN as it is
built on top of Jena.
      </p>
      <p>
        On R2RML extensions. RML [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] and xR2RML [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ] extended
R2RML to provide support for generating RDF from different
types of structured resources such as XML and CSV. One can see
how the ideas presented in this paper can easily be merged with
those initiatives. At this stage, however, we choose to extend
R2RML validate our ideas and will consider RML at a later stage.
6. CONCLUSIONS AND FUTURE WORK
Capturing procedural knowledge in R2RML either relies on the
underlying relational database technology or on data
preprocessing. If one is willing to trade tractability in for richer
mappings, sharing and declaring richer mappings is possible.
We presented R2RML-F, which extends R2RML with treating
function calls as a term map. Using a use case from the geospatial
domain, we demonstrated our approach and conducting an
experiment to evaluate its performance with a mapping relying on
functions provided by the underlying database technology. Our initial
results show that our approach is viable and that there seems to be
little impact on the performance.
      </p>
      <p>Future work includes additional experiments to validate our
findings and developing additional scenarios and use cases to
motivate the need for incorporating functions in a mapping, e.g., those
calling web services.</p>
    </sec>
    <sec id="sec-6">
      <title>7. ACKNOWLEDGMENTS</title>
      <p>This study is supported by the Science Foundation Ireland (Grant
13/RC/2106) as part of the ADAPT Centre for Digital Content
Platform Research (http://www.adaptcentre.ie/) at Trinity College
Dublin. We thank the Ordnance Survey Ireland (OSi) for
permitting us to use their boundaries dataset for the purposes of this
research project. Within OSi, we are especially grateful for the
input and domain expertise provided by Lorraine McNerney and
Éamonn Clinton.
11 https://jena.apache.org/</p>
    </sec>
    <sec id="sec-7">
      <title>APPENDIX</title>
      <p>Here we provide listings referred to in the text.
&lt;#TriplesMap1&gt;
rr:logicalTable [
rr:sqlQuery """SELECT id, name, ST_AsText(geom)</p>
      <p>AS geom FROM boundaries.county""" ;
] ;
rr:subjectMap [
rr:template "http://data.example.com/county/{id}" ;
] ;
rr:predicateObjectMap [
rr:predicate ex:name ;
rr:termType rr:Literal;
rr:objectMap [ rr:column "name" ];
] ;
rr:predicateObjectMap [
rr:predicate ex:point ;
rr:objectMap [
rr:termType rr:Literal;
rrf:functionCall [
rrf:function &lt;#Transform&gt; ;
rrf:parameterBindings (
[ rr:column "geom" ]
) ;
] ;
] ;
] ;
.</p>
      <p>Listing 4: An R2RML-F mapping transforming points from a
geometry cast to a string with a function captured in the
mapping (mapping M2). Differences wrt Listing 3 are highlighted.
&lt;#TriplesMap1&gt;
rr:logicalTable [
rr:sqlQuery """SELECT id, name,</p>
      <p>ST_AsText(ST_Transform(geom,4326))</p>
      <p>AS geom FROM boundaries.county""" ;</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>M.</given-names>
            <surname>Arenas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Bertails</surname>
          </string-name>
          , E. Prud'hommeaux,
          <string-name>
            <given-names>J.</given-names>
            <surname>Sequeda</surname>
          </string-name>
          .
          <article-title>A Direct Mapping of Relational Data to RDF. W3C Recommendation, W3C</article-title>
          , Sep.
          <year>2012</year>
          . https://www.w3.org/TR/rdbdirect-mapping/
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>T.</given-names>
            <surname>Berners-Lee</surname>
          </string-name>
          .
          <source>Relational Databases on the Semantic Web</source>
          ,
          <year>1998</year>
          . Via https://www.w3.org/DesignIssues/RDBRDF.html,
          <source>last accessed January</source>
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>P. A.</given-names>
            <surname>Bernstein</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Melnik</surname>
          </string-name>
          .
          <source>Model management 2</source>
          .
          <article-title>0: manipulating richer mappings</article-title>
          . In C. Y.
          <string-name>
            <surname>Chan</surname>
            ,
            <given-names>B. C.</given-names>
          </string-name>
          <string-name>
            <surname>Ooi</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <surname>A</surname>
          </string-name>
          . Zhou, editors,
          <source>Proceedings of the ACM SIGMOD International Conference on Management of Data</source>
          , Beijing, China, June 12-14,
          <year>2007</year>
          , pages
          <fpage>1</fpage>
          -
          <lpage>12</lpage>
          . ACM,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>S.</given-names>
            <surname>Bischof</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Decker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Krennwallner</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Lopes</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>A.</given-names>
            <surname>Polleres</surname>
          </string-name>
          .
          <article-title>Mapping between RDF and XML with XSPARQL</article-title>
          .
          <source>J. Data Semantics</source>
          ,
          <volume>1</volume>
          (
          <issue>3</issue>
          ):
          <fpage>147</fpage>
          -
          <lpage>185</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>D.</given-names>
            <surname>Brickley</surname>
          </string-name>
          and
          <string-name>
            <given-names>R. V.</given-names>
            <surname>Guha</surname>
          </string-name>
          .
          <source>RDF Schema 1.1. W3C Recommendation</source>
          , W3C, Feb.
          <year>2014</year>
          . https://www.w3.org/TR/rdfschema/
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>S.</given-names>
            <surname>Das</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Sundara</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Cyganiak</surname>
          </string-name>
          .
          <article-title>R2RML: RDB to RDF Mapping Language</article-title>
          .
          <source>W3C Recommendation</source>
          , W3C, Sep.
          <year>2012</year>
          . https://www.w3.org/TR/r2rml/
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>D.</given-names>
            <surname>Dell'Aglio</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Polleres</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Lopes</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Bischof</surname>
          </string-name>
          .
          <article-title>Querying the web of data with XSPARQL 1.1</article-title>
          .
          <string-name>
            <surname>In</surname>
            <given-names>R.</given-names>
          </string-name>
          <string-name>
            <surname>Verborgh</surname>
          </string-name>
          and E. Mannens, editors,
          <source>Proceedings of the ISWC Developers Workshop</source>
          <year>2014</year>
          , co
          <article-title>-located with the 13th International Semantic Web Conference (ISWC</article-title>
          <year>2014</year>
          ),
          <source>Riva del Garda</source>
          , Italy, October
          <volume>19</volume>
          ,
          <year>2014</year>
          , volume
          <volume>1268</volume>
          <source>of CEUR Workshop Proceedings</source>
          , pages
          <fpage>113</fpage>
          -
          <lpage>118</lpage>
          . CEUR-WS.org,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A.</given-names>
            <surname>Dimou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. Vander</given-names>
            <surname>Sande</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Colpaert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Verborgh</surname>
          </string-name>
          , E. Mannens, and R. Van de Walle.
          <article-title>RML: A generic language for integrated RDF mappings of heterogeneous data</article-title>
          . In C. Bizer,
          <string-name>
            <given-names>T.</given-names>
            <surname>Heath</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Auer</surname>
          </string-name>
          , and
          <string-name>
            <surname>T.</surname>
          </string-name>
          Berners-Lee, editors,
          <source>Proceedings of the Workshop on Linked Data on the Web colocated with the 23rd International World Wide Web Conference (WWW</source>
          <year>2014</year>
          ), Seoul, Korea, April 8,
          <year>2014</year>
          , volume
          <volume>1184</volume>
          <source>of CEUR Workshop Proceedings. CEUR-WS.org</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>M.</given-names>
            <surname>Hert</surname>
          </string-name>
          , G. Reif, and
          <string-name>
            <given-names>H. C.</given-names>
            <surname>Gall</surname>
          </string-name>
          .
          <article-title>A comparison of RDF-toRDF mapping languages</article-title>
          . In C. Ghidini,
          <string-name>
            <given-names>A. N.</given-names>
            <surname>Ngomo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S. N.</given-names>
            <surname>Lindstaedt</surname>
          </string-name>
          , and T. Pellegrini, editors,
          <source>Proceedings the 7th International Conference on Semantic Systems, I-SEMANTICS</source>
          <year>2011</year>
          , Graz, Austria, September 7-
          <issue>9</issue>
          ,
          <year>2011</year>
          , ACM International Conference Proceeding Series, pages
          <fpage>25</fpage>
          -
          <lpage>32</lpage>
          . ACM,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>O.</given-names>
            <surname>Kovalenko</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Debruyne</surname>
          </string-name>
          , E. Serral, and
          <string-name>
            <given-names>S.</given-names>
            <surname>Biffl</surname>
          </string-name>
          .
          <article-title>Evaluation of technologies for mapping representation in ontologies</article-title>
          . In R. Meersman,
          <string-name>
            <given-names>H.</given-names>
            <surname>Panetto</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. S.</given-names>
            <surname>Dillon</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Eder</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Z.</given-names>
            <surname>Bellahsene</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Ritter</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. D.</given-names>
            <surname>Leenheer</surname>
          </string-name>
          , and D. Dou, editors,
          <source>On the Move to Meaningful Internet Systems: OTM 2013</source>
          Conferences - Confederated International Conferences: CoopIS,
          <string-name>
            <surname>DOA-Trusted</surname>
            <given-names>Cloud</given-names>
          </string-name>
          ,
          <source>and ODBASE</source>
          <year>2013</year>
          , Graz, Austria, September 9-
          <issue>13</issue>
          ,
          <year>2013</year>
          . Proceedings, volume
          <volume>8185</volume>
          <source>of LNCS</source>
          , pages
          <fpage>564</fpage>
          -
          <lpage>571</lpage>
          . Springer,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>H.</given-names>
            <surname>Knublauch</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J. A.</given-names>
            <surname>Hendler</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            <surname>Idehen. SPIN - Overview</surname>
          </string-name>
          and Motivation.
          <source>W3C Member Submission, W3C</source>
          , Feb.
          <year>2011</year>
          . https://www.w3.org/Submission/spin-overview/
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>D.</given-names>
            <surname>McGuinness</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Lebo</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Sahoo.</surname>
          </string-name>
          PROV-O:
          <article-title>The PROV ontology</article-title>
          .
          <source>W3C Recommendation</source>
          , W3C, Apr.
          <year>2013</year>
          . http://www.w3.org/TR/2013/REC-prov-o-
          <volume>20130430</volume>
          /.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>F.</given-names>
            <surname>Michel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Djimenou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Faron-Zucker</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <given-names>J.</given-names>
            <surname>Montagnat</surname>
          </string-name>
          .
          <article-title>Translation of relational and non-relational databases into RDF with xR2RML</article-title>
          . In V. Monfort,
          <string-name>
            <given-names>K.</given-names>
            <surname>Krempels</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T. A.</given-names>
            <surname>Majchrzak</surname>
          </string-name>
          , and
          <string-name>
            <surname>Z</surname>
          </string-name>
          . Turk, editors,
          <source>WEBIST 2015 - Proceedings of the 11th International Conference on Web Information Systems and Technologies</source>
          , Lisbon, Portugal,
          <fpage>20</fpage>
          -22 May,
          <year>2015</year>
          , pages
          <fpage>443</fpage>
          -
          <lpage>454</lpage>
          . SciTePress,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14] The Object Management Group.
          <source>Meta Object Facility (MOF) 2</source>
          .0 Query/View/-Transformation Specification,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>J.</given-names>
            <surname>Unbehauen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Hellmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Auer</surname>
          </string-name>
          , and
          <string-name>
            <given-names>C.</given-names>
            <surname>Stadler</surname>
          </string-name>
          .
          <article-title>Knowledge extraction from structured sources</article-title>
          . In S. Ceri and M. Brambilla, editors, Search Computing - Broadening Web
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>J.</given-names>
            <surname>Zedlitz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Jörke</surname>
          </string-name>
          , and
          <string-name>
            <given-names>N.</given-names>
            <surname>Luttenberger</surname>
          </string-name>
          .
          <source>Knowledge Technology: Third Knowledge Technology Week, KTW</source>
          <year>2011</year>
          , Kajang, Malaysia,
          <source>July 18-22</source>
          ,
          <year>2011</year>
          .
          <article-title>Revised Selected Papers, chapter From UML to OWL 2</article-title>
          , pages
          <fpage>154</fpage>
          -
          <lpage>163</lpage>
          . Springer Berlin Heidelberg, Berlin, Heidelberg,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>