<!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 Spreadsheet Editor: Get (G)rid of Your RDF Data Entry Problems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Markus Schroder</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Christian Jilek</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jorn Hees</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Sven Hertling</string-name>
          <email>sven@informatik.uni-mannheim.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Andreas Dengel</string-name>
          <email>andreas.dengelg@dfki.de</email>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Data and Web Science Group, University of Mannheim</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>German Research Center for Arti cial Intelligence (DFKI) GmbH Trippstadter Stra e 122</institution>
          ,
          <addr-line>67663 Kaiserslautern</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Knowledge-Based Systems Group, Department of Computer Science, University of Kaiserslautern</institution>
          ,
          <addr-line>P.O. Box 3049, 67653 Kaiserslautern</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Spreadsheets are widely used by knowledge workers, especially in the industrial sector. Their methodology enables a well understood, easy and fast possibility to enter data. As lling out a spreadsheet is more accessible to common knowledge workers than de ning RDF statements, in this paper, we present a tool which uses the spreadsheet metaphor to enable various kinds of users to easily create RDF data whether they are RDF experts or novices. Our approach aims at supporting users in manually lling a knowledge base with their expertise. This is usually a collaborative process involving a team of domain experts and knowledge engineers. To immediately see modelling consequences and updates by others, each entry is simultaneously transferred into triple statements.</p>
      </abstract>
      <kwd-group>
        <kwd>spreadsheet</kwd>
        <kwd>RDF data entry</kwd>
        <kwd>lling knowledge base</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Our experience from industry projects shows that knowledge workers are usually
more skilled in dealing with spreadsheets than working with triple statements.
In order to enable our partners to easily communicate their expertise in the
form of semantic data, we created a tool which supports this knowledge transfer.
The widely known spreadsheet metaphor is well suited for enabling all kinds
of users to manually enter data. Such a modelling process typically involves a
lot of collaboration and communication (expert-to-expert, expert-to-knowledge
engineer, knowledge engineer-to-knowledge engineer). We therefore developed a
web-based spreadsheet editor (i.e. hosted on the intranet { or the internet if con
dentiality requirements permit this). To immediately see modelling consequences
and updates by others, each entry into a cell of the spreadsheet is simultaneously
transferred to RDF statements. In contrast to the xed structure of a spreadsheet,
the RDF graph additionally allows for running complex queries or dynamically
restructuring the data for other issues and applications (for example by using
SPARQL).</p>
    </sec>
    <sec id="sec-2">
      <title>Related Work</title>
      <p>
        Converting spreadsheets to RDF is not a novel idea, several approaches have been
presented in the past. For most of them the user has to provide a mapping of how
to transfer the spreadsheet data to RDF (e.g. RDF123 [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]), but the mappings
needed for transformation are rather hard to de ne for inexperienced users. Some
other approaches like Any234 also support semi- or fully automated conversions
without the necessity of de ning a mapping. However, the transformation steps
are designed as a batch process and are not done simultaneously. Because of
these facts, it is not easy to create RDF data with them, especially when working
collaboratively or if non-experts are involved.
      </p>
      <p>
        In contrast to taking lled spreadsheets as an input and converting them, the
following approaches focus on supporting the user in entering and working with
RDF data. Pohl [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] published rdfedit, a web-based tool to create RDF data. It
could also be used by Semantic Web laymen using a subject-predicate-object table
and the discontinued search engine Sindice. RDForms5 enables users to enter
data in forms, which are simultaneously transferred to RDF triples. Nevertheless,
these forms have be de ned in advance for each use case. Tripcel [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] also uses
the spreadsheet metaphor to read and process RDF data. The author created
an expression language which allows for de ning RDF terms in a sheet to call
functions on them.
      </p>
      <p>Unlike our tool they still require considerable RDF knowledge in order to be
used or con gured. None of them uses the spreadsheet metaphor in a way that
enables a fast data entry as we do. Note that our application primarily focuses on
providing a convenient way { especially for non-experts { to create instance data.
It thus allows for an easy manual RDF data ramp-up, a task none of the existing
editors seems to be appropriate for. Although it allows for ontology modelling to
some extend, it is not intended to compete with full- edged ontology editors like
the widely known Protege6. Additionally, the emerging knowledge graph should
be maintained using dedicated applications.
3</p>
    </sec>
    <sec id="sec-3">
      <title>RDF Spreadsheet Editor</title>
      <p>Our approach is a web-based spreadsheet editor, that simultaneously transfers
spreadsheet inputs to RDF statements and also adds them to a knowledge base.
In this process we use a simple and xed class per sheet and entity per row
mapping similar to csv2rdf7 (which will be explained in the following). The main
features are creating and manipulating RDF classes, properties, instances and
assertions. Instead of providing a full-featured ontology editor, we primarily focus
on creating instance data (ABox). Our tool supports the user by automatically
inferring and creating domain and range statements as well as auto completion
of resource labels, for example.</p>
      <sec id="sec-3-1">
        <title>4 https://any23.apache.org 5 http://rdforms.org 6 http://protege.stanford.edu 7 https://www.w3.org/TR/csv2rdf/</title>
        <p>For a rst impression we kindly refer the reader to this project's website8,
which presents an online demo as well as a video. In the following we describe
the main features of the system in more detail.</p>
        <p>Using the administration page (Figure 1a) an expert can create and delete
knowledge bases (KBs). The query button opens a new page to write SPARQL
queries against the KB. Common vocabularies (like FOAF) can simply be added
in order to reuse their classes and properties. Knowledge bases may contain one or
more workbooks, which again contain the actual spreadsheets. A workbook's page
link can be shared among members of a team in order to work collaboratively.
The KBs can be imported and exported using typical triple data formats, whereas
workbooks can be downloaded as (annotated) Excel les or JSON.
(a) Administration page to organize (b) Workbook page containing sheets
knowledge bases and workbooks where entries are transferred to RDF
statements simultaneously</p>
        <p>By using the spreadsheet metaphor we enable users to work with semantic
data in a familiar way. Figure 1b shows the workbook page where users create
sheets and enter data. In general, for each new resource a random UUID is
generated and serves as its URI while the user input serves as its label. Using a
text area below, a comment for each focused resource can be stated, which is
then presented when mouse hovering it. Adding a sheet creates a new RDFS
class. The row header is used to create resources which are instances of the class.
Entering a column header generates a new property having the sheet's class as
its domain. A cell instantiates a new resource and links it to the one of the row
header using the property given in the column header. This results in a triple
statement. Forcing the application to create a literal instead of a resource is
done by prepending a single quotation mark as known from common spreadsheet
tools. There is also an auto completion feature which operates on the resources'
literals to encourage their reuse. Once de ned, resources can be used several
times within one or among di erent sheets. Users can thereby link instances
(ABox) resulting in a more interconnected RDF graph. To explicitly refer to an
existing resource, users have two possibilities: using the previously introduced
auto completion feature, which shows a list of suggestions while typing or copy
&amp; pasting a resource from one cell to another.
8 http://www.dfki.uni-kl.de/~mschroeder/demo/rdf-spreadsheet-editor</p>
        <p>For each knowledge base a SPARQL endpoint is available using Fuseki9.
A graphical front-end mainly realized with YASGUI10 allows an expert to write
SPARQL queries. In contrast to the xed structure of a spreadsheet, this allows
for running complex queries or dynamically restructuring the data for other issues
and applications. Prede ned queries help to get a quick and easy overview of
classes, properties and instances. User de ned queries can be saved and shared
with others. This feature, for example, allows knowledge engineers to create
specialized views for non-experts, which is a rst means of providing direct
feedback showing modelling consequences. We can also think of another feature
to directly feed existing knowledge services.</p>
        <p>Providing an online collaborative work environment helps domain
experts from di erent elds to work together on a single knowledge base
simultaneously. That is why changes in sheets need to be propagated immediately, so
every team member is directly aware of recent changes. This fosters the active
contribution of all members resulting in a vivid collaboration. Auto completion
features promote the reuse of classes, properties and instances.</p>
        <p>In an early evaluation, 17 rather inexperienced users were able to model
a demo scenario in shorter time compared to writing triples in turtle syntax as
well as using Protege.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Conclusion and Outlook</title>
      <p>In this paper, we presented a tool that uses the spreadsheet metaphor to enable
all kinds of users, especially those inexperienced in Semantic Web concepts, to
create RDF data. We focused on supporting users in manually lling a knowledge
base with their expertise as well as easily collaborating with their team while
doing so. Transferring cells into triple statements allows for running complex
queries or dynamically restructuring the data for other issues and applications.</p>
      <p>In the future, we plan to enhance our app to support the import of existing
structured data, linking to other knowledge bases, capabilities to directly feed
existing knowledge services and multilingualism.</p>
      <p>Acknowledgements Parts of this work have been funded by the German Federal
Ministry of Economic A airs and Energy in the project PRO-OPT (01MD15004D)
and by the DFG in the project Managed Forgetting (DE 420/19-1).</p>
      <sec id="sec-4-1">
        <title>9 https://jena.apache.org/documentation/fuseki2</title>
        <p>10 https://github.com/OpenTriply/YASGUI</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. Tripcel:
          <article-title>Exploring rdf graphs using the spreadsheet metaphor</article-title>
          .
          <source>In: 8th International Semantic Web Conference (ISWC2009)</source>
          (
          <year>October 2009</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Han</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Finin</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Parr</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sachs</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Joshi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>RDF123: from spreadsheets to RDF. The Semantic Web-ISWC</article-title>
          <year>2008</year>
          pp.
          <volume>451</volume>
          {
          <issue>466</issue>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Pohl</surname>
          </string-name>
          , O.:
          <article-title>rdfedit: User Supporting Web Application for Creating and Manipulating RDF Instance Data</article-title>
          , pp.
          <volume>54</volume>
          {
          <fpage>59</fpage>
          . Springer International Publishing,
          <string-name>
            <surname>Cham</surname>
          </string-name>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>