<!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>RDF-based Deployment Pipelining for E Dataset Release Management cient</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Claus Stadler</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Institute for Applied Informatics (InfAI)</institution>
          ,
          <addr-line>Goerdelerring 9, Leipzig, Germany, D-04109</addr-line>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>eccenca GmbH</institution>
          ,
          <addr-line>Hainstrasse 8, Leipzig, Germany, D-04109</addr-line>
        </aff>
      </contrib-group>
      <abstract>
        <p>Open Data portals often struggle to provide release features (i.e., stable versioning, up-to-date download links, rich metadata descriptions) for their datasets. By this means, wide adoption of publicly available data collections is hindered, since consuming applications cannot access fresh data sources or might break due to data quality issues. While there exists a variety of tools to e ciently control release processes in software development, the management of dataset releases is not as clear. This paper proposes a deployment pipeline for e cient dataset releases that is based on automated enrichment of DCAT/DataID metadata and is a rst step towards e cient deployment pipelining for Open Data publishing.</p>
      </abstract>
      <kwd-group>
        <kwd>Deployment</kwd>
        <kwd>Open Data</kwd>
        <kwd>DCAT</kwd>
        <kwd>DataID</kwd>
        <kwd>Data Quality</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        With the advent of the Open Data movement, a multitude of datasets have been
made available on public repositories.3,4 Therefore, researchers have developed
methodologies to manage the data publishing process e ciently [
        <xref ref-type="bibr" rid="ref13 ref9">9, 13</xref>
        ]. There
also exist software tools that (semi-)automatically assist data publishers
during data conversion [
        <xref ref-type="bibr" rid="ref15 ref2">2, 15</xref>
        ], quality assurance [
        <xref ref-type="bibr" rid="ref16 ref5">5, 16</xref>
        ], linking [
        <xref ref-type="bibr" rid="ref11 ref14">11, 14</xref>
        ], metadata
enrichment and data provision [
        <xref ref-type="bibr" rid="ref12 ref13 ref8">8, 12, 13</xref>
        ]. However, the integration of these
separate publishing phases has not been entirely addressed by academia. Instead,
the combination of the required tasks is often handled by individuals who need
to manually execute hand-crafted transformations to make up for the missing
technical links between the existing data processing units. This hinders frequent
releases of fresh datasets as well as the reuse of data publishing pipelines across
di erent application domains. Since quality assurance, timeliness and
discoverability are among the most important preconditions for stakeholders and
applications to actually consume the data [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], these issues should have priority when
publishing data collections. Hence, e cient software tools need to be in place to
speed up publishing work ows and minimize manual adaptations thereby
reducing error-proneness. In this context, the provision of automatic tools for bridging
the phases of data conversion/preprocessing and the nal dataset release is
particularly relevant. Here, methods from the eld of software engineering, such as
versioning, stable download links, automated testing and metadata enrichment
can serve as guiding best practices. However, the process of data publication also
exhibits some speci cs that need to be considered when developing deployment
tools. In this paper, we present a methodology and a prototypical implementation
of a deployment pipeline for automated release management of data collections
based on RDF. We use a strict de nition of dataset as the foundation for data
management: A dataset is an instance of a data model. Hence, any procedures
that yield (syntactic) representations of that instance, such as a CSV-to-RDF
mapping and its materialization, are considered as di erent distribution forms
of the same dataset.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        The research on e cient and integrated data release management is still in its
infancy [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. For instance, although the DataGraft application by Roman et al.
enables data conversion and publication [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ], the tool does not provide features
to handle di erent dataset versions. On the other hand, while Rojas Melendez
et al. formulate the requirement of versioning for their Linked Data
publication platform, the approach does not consider DevOps best practices [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. In
contrast, in software development, strategies of continuous integration (CI) are
widespread. During CI processing, code repositories are frequently checked for
updates and troubleshooting operations are triggered in case errors are found.
Thus, it is ensured that released software ful lls qualitative requirements and
that other applications can make use of the most recent updates [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. However,
current CI methods can not be transferred to data publishing 1:1. Proposals for
adaptations have been made by Cirulli et al., who suggest to maintain the code
for data conversion on a Jenkins server [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Meissner et al. present an
integration pipeline that gets triggered upon new repository commits [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]. But these
approaches are missing a clear versioning concept on the data level as well as
methods to automatically add metadata to dataset releases. The issue of
enhancing metadata is addressed by Frey et al., who present a novel strategy of
publishing large datasets with their FlexiFusion approach [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. However, a
holistic method for deployment pipelining that considers all relevant aspects of the
dataset release process has not yet been presented.
3
      </p>
    </sec>
    <sec id="sec-3">
      <title>Use Case - The LIMBO Project</title>
      <p>The German Federal Ministry of Transport and Digital Infrastructure is
providing the mCLOUD Open Data portal, where currently more than 1070 datasets
on roads, rails, air tra c and waterways can be found. Additionally, the
platform contains collections of space, climate and weather data. The datasets are
published by the ministry and associated publicly funded agencies. By providing
an Open Data portal, the ministry intends to harness research and development
projects working on novel navigational services, smart travel and route
planning as well as applications for highly precise weather forecasting.5 However, the
mCLOUD data is provided in heterogeneous formats, not semantically described
and poorly integrated with other data collections. Hence, the research project
Linked Data Services for Mobility (LIMBO) has been started to convert selected
datasets from the mCLOUD portal to RDF and link them to other datasets on
the Linked Open Data cloud.6 As the original data is subject to changes,
conversion processes are re-run frequently thus making e cient deployment and release
pipelines necessary.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Dataset Deployment Pipeline</title>
      <p>
        Repository management services, such as Github, Gitlab or Bitbucket provide
numerous useful features, which can be con gured for dataset publication. With
the successful Git branching model 7 there also exists a best practice for
organizing release work ows. In a nutshell, only releases should be committed to
the master branch. Currently, the LIMBO datasets including the deployment
build tools can be accessed on the public gitlab instance.8 New (versions of)
datasets are published by running Make le build commands in a Git
repository containing the raw RDF les. The deployment pipeline can be invoked in
a broadly prede ned, but con gurable order of execution. The build process
triggers data transformation, RDFUnit-based testing 9 and metadata enrichment
tasks (Fig. 1). During the test state, the data is checked for both schema
alignment and general data quality. The corresponding error reports are automatically
generated by RDFUnit. Thus, third-party consumers can assess the quality of
datasets. During metadata enrichment, the deployment process assembles a
local DCAT model of the dataset project and allows modi cations to be speci ed
with SPARQL update statements utilizing the tool Sparql-Integrate.10 This tool
is a thin command-line wrapper for Jena's ARQ SPARQL engine11 which
registers several extensions, such as for passing environment variables from shell
scripts to SPARQL queries. Upon release, rst a release branch is created. Local
le references in the assembled DCAT model are converted to public download
URLs, yielding a DCAT record ready for publication in a dataset catalog with
Maven-style group, artifact and version identi ers as proposed by [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]
5 https://www.mcloud.de/
6 https://www.limbo-project.org/
7 https://nvie.com/posts/a-successful-git-branching-model/
8 https://gitlab.com/limbo-project/dataset-includes
9 https://github.com/AKSW/RDFUnit
10 https://github.com/SmartDataAnalytics/SparqlIntegrate
11 http://jena.apache.org/
for the DataID model. One of the most important bene ts of our approach is
that links to prior releases of any datasets contained in the Git repository can
automatically be made part of a release record by inspecting whether the
master branch already contains a prior one. If so, owl:priorVersion links can be
created between all dataset identi ers with matching attributes, such as group
and artifact id. Upon nalization, the release branch is merged into master and
subsequently deleted, and a Git tag is created. In typical cases, this process only
requires invoking the make goals release-start and release- nish. By this means,
applications that rely on stable data can determine current releases from the
metadata catalog.12
In this paper, we have presented a Git-based methodology for publishing
validated stable releases of datasets and corresponding DCAT records. Stable
releases are bene cial for applications in many ways, such as when it comes to
predictability and reproducibility of results, testing, and caching of derived
information for performance-reasons. Up to date, we published a couple of datasets
of the mCLOUD with our approach. As this approach does not depend on
hosting new custom services, maintenance overhead is minimized. The adoption of
Maven's and DataID's artifact identi cation scheme promises future
interoperability with other existing infrastructures for data asset management, such as
the Quit di tool [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], which provides functions to determine changes between
dataset versions.
      </p>
    </sec>
    <sec id="sec-5">
      <title>Acknowledgement</title>
      <p>This work has been supported by the Federal Ministry of Transport and
Digital Infrastructure (BMVI) for the LIMBO project under the grant numbers
19F2029A and 19F2029G.
12 https://gitlab.com/limbo-project/metadata-catalog</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Arndt</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Radtke</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          (
          <year>2016</year>
          ).
          <article-title>Quit di : Calculating the delta between rdf datasets under version control</article-title>
          .
          <source>In Proceedings of the 12th International Conference on Semantic Systems</source>
          (pp.
          <fpage>185</fpage>
          -
          <lpage>188</lpage>
          ). ACM.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Auer</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dietzold</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lehmann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hellmann</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Aumueller</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          (
          <year>2009</year>
          ).
          <article-title>Triplify: light-weight linked data publication from relational databases</article-title>
          .
          <source>In Proceedings of the 18th international conference on World wide web</source>
          (pp.
          <fpage>621</fpage>
          -
          <lpage>630</lpage>
          ). ACM.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3. Brummer,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Baron</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Ermilov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            ,
            <surname>Freudenberg</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Kontokostas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            and
            <surname>Hellmann</surname>
          </string-name>
          ,
          <string-name>
            <surname>S.</surname>
          </string-name>
          (
          <year>2014</year>
          ).
          <article-title>DataID: Towards semantically rich metadata for complex datasets</article-title>
          .
          <source>In Proceedings of the 10th International Conference on Semantic Systems</source>
          (pp.
          <fpage>84</fpage>
          -
          <lpage>91</lpage>
          ). ACM.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Cirulli</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2015</year>
          ).
          <article-title>Continuous integration for XML and RDF Data</article-title>
          .
          <source>XML LONDON</source>
          ,
          <volume>52</volume>
          -
          <fpage>60</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Dimou</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kontokostas</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Freudenberg</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Verborgh</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lehmann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mannens</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hellmann</surname>
            , S. and Van de Walle,
            <given-names>R.</given-names>
          </string-name>
          (
          <year>2015</year>
          ).
          <article-title>Assessing and Re ning Mappings to RDF to Improve Dataset Quality</article-title>
          . In International Semantic Web Conference (pp.
          <fpage>133</fpage>
          -
          <lpage>149</lpage>
          ). Springer, Cham.
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Frey</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hofer</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hellmann</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Obraczka</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <article-title>DBpedia FlexiFusion Best of Wikipedia i Wikidata i Your Data</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Fowler</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Foemmel</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          (
          <year>2006</year>
          ).
          <article-title>Continuous integration</article-title>
          . Thought-Works. https://www.martinfowler.com/articles/continuousIntegration.html.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Kl</surname>
            <given-names>mek</given-names>
          </string-name>
          , J.,
          <string-name>
            <surname>Skoda</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Necasky</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          (
          <year>2016</year>
          ).
          <article-title>Requirements on Linked Data Consumption Platform</article-title>
          . In LDOW at WWW.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Kucera</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Chlapek</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kl</surname>
            <given-names>mek</given-names>
          </string-name>
          , J. and
          <string-name>
            <surname>Necasky</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          (
          <year>2015</year>
          ).
          <article-title>Methodologies and Best Practices for Open Data Publication</article-title>
          . DATESO.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Meissner</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Junghanns</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          (
          <year>2016</year>
          ).
          <article-title>Using devOps principles to continuously monitor RDF data quality</article-title>
          .
          <source>In Proceedings of the 12th International Conference on Semantic Systems</source>
          (pp.
          <fpage>189</fpage>
          -
          <lpage>192</lpage>
          ). ACM.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Ngomo</surname>
            ,
            <given-names>A. C. N.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Auer</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2011</year>
          ).
          <article-title>LIMES a time-e cient approach for largescale link discovery on the web of data</article-title>
          . In Twenty-Second
          <source>International Joint Conference on Arti cial Intelligence.</source>
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>Rojas</given-names>
            <surname>Melendez</surname>
          </string-name>
          ,
          <string-name>
            <surname>J. A.</surname>
          </string-name>
          , Van de Vyvere,
          <string-name>
            <given-names>B.</given-names>
            ,
            <surname>Gevaert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Taelman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            ,
            <surname>Colpaert</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            and
            <surname>Verborgh</surname>
          </string-name>
          ,
          <string-name>
            <surname>R.</surname>
          </string-name>
          (
          <year>2018</year>
          ).
          <article-title>A Preliminary Open Data Publishing Strategy for Live Data in Flanders</article-title>
          . In WWW2018, the International World Wide Web Conference (pp.
          <fpage>1847</fpage>
          -
          <lpage>1853</lpage>
          ). ACM Press.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Roman</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dimitrov</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nikolov</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Putlier</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sukhobok</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Elvester</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Petkov</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          (
          <year>2016</year>
          ).
          <article-title>Datagraft: Simplifying open data publishing</article-title>
          .
          <source>In European Semantic Web Conference</source>
          (pp.
          <fpage>101</fpage>
          -
          <lpage>106</lpage>
          ). Springer, Cham.
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Schultz</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Matteini</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Isele</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bizer</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Becker</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2011</year>
          ).
          <article-title>LDIF-linked data integration framework</article-title>
          .
          <source>In Proceedings of the Second International Conference on Consuming Linked Data-Volume</source>
          <volume>782</volume>
          (pp.
          <fpage>125</fpage>
          -
          <lpage>130</lpage>
          ).
          <source>CEUR-WS.org.</source>
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Unbehauen</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Stadler</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Auer</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2012</year>
          ).
          <article-title>Accessing relational data on the web with sparqlmap</article-title>
          .
          <source>In Joint International Semantic Technology Conference</source>
          (pp.
          <fpage>65</fpage>
          -
          <lpage>80</lpage>
          ). Springer, Berlin, Heidelberg.
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Zaveri</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rula</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maurino</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pietrobon</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lehmann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Auer</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2016</year>
          ).
          <article-title>Quality assessment for linked data: A survey</article-title>
          .
          <source>Semantic Web</source>
          ,
          <volume>7</volume>
          (
          <issue>1</issue>
          ),
          <fpage>63</fpage>
          -
          <lpage>93</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>