<!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>
      <article-id pub-id-type="doi">10.1007/s13748-021-00241-7</article-id>
      <title-group>
        <article-title>Enriching Data Lakes with Knowledge Graphs</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Alessandro Chessa</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gianni Fenu</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Enrico Motta</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Francesco Osborne</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Diego Reforgiato Recupero</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Angelo Salatino</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Luca Secchi</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Linkalab s.r.l.</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Cagliari</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Italy</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Knowledge Media Institute, The Open University</institution>
          ,
          <addr-line>Milton Keynes</addr-line>
          ,
          <country country="UK">United Kingdom</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Luiss Data Lab</institution>
          ,
          <addr-line>Rome</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>University of Cagliari</institution>
          ,
          <addr-line>Cagliari</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2022</year>
      </pub-date>
      <volume>2980</volume>
      <fpage>0000</fpage>
      <lpage>0003</lpage>
      <abstract>
        <p>Data lakes are repositories of data stored in natural/raw format. A data lake may include structured data from relational databases, semi-structured data (i.e., JSON, CSV), unstructured data (i.e., text data), or binary data (i.e., images, audio, video). It is usually built on top of cost-eficient infrastructures such as Hadoop, Amazon S3, MongoDB, ElasticSearch, etc. Several organisations rely on big data lakes for crucial tasks such as reporting, visualisation, advanced analytics, machine learning, and business intelligence. A major limitation of this solution is that without descriptive metadata and a mechanism to maintain it, such data tend to be noisy, making their management and analysis complex and time-consuming. Therefore, there is the need to add a semantic layer based on a formal ontology to describe the data and eficient mechanism to represent them as a knowledge graph. In this paper, we present a methodology to add a semantic layer to a data lake and thus obtain a knowledge graph that can support structured queries and advanced data exploration. We describe a practical implementation of a methodology applied to a data lake consisting of text data describing the online marketplace for lodging and tourism activities. We report statistics about the data lake and the resulting knowledge graph.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Semantic Data Lake</kwd>
        <kwd>Knowledge Graphs</kwd>
        <kwd>Information Extraction</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. Introduction</title>
      <p>The term “data lake" was introduced by James Dixon, Chief Technology Oficer of Pentaho, in a
blog post in 20101. Data lakes are data repositories for storing large and heterogeneous sets of
raw data. They have quickly become a common data management solution for organizations
that desire to own a holistic and large repository for their data. Data lakes allow users to access
and explore data without the need to move them into another system. Insights and reporting
performed from a data lake typically occur on an ad-hoc basis. However, users might apply a
schema and a certain degree of automation to the data to make it possible to duplicate a report
when needed.</p>
      <p>
        Data in a data lake are stored in their raw format and are not transformed until they are
needed for analysis. Also in such a case, a schema is somehow applied so that they can be
analyzed. This way of working is called “schema on read" [
        <xref ref-type="bibr" rid="ref1 ref2">1, 2</xref>
        ], because data are kept raw until
they are ready to be used. Although it is always possible to use a schema-on-read approach,
it is not optimal for performances and optimising costs, thus sometimes data is transformed
and stored using specific file formats (e.g., Parquet, AVRO, ORC) that can handle also schema
information. Data lakes require governance to establish continual maintenance and to keep the
data usable and accessible. Otherwise, the risk is to end up with data which become inaccessible,
unwieldy, expensive, and useless; culminating to what is often referred as “data swamps"2. In
order to address this limitation, it is useful to rely on a semantic layer: a representation of data
based on semantic technologies and a formal ontology that can ofer a unified, consolidated
view of data across the organisation.
      </p>
      <p>
        Several attempts have been done to provide a semantic layer to data lakes and each of them
has targeted a particular domain of application [
        <xref ref-type="bibr" rid="ref10 ref3 ref4 ref5 ref6 ref7 ref8 ref9">3, 4, 5, 6, 7, 8, 9, 10</xref>
        ]. However, to the best of our
knowledge, no one has ever applied this solution in the domain of tourism. In this paper, we
propose a practical implementation for the creation of a semantic layer to generate a knowledge
graph from a data lake consisting of text data. We applied this solution in the tourism domain,
developing a knowledge graph of accommodation facilities in London, leveraging the Data Lake
Turismo platform. Our solution takes advantage of entity linking approaches for extracting and
interlinking several entities (e.g., places, food, amenities) from reviews and other textual fields,
allowing a much more comprehensive representation of accommodations and touristic locations.
This Data Lake Turismo was developed by Linkalab s.r.l.3, capitalising on a previous research
project promoted by the Digital Innovation Hub of Sardinia4 and Fondazione di Sardegna5.
      </p>
      <p>The remainder of this paper is organised as it follows. Section 2 focuses on the previous
works on semantic layers for data lakes. Section 3 describes our methodology and presents the
implementation in the tourism domain. We provide also statistics and information about the
resulting knowledge graph. Section 4 ends the paper with conclusions and future works.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Related Work</title>
      <p>
        A knowledge graph [
        <xref ref-type="bibr" rid="ref11 ref12">11, 12, 13, 14, 15, 16, 17</xref>
        ] is a knowledge base that uses a graph-structured
data model to integrate data. It represents a network of real-world entities, i.e., objects, events,
situations, or concepts, and illustrates the relationship between them.
      </p>
      <p>
        Dibowski et al. [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] discussed how to address data findability, accessibility, interoperability, and
re-use for data stored in a data lake. They showed the benefits provided to a data lake through
the support of ontologies and knowledge graphs which provide cataloguing of data, tracking
provenance, access control, and semantic search. In particular, they built the DCPAC ontology
2https://developer.ibm.com/articles/ba-data-becomes-knowledge-2/
3Linkalab s.r.l. is a Italian small enterprise specialised in data science and data engineering. Home page https:
//www.linkalab.it/
4https://www.dihsardegna.eu/
5https://www.fondazionedisardegna.it/
(Data Catalog, Provenance, and Access Control) related to the management of data produced by
vehicles. Similarly, Diamantini et al. [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] presented a semantic model for the correct data fruition
stored into a data lake. They mapped the indicators of interest, the dimensions of analysis and
formulas into a knowledge graph to support the correct identification of data. Pomp et al. [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]
had similar problems related to the collection, finding, understanding and accessing of large
data sources with the goal of ensuring their real-time availability. To reduce the time from the
collection to the analysis of data, they centralised the data in a data lake. Instead of populating
the data lake of unstructured data, they proposed a semantic data platform called ESKAPE for
the semantic annotation of the ingested data. Furthermore, a knowledge graph has been defined
to act as an index that evolves over time according to the data that are included. In this way,
users can easily identify and analyse the data coming from the diferent places. Bagozi et al. [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]
proposed a semantics-based approach for the personalised exploration of data lakes within the
domain of smart cities. First, they provided the data lake with a semantic model using domain
ontologies. Then, another ontology was adopted to describe indicators and analysis dimensions.
Finally, personalised exploration graphs were generated for diferent types of users. Another
work worth mentioning is by Ansari et al. [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], who proposed a semantic profiling tool for
metadata extension in data lake systems. Its aim was to understand the meaning of data. Their
tool recognised the meaning of data at schema and instance level using domain vocabularies
and ontologies. Finally, Mami [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] proposed a physical and a logical data integration whose
goal was to query large and heterogeneous data sources. For the physical data integration they
defined an ontology to transform the data into RDF.
      </p>
      <p>Diferently from the approaches above, we propose a methodology to extend a data lake
containing data extracted from touristic platforms with a semantic layer and produce a
knowledge graph. To this end, we engineered an ontology in the touristic domain integrating already
existing ontologies and extending them with our classes. However, the focus of this manuscript
is not on the ontology but on the extracted knowledge graph and the steps we performed to
transform the data from the data lake to the knowledge graph.</p>
    </sec>
    <sec id="sec-3">
      <title>3. The Proposed Methodology</title>
      <p>In this section, we describe our methodology for enriching a data lake by creating a domain
ontology and generating a knowledge graph that will extend the data lake with a sophisticated
representation of knowledge. This approach is articulated in five steps: i) analysis of the data
sources; ii) definition of the use cases; iii) creation of the ontology; iv) data transformation; and
v) generation of the knowledge graph. In the following we will briefly describe each phase.</p>
      <sec id="sec-3-1">
        <title>3.1. Analysis of the data sources</title>
        <p>The data lake we have used comes as a result of the Data Lake Turismo6 project whose aim
was to create a digital platform of tourism data. The data lake was developed by Linkalab7
through Amazon Web Services (AWS) cloud computing technologies including S3 where the</p>
        <sec id="sec-3-1-1">
          <title>6Turismo means tourism in Italian. 7Linkalab - https://www.linkalab.it/</title>
          <p>data was stored. The data lake collected data from various sources using an Extraction, Load
and Transformation (ELT) approach. A crawling system was developed to identify and extract
data related to the London Region8 area from various sources including Booking.com9 and
AirBnB10.</p>
          <p>The data lake is organised in three tiers: i) intake tier, where the raw data is collected, ii)
curated tier, where each transformed/cleaned version of the data is stored, and iii) consumption
tier, where the data is exposed to business analysts in many formats such as reports, dashboards,
APIs. In our specific scenario, the intake tier contains HTML files extracted from Booking.com,
and JSON files extracted using APIs exposed by AirBnB systems; the curated tier contains JSON
data extracted from the Booking.com HTML files; the consumption tier contains the knowledge
graph as a set of RDF triples.</p>
          <p>The data lake is built on AWS serverless technologies: Amazon S311 object storage is used to
store the files, AWS Lambda 12 and AWS Fargate13 are used to execute the crawling and the data
processing, Amazon Athena14 is used to query the data stored in JSON files using SQL language
while all technical metadata is managed using AWS Glue catalog15.</p>
          <p>The data lake describes three kinds of entities:
• lodging facilities i.e., any hotel, holiday house or other quarters that provide temporary
sleeping facilities open to the public16, which are described by specific properties like
name, address, geolocation, average user rating, textual description, pictures, related
amenities;
• accommodation ofers i.e., a specific place that can accommodate persons (e.g. a hotel
room, a camping pitch or an entire apartment) that is part of a lodging facility and is
ofered for lease under specific conditions; these ofers are characterised by specific
properties like number and type of beds, max and min occupancy, related amenities, price;
8The London Region area is an administrative area including the 32 London boroughs and the City of London.
9https://www.booking.com/
10https://www.airbnb.com/
11See https://aws.amazon.com/s3/
12See https://aws.amazon.com/lambda/
13See https://aws.amazon.com/fargate/
14Athena is a query engine based on PrestoDB. See https://aws.amazon.com/athena/ and https://prestodb.io/
15See https://aws.amazon.com/glue/
16Source: Law Insider, see https://www.lawinsider.com/dictionary/lodging-facilities
• user reviews about the lodging facility that are characterised by a rating value and a
text.</p>
          <p>Table 1 reports an overview of the number of business entities stored for both sources
(Booking.com and AirBnb). For AirBnb we have the same amount of lodging facilities and
accommodation ofers, because AirBnB associates each ofer to a unique lodging facility.
Conversely, in Booking.com a lodging facility (e.g., hotel) can ofer multiple accommodations (e.g.,
rooms).</p>
          <p>Table 2 summarize of the storage space used in the data lake. The main diference between
Booking.com and AirBnB is that the first is crawled exporting HTML pages that are then used
to extract the data whereas the latter is accessed using APIs to retrieve the data itself already in
JSON format.</p>
        </sec>
      </sec>
      <sec id="sec-3-2">
        <title>3.2. Definition of the use cases</title>
        <p>The purpose of the creation of the Data Lake Turismo project was to analyse the supply and
demand side of tourist destinations. During the project development the following use cases
have been identified in collaboration with the analysts of Linkalab:</p>
        <sec id="sec-3-2-1">
          <title>1. Identify the topics of interest in the tourists’ reviews;</title>
          <p>2. Identify the topics of interest in the text presentations of lodging businesses ofers;
3. Detect the sentiment [18] of tourists toward a certain lodging business or destinations;
4. Classify tourist destinations according to what they ofer and according to the tourist
opinions.</p>
          <p>To better support these use cases the data lake has been extended with a semantic layer
supported by an ontology. The resulting knowledge graph includes both data and metadata,
hence enhancing the support for developing dedicated services.</p>
        </sec>
      </sec>
      <sec id="sec-3-3">
        <title>3.3. Creation of the ontology</title>
        <p>A crucial step is the creation of a domain ontology that could support the use cases. For
this purpose is possible to rely on standard ontology engineering frameworks and evaluation
methodologies [19].</p>
        <p>In our implementation, the ontology has to satisfy both functional and non functional
requirements. As far as functional requirements are concerned, the ontology has to include
classes for lodging businesses (e.g., hotels, hostels, apartments), accommodations ofered by them
(e.g., rooms, suite), amenities for tourists, tourist attractions and points of interest, inter-relations
among entities (e.g., geographic relations, composition/inclusion), tourist reviews, tourist
destinations and taxonomies to support all of them. As far as the non functional requirements
are concerned the ontology must be defined in OWL, and be based on Schema.org17 and
GoodRelations18.</p>
        <p>To drive the creation of the ontology, we designed a set of competency questions and identified
a set of existing ontologies that have been used as support. The entire ontology creation is
not discussed in this manuscript because out of the scope of the paper which focuses on the
methodology for the creation of a knowledge graph to support a data lake.</p>
      </sec>
      <sec id="sec-3-4">
        <title>3.4. Data transformation</title>
        <p>The data transformation depends on the source data structures and on the desired output. The
steps needed to transform the data are: i) extraction of relevant structured data and texts from
the original sources; ii) data cleaning; iii) ontology mappings, to represent the entities in the
structured data according to the ontology; iv) language detection, to identify the source of the
language; v) identification and extraction of entities within the text.</p>
        <p>The last step is very crucial to obtain a good representation of the data, since many important
information are only expressed in natural language, especially in the text regarding the
description of the lodging facilities and reviews. To this purpose, we used DBpedia Spotlight entity
linking approach for extracting common entities such as activities, events, places, and food.</p>
        <p>We then integrated this information in the knowledge graph by linking DBpedia entities
with the relevant lodging facilities. This allows our system to support advanced queries such
as retrieving all the accommodations that are close to touristic attractions, those that ofer a
specific amenity or propose a special kind of food, but also looking for what places or events
users cite most frequently in their reviews.</p>
      </sec>
      <sec id="sec-3-5">
        <title>3.5. Generation of the knowledge graph</title>
        <p>
          The last step takes in input the refined data and the ontology and produced the knowledge
graph. To this purpose it is possible to rely on several languages and tools for the the automatic
generation of triples [20, 21]. In our implementation, we adopted the RDF Mapping Language
(RML) [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], which is one of the most well-known solutions in this space, to build specific data
pipelines for the creation of RDF triples. The RML language specifies how linked data are
produced from the corresponding data sources. To perform an RML transformation19 we need
three things: i) an RML processor; ii) an input data source; iii) a mapping from any (structured)
data in the input data source to RDF.
        </p>
        <p>
          Triples are generated for each of the triples maps of the RML mapping. In our prototype, we
used RMLMapper [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]20 for such a purpose. The triples representing the knowledge graph are
generated as N-Quads files 21 which are stored in the consumption tier of the data lake.
17https://schema.org/
18http://www.heppnetz.de/projects/goodrelations/
19https://rml.io/specs/rml/
20https://github.com/RMLio/rmlmapper-java
21See https://www.w3.org/TR/n-quads/
        </p>
        <p>We ingest new data from the original sources into the data lake every two months. We then
recreate the knowledge graph from scratch by repeating all the data transformations steps
described in Section 3.4.</p>
        <p>Table 3 reports some metrics about the last version of the knowledge graph: i) total
statements refers to the overall number of triples stored in the triplestore (both explicit and inferred),
ii) explicit statements refers to the number of raw triples created in the triplestore, iii)
inferred statements refers to the number of triples inferred by the reasoner from the explicit
statements, iv) expansion ratio represents the percentage of triples added using the inference.
The other metrics are self explanatory.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>4. Conclusions</title>
      <p>In this paper we have presented a general methodology for extending a data lake with a
knowledge graph. In particular, we have focused our analysis to the tourism domain by
considering a data lake containing structured and unstructured data crawled from Booking.com
and AirBnB. The knowledge graph thus obtained has been stored into a triplestore which can
be accessed online.</p>
      <p>We can conclude that the semantic layer provided by the knowledge graph brought many
advantages to Linkalab’s data lake platform: i) it treats data and metadata in a unified way,
ii) it has a flexible schema that can support the data variety and evolution, iii) it supports
algorithms and applications development and data science activities based on the data lake; iv)
it embeds information in its graph structure that can be leveraged by graph analytics [22, 23]
and representation learning [24] algorithms; v) it incorporates knowledge extracted from texts
along with structured and semi-structured data typically found in the data lake; vi) it can be
used to expand the data lake information context through connections with open knowledge
graphs like DBpedia.</p>
      <p>In future work, we aim to expand the pipeline for producing the knowledge graph by
developing new solutions for entity extraction and to further improve the ontology. We also plan to
develop a tool that will take advantage of the knowledge graph for analysing and comparing
accommodations and generating explainable recommendations.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>R. S.</given-names>
            <surname>Xin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Rosen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Zaharia</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. J.</given-names>
            <surname>Franklin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Shenker</surname>
          </string-name>
          ,
          <string-name>
            <surname>I. Stoica</surname>
          </string-name>
          ,
          <article-title>Shark: Sql and rich analytics at scale</article-title>
          ,
          <source>in: Proceedings of the 2013 ACM SIGMOD International Conference on Management of data</source>
          ,
          <year>2013</year>
          , pp.
          <fpage>13</fpage>
          -
          <lpage>24</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>C.</given-names>
            <surname>Mathis</surname>
          </string-name>
          , Data lakes,
          <source>Datenbank-Spektrum</source>
          <volume>17</volume>
          (
          <year>2017</year>
          )
          <fpage>289</fpage>
          -
          <lpage>293</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>A.</given-names>
            <surname>Bagozi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Bianchini</surname>
          </string-name>
          , V. De Antonellis,
          <string-name>
            <given-names>M.</given-names>
            <surname>Garda</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Melchiori</surname>
          </string-name>
          ,
          <article-title>Personalised exploration graphs onÂ semantic data lakes</article-title>
          , in: H.
          <string-name>
            <surname>Panetto</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Debruyne</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Hepp</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          <string-name>
            <surname>Lewis</surname>
            ,
            <given-names>C. A.</given-names>
          </string-name>
          <string-name>
            <surname>Ardagna</surname>
          </string-name>
          , R. Meersman (Eds.),
          <source>On the Move to Meaningful Internet Systems: OTM 2019 Conferences</source>
          , Springer International Publishing, Cham,
          <year>2019</year>
          , pp.
          <fpage>22</fpage>
          -
          <lpage>39</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>C.</given-names>
            <surname>Diamantini</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Potena</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            <surname>Storti</surname>
          </string-name>
          ,
          <article-title>A semantic data lake model for analytic query-driven discovery</article-title>
          ,
          <source>in: The 23rd International Conference on Information Integration and Web Intelligence</source>
          , iiWAS2021, Association for Computing Machinery, New York, NY, USA,
          <year>2021</year>
          , p.
          <fpage>183</fpage>
          -
          <lpage>186</lpage>
          . URL: https://doi.org/10.1145/3487664.3487783. doi:
          <volume>10</volume>
          .1145/3487664. 3487783.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>J. W.</given-names>
            <surname>Ansari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Karim</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Ansari</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O. D.</given-names>
            <surname>Beyan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Cochez</surname>
          </string-name>
          ,
          <article-title>Semantic profiling in data lake</article-title>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>H.</given-names>
            <surname>Dibowski</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Schmid</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Svetashova</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Henson</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Tran</surname>
          </string-name>
          ,
          <article-title>Using semantic technologies to manage a data lake: Data catalog, provenance</article-title>
          and access control,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A.</given-names>
            <surname>Dimou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. V.</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, R. Van De Walle,
          <article-title>RML: A generic language for integrated RDF mappings of heterogeneous data</article-title>
          ,
          <source>in: CEUR Workshop Proceedings</source>
          , volume
          <volume>1184</volume>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>A.</given-names>
            <surname>Dimou</surname>
          </string-name>
          , T. De Nies,
          <string-name>
            <given-names>R.</given-names>
            <surname>Verborgh</surname>
          </string-name>
          , E. Mannens, R. de Walle,
          <source>Automated Metadata Generation for Linked Data Generation and Publishing Workflows, Proceedings of the 9th Workshop on Linked Data on the Web</source>
          <volume>1593</volume>
          (
          <year>2016</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Mohamed</given-names>
            <surname>Nadjib</surname>
          </string-name>
          <string-name>
            <surname>Mami</surname>
          </string-name>
          ,
          <article-title>Strategies for a Semantified Uniform Access to Large and Heterogeneous Data Sources</article-title>
          ,
          <source>Ph.D. thesis</source>
          , Rheinische
          <string-name>
            <surname>Friedrich-Wilhelms-Universität Bonn</surname>
          </string-name>
          ,
          <year>2021</year>
          . URL: https://hdl.handle.
          <source>net/20.500</source>
          .11811/8925.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>A.</given-names>
            <surname>Pomp</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Paulus</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Kirmse</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Kraus</surname>
          </string-name>
          , T. Meisen,
          <article-title>Applying semantics to reduce the time to analytics within complex heterogeneous infrastructures</article-title>
          ,
          <source>Technologies</source>
          <volume>6</volume>
          (
          <year>2018</year>
          ). URL: https://www.mdpi.com/2227-7080/6/3/86. doi:
          <volume>10</volume>
          .3390/technologies6030086.
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>D.</given-names>
            <surname>Dessì</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Osborne</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. Reforgiato</given-names>
            <surname>Recupero</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Buscaldi</surname>
          </string-name>
          , E. Motta, H. Sack,
          <article-title>Ai-kg: an automatically generated knowledge graph of artificial intelligence</article-title>
          , in: International Semantic Web Conference, Springer,
          <year>2020</year>
          , pp.
          <fpage>127</fpage>
          -
          <lpage>143</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>A.</given-names>
            <surname>Meloni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Angioni</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A. A.</given-names>
            <surname>Salatino</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Osborne</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D. R.</given-names>
            <surname>Recupero</surname>
          </string-name>
          , E. Motta,
          <article-title>Aida-bot: A conversational agent to explore scholarly knowledge graphs</article-title>
          , in: O.
          <string-name>
            <surname>Seneviratne</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Pesquita</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <string-name>
            <surname>Sequeda</surname>
          </string-name>
          , L. Etcheverry (Eds.),
          <source>Proceedings of the ISWC 2021 Posters</source>
          ,
          <article-title>Demos and Industry Tracks: From Novel Ideas to Industrial Practice co-located with 20th International Semantic Web Conference (ISWC</article-title>
          <year>2021</year>
          ), Virtual Conference,
          <source>October 24-28</source>
          ,
          <year>2021</year>
          , volume
          <volume>2980</volume>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>