<!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>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>OnToology Drag</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Universidad Politecnica de Madrid, Boadilla del Monte</institution>
          ,
          <addr-line>Madrid</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>The goal of this demo paper is to present OnToology Drag&amp; Drop, a web application that seeks to facilitate the integration of several ontology development activities (documentation, validation, evaluation and shapes generation) without the need for installation of any software and without the dependency of git system. There is a variety of ontology development activities that are normally carried out in any development project, for example generating adequate documentation, designing and executing tests, or identifying the errors of the ontologies, etc. In addition, such activities might be repeated several times within a project lifetime when following iterative or incremental methodologies. To support these scenarios and align the ontology development with software practices, several tools have been developed in order to orchestrate the ontology development activities like OnToology [1] or VoCol [5]. These systems allows for continuous integration of ontology development artefacts integrating support for several activities by implementing new features or integrating existing tools. In both cases, the functionality is built on the basis of git systems. While this solution is robust for ontology maintenance and traceability of an ontology project, in some cases it imposes some requirements or overloads not desired by users looking for a more lightweight platform. For example, some users that are not handling the ontology in git repositories, or do not desire to make them public. For this reason, in this demo we present OnToology Drag&amp;Drop1, a web application to generate ontology documentation, evaluate ontologies, run validation tests and generate SHACL Shapes2 from ontologies. OnToology Drag&amp;Drop is available as a web interface where the user can drag and drop the ontology les and easily select which services to apply over each ontology without having to install any application or be tight to git systems.</p>
      </abstract>
      <kwd-group>
        <kwd>Ontology engineering</kwd>
        <kwd>Ontology documentation</kwd>
        <kwd>Ontology evaluation</kwd>
        <kwd>Ontology constraints</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
    </sec>
    <sec id="sec-2">
      <title>Features</title>
      <p>
        As we have mentioned in the introduction, the power of this tool lies in being
able to easily run a set of utilities on our ontologies, simply by dragging them
into the web application. Speci cally, OnToologyD&amp;D integrates the following
features provided by existing tools:
{ Generate ontology HTML documentation: through Widoco [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], the system
allows users to produce HTML documentation for the ontologies that can
be published using the htaccess le for content negotiation provided within
Widoco output.
{ Ontology evaluation: this functionality is provided by integrating OOPS! [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]
to generate an error report of the given ontology provided as an HTML
document containing the potential errors that have been found in the ontology.
{ Ontology validation: this feature is possible integrating Themis [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] to allow
users to run tests in order to check that the ontology meets the requirements
represented in the tests. It is also possible to generate basic template tests
from the ontology to be later adapted by users to their needs.
{ Ontology shapes generation: this capability is provided by integrating Astrea
[
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] to generate SHACL shapes [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] (Shapes Constraint Language) from the
uploaded ontologies.
      </p>
      <p>The presented application it is intended to facilitate the user the use of all
these technologies, having a common point to access them and avoiding
installation processes or handling several applications in di erent environments and
without dependencies with git systems. It also saves valuable time since the
application is designed to minimize the number of steps needed to select the
features and generate the output.</p>
      <p>The application allows the user to select any combination of tools to be run
for one or more ontologies. When all the ontologies are uploaded, the system
orchestrates the calls to all the applications and the output is generated as a zip
le that contains a folder for each ontology and the services selected for them,
in a short time (depending on the ontology number and sizes).</p>
      <p>The ow of the application is simple, the user can choose an initial con
guration of services that it want to run by enabling/disabling the application logos
in the rst screen (Figure 1). After this, it can be dragged to the application
the ontologies. Later on, the user can modify the con guration for each ontology
and the change will be applied to all the ontologies uploaded after the change.
The selection can be reverted any time before running the application for all the
previously uploaded ontologies (Figure 2). If the user has selected Themis, (s)he
is asked to upload a le with the tests, otherwise, template test will be
generated. After this, simply click on the start button and the les will be generated.</p>
    </sec>
    <sec id="sec-3">
      <title>Architecture</title>
      <p>OnToology Drag&amp;Drop is a web application, developed with JAVA in its backend
and HTML, CSS and JavaScript in its frontend.</p>
      <p>The application works, in summary, as follows: when all the ontologies have
been sent, the frontend, which has stored the services con guration selected by
the user, makes a set of calls to the server to generate all the les. When all the
tools have been executed, a ZIP le is generated.</p>
      <p>On a technical level, the application works this way, the ontology, when it
arrives at the server, is checked by a parser, if it is correct it is stored and the tools
are later executed on it. The server executes Widoco, OOPS!, Themis or Astrea,
as applicable, making calls to the REST APIs that provide those services or using
Java programs, with an appropriate con guration to deal with the ontologies
without the need for further worries by the user. After having generated all
the les in a suitable folder structure, this is compressed and automatically
downloaded to the user's computer. Widoco is executed through a Java ARchive
(JAR), on the other hand OOPS!, Themis and Astrea are executed by web
services.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Demonstration</title>
      <p>During the demonstration of the application two ontologies will be uploaded,
one in XML/RDF and another in TURTLE, all the available services will be
selected for one of them, and for the remaining one a subset of them. In both
cases, Themis will be selected in order to show the two facets of the service, the
rst by uploading a le with our own tests and verifying the results; and the
second by letting themis provide some sample tests.</p>
      <p>In any case, attendants will be able to see from the beginning how to select
the services to be run, how to upload the ontologies, how to modify the services
independently for each ontology, how to upload Themis tests and, nally, they
will be able to observe all the les generated thanks to the application.</p>
      <p>The aforementioned demo can be seen in brief in the following video.3
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusions</title>
      <p>With this alternative of OnToology, a lighter version of the app is provided
with the focus on developments that are carried out by small teams or by single
persons, and therefore do not use Git systems. In addition, the system is designed
to be expandable, that is, it is implemented in such a way that adding a new
service to the server is simple, since they are unconnected and without need to
modify the code already written. To include a new system it is required to adapt
the web interface in order to add the corresponding calls to that new application
3 https://www.youtube.com/watch?v=rKVeGFGRYhk
or web service which implements the new functionality. The code is available for
the community to use, modify or contribute on GitHub under an open license.4</p>
      <p>As future lines of work it should be explore how to incorporate Widoco
con guration options to the current features of OnToology D&amp;D as well as the
inclusion of other tools.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Alobaid</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Garijo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Poveda-Villalon</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santana-Perez</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>FernandezIzquierdo</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Corcho</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>Automating ontology engineering support activities with ontoology</article-title>
          .
          <source>Journal of Web Semantics</source>
          <volume>57</volume>
          ,
          <issue>100472</issue>
          (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Cimmino</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fernandez-Izquierdo</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Garc</surname>
            a-Castro,
            <given-names>R.</given-names>
          </string-name>
          : Astrea:
          <article-title>Automatic generation of shacl shapes from ontologies</article-title>
          .
          <source>In: European Semantic Web Conference</source>
          . pp.
          <volume>497</volume>
          {
          <fpage>513</fpage>
          . Springer (
          <year>2020</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Fernandez-Izquierdo</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Garc</surname>
            a-Castro,
            <given-names>R.</given-names>
          </string-name>
          :
          <article-title>Themis: a tool for validating ontologies through requirements</article-title>
          .
          <source>In: SEKE</source>
          . pp.
          <volume>573</volume>
          {
          <issue>753</issue>
          (
          <year>2019</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Garijo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Widoco: a wizard for documenting ontologies</article-title>
          .
          <source>In: International Semantic Web Conference</source>
          . pp.
          <volume>94</volume>
          {
          <fpage>102</fpage>
          . Springer, Cham (
          <year>2017</year>
          ). https://doi.org/10.1007/978- 3-
          <fpage>319</fpage>
          -68204-4 9
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Halilaj</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Petersen</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Grangel-Gonzalez</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lange</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Auer</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Coskun</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lohmann</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Vocol: An integrated environment to support version-controlled vocabulary development</article-title>
          .
          <source>In: European Knowledge Acquisition Workshop</source>
          . pp.
          <volume>303</volume>
          {
          <fpage>319</fpage>
          . Springer (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Knublauch</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kontokostas</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Shapes constraint language (shacl)</article-title>
          .
          <source>W3C Candidate Recommendation</source>
          <volume>11</volume>
          (
          <issue>8</issue>
          ) (
          <year>2017</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Poveda-Villalon</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gomez-Perez</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Suarez-Figueroa</surname>
            ,
            <given-names>M.C.</given-names>
          </string-name>
          : OOPS!
          <article-title>(OntOlogy Pitfall Scanner!): An On-line Tool for Ontology Evaluation</article-title>
          .
          <source>International Journal on Semantic Web and Information Systems (IJSWIS) 10(2)</source>
          ,
          <volume>7</volume>
          {
          <fpage>34</fpage>
          (
          <year>2014</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>