<!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>OnToology, a tool for collaborative development of ontologies</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Ahmad Alobaid</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Daniel Garijo</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mar´ıa Poveda-Villal o´n</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Idafen Santana-Perez</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Oscar Corcho</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Ontology Engineering Group, Universidad Polite ́ cnica de Madrid</institution>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2015</year>
      </pub-date>
      <abstract>
        <p>In this demo we present OnToology, a tool for developing ontologies collaboratively using Github. OnToology addresses several steps of the ontology development lifecycle, including documentation, representation, evaluation and publication in a non-intrusive way.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>INTRODUCTION</title>
      <p>The rise of collaborative technologies has sped up the development
of software on the last decade. When working as a team, it is
common to use repositories for software development, open discussions
and having a ticketing system that warns and keeps track of the main
issues to be solved.</p>
      <p>This paradigm is slowly moving towards other domains, like
ontology development. Ontologies, like software, require a set of
requirements to be stablished and are usually discussed in a group
before agreeing on a design decision. Therefore, they benefit
heavily from the ticketing system, versioning and decision tracking that
collaborative environments offer. However, this is often not enough,
as ontologies need to be further documented and published online.
Although some tools cover part of these activities e.g.
documentation and evaluation, there are no tools that integrate them with a
collaborative environment.</p>
      <p>In this demo we present OnToology1 a tool for documenting,
evaluating, presenting and publishing ontologies developed
collaboratively. Section 2 describes the requirements for developing
ontologies collaboratively, while Section 3 describes our approach.
Finally Section 4 describes related work and Section 5 introduces
our efforts for improving the tool.</p>
    </sec>
    <sec id="sec-2">
      <title>ONTOLOGY DEVELOPMENT LIFE CYCLE</title>
      <p>Typically, the ontology development process can be divided in
several independent activities:</p>
      <p>
        Ontology requirements: before committing to implement an
ontology, it is advised to write a set of competency
questions (CQs) in an ontology requirements specification document
as mentioned in NeOn methodology
        <xref ref-type="bibr" rid="ref2">(Sua´rez-Figueroa et al.,
2012)</xref>
        , which will be used to test the ontology.
      </p>
      <p>Ontology Implementation: once agreed on the ontology
requirements, one can use an ontology editor such as NeOn-toolkit2
or Prote´ge´3 to design the properties and classes of the proposed
ontology.</p>
      <p>Ontology evaluation: the resultant ontology can be evaluated
in two different ways: by checking whether the requirements
(i.e., CQs) are answered properly and by checking whether the
ontology follows design patterns and well stablished practices
for its implementation or not.</p>
      <p>Ontology documentation: an ontology is unlikely to be reused
unless it is documented properly with examples. This phase
focuses in producing a human-readable documentation that
allows users understand the OWL or RDFs file produced during
the implementation phase.</p>
      <p>Ontology publication: in this phase the ontology has been
agreed on and its ready for release. As the aim of the
vocabularies and ontologies is normally to share the model for its
reuse, the ontology is released with its documentation.</p>
      <p>Figure 1 presents an overview of the different phases of the
ontology development lifecycle. As shown in the figure, this cycle
benefits from a collaborative versioning environment that tracks the
changes made to the ontology, requirements, documentation and
diagrams; and keeps a log of the group discussions and decisions
made.
3</p>
    </sec>
    <sec id="sec-3">
      <title>COLLABORATIVE CREATION OF ONTOLOGIES</title>
    </sec>
    <sec id="sec-4">
      <title>WITH ONTOOLOGY</title>
      <p>OnToology4 is a web-based tool designed to automate part of the
ontology development process in collaborative environments. In
particular, OnToology is designed to work with Github5, one of
the most common environments for software development. After
registering a repository to OnToology, developers just push their
changes to Github and the tool will produce the documentation (with
several proposals for diagram representation), evaluation and
publication of the ontology in the user’s repository. The phases covered
by OnToology are further described below:</p>
      <sec id="sec-4-1">
        <title>4 https://github.com/OnToology/OnToology 5 http://www.github.com/</title>
        <p>Alobaid et al</p>
      </sec>
      <sec id="sec-4-2">
        <title>OnToology</title>
        <p>web interface
repo/login</p>
        <p>database
repo state
Integrator
repo/login/ontology conf
stored repo/ontology conf
ontology conf/login
push notification
request to run the tools</p>
        <p>clone/pull...</p>
        <p>generate diagrams
generate HTML documentation
generate evaluation</p>
        <p>
          Fig. 2: OnToology Architecture
Ontology documentation and depiction: OnToology
integrates AR2DTool6 for creating taxonomy and entity relationship
diagrams of the ontology and Widoco7, which helps you to
create a complete HTML documentation by following a series
of steps in a wizard. Widoco is based on LODE
          <xref ref-type="bibr" rid="ref3">(Peroni, S.
et al., 2012)</xref>
          and guides the user along the documentation
process. It also extracts some of the metadata properties from the
ontology, annotates the documentation in RDF-a and creates
provenance summary that is W3C PROV-O8 compliant.
Ontology Evaluation: OnToology integrates OOPS!
(OntOlogy Pitfall Scanner!)
          <xref ref-type="bibr" rid="ref1">(Poveda-Villalo´n et al., 2014)</xref>
          , a web
based system9 that helps in the evaluation of OWL ontologies
relying mainly on structural and lexical patterns that identify
pitfalls in ontologies. OOPS! has been designed to detect up
to 33 pitfalls among those defined in the catalogue, and has
been used worldwide in different domains. For each ontology,
OnToology will create a single issue in Github with a summary
of the pitfalls detected by OOPS!, pushing as well an extended
explanation to the repository for more information.
        </p>
        <p>Ontology Publication: by using Widoco, OnToology produces
a bundle with the documentation that is ready to be deployed
on a server.</p>
        <p>OnToology allows developers to customize which of the integrated
tools are enabled or disabled through a configuration file.
3.1</p>
        <p>OnToology Architecture
OnToology is composed of two main parts and is integrated with
four external systems as can be seen in Figure 2. The two main parts
of the tool are the web interface and the integrator. The purpose of
the web interface is to handle Github notifications of the changes</p>
      </sec>
      <sec id="sec-4-3">
        <title>6 https://github.com/idafensp/AR2DTool/ 7 https://github.com/dgarijo/Widoco/ 8 http://www.w3.org/TR/2013/REC-prov-o-20130430/ 9 http://oops.linkeddata.es/</title>
      </sec>
      <sec id="sec-4-4">
        <title>Documentation Diagram Doc (AR2DTool)</title>
      </sec>
      <sec id="sec-4-5">
        <title>HTML Doc</title>
        <p>(Widoco)
Evaluation
(OOPS!)
of a registered ontology repository and to serve the webpage where
users register their repositories after giving the tool access to the
repository. There is another webpage served by the web interface
where users can log into and configure their ontology. The
configuration file of an ontology is used by OnToology to enable/disable the
generation of each of the tools.</p>
        <p>The integrator talks to four systems: AR2DTool, Widoco, OOPS!
and Github. The first three systems are used by OnToology to
produce the diagrams, the HTML documentation and an
evaluation report respectively. The integration with Github consists on
cloning the repository, adding OnToology user as a collaborator,
creating webhooks (that are responsible for notifying OnToology
of the changes on repository), aggregating the produced files from
the integrated systems and submitting them in a pull request to the
repository, where the maintainer can review the changes and merge
them later on. The integrator also opens an issue in Github
including the summary of the pitfalls generated by OOPS! with a link to
a full extended explanation.
4</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>RELATED WORK</title>
      <p>Neologism (Cosmin Basca et al., 2008) is a web-based editor for
vocabulary editing and publishing. Unlike OnToology, it lacks
revision tracking and ontology best practice evaluation. VoCol (Niklas
Petersen et al.) is another tool integrated with Github for a
collaborative approach. The tool suffers from strictness and lack of freedom
on the generated output, while OnToology provides full control over
the generated output. Finally, WebProte´ge´ is a web-based ontology
editor for the collaborative development of ontologies. WebProte´ge´
is focused on the implementation of the ontologies, which can only
be edited online. In OnToology, the creation can be done offline as
well. WebProte´ge´ also lacks the evaluation of ontologies like the
one provided by OOPS!, which is also used by OnToology.
5</p>
    </sec>
    <sec id="sec-6">
      <title>CONCLUSIONS AND FUTURE WORK</title>
      <p>In this demo we have introduced OnToology, a tool for improving
the ontology development lifecycle in collaborative environments.
OnToology helps documenting, depicting, evaluating and
publishing. As future work, we are currently working on addressing
automatic deployment and archival of the ontology releases under
demand.</p>
    </sec>
    <sec id="sec-7">
      <title>ACKNOWLEDGEMENTS</title>
      <p>This research has been funded by the project “4V: Volumen,
Velocidad, Variedad y Validez en la Gestin Innovadora de Datos”
(TIN2013-46238-C4-2-R).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>Poveda-Villalo´n</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <article-title>Go´mez-Pe´rez, A., and Sua´rez-</article-title>
          <string-name>
            <surname>Figueroa</surname>
            ,
            <given-names>M. C.</given-names>
          </string-name>
          (
          <year>2014</year>
          ).
          <article-title>Oops!(ontology pitfall scanner!): An on-line tool for ontology evaluation</article-title>
          .
          <source>International Journal on Semantic Web and Information Systems (IJSWIS)</source>
          ,
          <volume>10</volume>
          (
          <issue>2</issue>
          ),
          <fpage>7</fpage>
          -
          <lpage>34</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <article-title>Sua´rez-</article-title>
          <string-name>
            <surname>Figueroa</surname>
            ,
            <given-names>M.C.</given-names>
          </string-name>
          ;
          <article-title>Go´mez-Pe´rez, A; Motta</article-title>
          ,
          <string-name>
            <given-names>E.</given-names>
            ;
            <surname>Gangemi</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          (
          <year>2012</year>
          ).
          <article-title>The NeOn Methodology for Ontology Engineering</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Peroni</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shotton</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Vitali</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          (
          <year>2012</year>
          ).
          <article-title>Easy Vocabulary Publishing</article-title>
          .
          <source>Proceedings of the I-SEMANTICS 2012 Posters &amp; Demonstrations Track</source>
          , pp.
          <fpage>63</fpage>
          -
          <lpage>67</lpage>
          , 2012 Cosmin Basca, Ste´phane Corlosquet, Richard Cyganiak, Sergio Ferna´ndez and Thomas
          <string-name>
            <surname>Schandl</surname>
          </string-name>
          (
          <year>2008</year>
          ). Neologism: Easy Vocabulary Publishing.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>