<!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="urn">nbn:de:0074-596-3</article-id>
      <title-group>
        <article-title>ORES-2010 Ontology Repositories and Editors for the Semantic Web</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Proceedings of the</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>st Workshop on Ontology Repositories</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Editors for the Semantic Web</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Hersonissos</institution>
          ,
          <addr-line>Crete</addr-line>
          ,
          <country country="GR">Greece</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Institute of Mathematics and Computer Science, University of Latvia</institution>
          ,
          <addr-line>Raina blvd. 29, LV-1459, Riga</addr-line>
          ,
          <country country="LV">Latvia</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Mathieu d'Aquin, The Open University, UK Alexander García Castro, Universität Bremen, Germany Christoph Lange, Jacobs University Bremen, Germany Kim Viljanen, Aalto University</institution>
          ,
          <addr-line>Helsinki</addr-line>
          ,
          <country country="FI">Finland</country>
        </aff>
      </contrib-group>
      <volume>596</volume>
      <abstract>
        <p>pCaoppeyrrsightby© 2th0e10 fpoarpethrse' inaduivthidoursa.l Copying permitted only for private and aepdcuaibtdloisershm.eidc paunrdposecos.pyTrihgihstedvolubmye itiss</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>10-Jun-2010: submitted by Christoph Lange
11-Jun-2010: published on CEUR-WS.org</p>
      <p>OWLGrEd: a UML Style Graphical Editor for OWL
Jānis Bārzdiņš, Guntis Bārzdiņš, Kārlis Čerāns,</p>
      <p>Renārs Liepiņš, Artūrs Sproģis
1</p>
    </sec>
    <sec id="sec-2">
      <title>Introduction</title>
      <p>
        Thousands of ontologies were developed in the past years and surely more will be
developed in the future, therefore availability of efficient ontology development tools
including graphical editors is essential. Ontologies are usually described in Web
Ontology Language (OWL) which originally was defined as an extension to RDF
graphs, therefore one of OWL canonical forms is a set of subject-predicate-object
triples. This format is very uniform, which makes it easy to parse and store in
computers, but it is completely unusable for humans. Humans tend to think in terms
of higher abstraction levels like classes, instances and relations, but the current
ontology visualization tools like IsaViz [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], OWLViz [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ], GrOWL [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], Welkin [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ],
etc. visualize ontologies by showing every RDF triple as two nodes with a labeled
arrow between them. Thus the information gets cluttered and spread over a large area,
making the structure hard to perceive.
      </p>
      <p>
        For a graphical form to be useful it has to group related concepts together – the
approach that has been successfully used, e.g. in UML class diagrams. Many concepts
of OWL are very similar to those of UML class diagrams and therefore there have
been attempts to define a UML profile for OWL [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] that would make it possible to
use existing UML tools to create and visualize ontologies. However, OWL has more
features than UML class diagrams like class expressions, anonymous classes, etc.,
which are commonly used, but have unintuitive graphical representation. Therefore,
even though a UML profile is better than RDF graphs, it is still hardly
comprehensible. Another option is to use Protégé OWL editor [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] that enables to load
and save ontologies, edit its classes and properties, and define a class taxonomy. It
provides a detailed view for each concept in an ontology, but does not show well its
overall conceptual structure.
      </p>
      <p>
        Our proposal is to extend the UML class diagram notation with Manchester-like
syntax for the missing OWL features (chapter 2), thus making the notation compact
and comprehensible. We have developed an editor for this notation that has a number
of features to ease ontology creation and exploration, e.g. different layout algorithms
for automatic ontology visualization, search facilities, intelligent zooming, graphical
refactoring and interoperability with Protégé (chapter 3). In fact, the application of
UML class diagram notation to OWL is not completely new and has been
implemented in TopBraid Composer [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. However, it is based on simplified UML
class diagram model, lacks graphical editing facilities, and the available graphical
services are limited as well.
2
      </p>
    </sec>
    <sec id="sec-3">
      <title>Compact OWL Graphical Notation</title>
      <p>The proposed graphical notation is based on UML class diagrams. For most features
there is one to one mapping from OWL to UML concepts, e.g. ontologies to
packages, OWL classes to UML classes, data properties to class attributes, object
properties to associations, individuals to objects, etc. Meanwhile there are added also
a number of new graphical elements that are not part of UML notation. Classes have
fields where OWL expressions can be inserted, e.g. equivalent class expressions,
superclass expressions and disjoint class expressions. Similar fields are added to
associations and attributes. Anonymous classes are shown as boxes with only
equivalent class expression definition possibility. There are a number of ways to
visualize anonymous superclasses:
1) as a textual expression inside a subclass box,
2) as a generalization line from the subclass to the corresponding anonymous class,
3) as multiplicity constraints in association, or
4) as a restriction line towards the corresponding class (e.g. the red line eats
between Lion and Herbivore in fig. 2).</p>
      <p>Ontology may be split into multiple diagrams inside a package with each diagram
showing a different view of the ontology or its subset. Multiple generalization lines
can be merged with a fork symbol, to reduce the number of incoming lines in a
superclass. The editor provides means to switch from one graphical form to another
(chapter 3), e.g. merge generalization lines within a fork.</p>
      <p>To better explain the proposed notation let us consider an example in Figure 1. It
shows a simple ontology representing people, cars, their properties and relations. This
visualization uses only standard features of UML class diagrams. Classes are
represented by rectangular boxes and data properties are shown as labels inside the
class box. Object properties are represented with lines between boxes corresponding
to their domain and range classes. If object property has an inverse then both are
represented with the same line, e.g. owner and owned-car. Object properties can
alternatively be shown as labels inside domain class box, e.g. object property model.
Cardinality restrictions of such inline-shown properties are depicted in square
brackets next to the corresponding property name, in the same way as in regular class
diagrams. If a range of a data property is an enumeration of values, then the
enumeration is depicted as a box with rounded corners, e.g. Color. The fact that a
class is defined by its instances is shown with a label &lt;&lt;EnumeratedClass&gt;&gt;, e.g.
class Model.</p>
      <p>Next example already uses some graphical notations that are not a part of UML.
Figure 2 depicts the popular African wildlife ontology. The red lines are ‘some values
from’ and ‘only values from’ restrictions encoded as subclasses in OWL. It is obvious
that this notation eases the comprehension of ontology, e.g. Tasty-plant must be eaten
by some Carnivore and some Herbivore. Super properties are depicted as a text next
to subproperty’s name, e.g. {&lt;eaten-by} next to subproperty name eaten-by-animal
(symbol ‘&lt;‘ corresponds to ‘subproperty’ in UML notation).</p>
    </sec>
    <sec id="sec-4">
      <title>Services of the Editor</title>
      <p>A number of special services are implemented in our editor to ease ontology
development. One of the services is graphical refactoring that allows modifying
graphical notation without changing semantics as long as the same concept can be
expressed through different constructions. This feature allows the user to choose the
most compact graphical format depending on the context and the taste. One of the
typical situations illustrating the need for graphical refactoring is generalization and
fork: if there is a single super class with multiple incoming generalization lines, a fork
can be added to reduce multiple lines into a single line, and vice versa.</p>
      <p>When ontologies become large, their management becomes more difficult and
additional features are required from the editor. First, a good automatic layout is
crucial for understanding large ontologies and therefore several alternative layout
modes are supported. Second, searching for the specific element in large ontologies
may become painful and irritating without an appropriate service. A search
mechanism implemented in our editor allows finding the necessary element by
specifying the value for one of its text fields. For example, it allows finding classes by
their name or the value of any other text field.</p>
      <p>A more advanced service is full interoperability with Protégé 4, an editor widely
used by ontology developers. The interoperability is implemented via custom Protégé
plug-in that allows to send via TCP/IP socket an active ontology from our editor to
Protégé, and vice versa. Ontologies in both directions are sent in interchange format,
but generally any OWL serialization is acceptable. Interoperability allows ontology
developers to use Protégé without changing their habits and afterwards visualize
ontologies in external graphical editor using different automatic layout algorithms as
well as further manual layout tuning. Moreover, a user can specify the way ontologies
will be visualized by selecting notation options in preferences. In our graphical editor
ontology developers can create new ontologies from scratch or alternatively
graphically edit ontologies imported from Protégé; all graphically developed
ontologies can afterwards be exported to Protégé from where they can be stored to
various formats or checked with OWL reasoners.
4</p>
    </sec>
    <sec id="sec-5">
      <title>Implementation</title>
      <p>
        The editor is implemented using transformation driven architecture (TDA) [
        <xref ref-type="bibr" rid="ref10 ref8 ref9">8, 9, 10</xref>
        ]
technology. TDA stores its information in the form of MDA-style models that are
connected by model transformations. The user interface in TDA is implemented by
means of universal engines (e.g. a graph diagramming engine, a property editor
engine, etc.). Each individual tool (e.g. OWLGrEd) is created through a specially
designed TDA tool definition configurator that creates instances of Tool Definition
Model storing all meta information about an individual tool – element types, element
styles, constraints and relationships among elements.
      </p>
      <p>The Tool Definition Model instances are then interpreted by a universal interpreter
that in cooperation with other TDA engines processes all end-user’s actions.
Furthermore, for OWLGrEd, as for other tools, specific transformations can be
created to support domain specific needs. In our case, only transformations supporting
interoperability with Protégé, and specific attribute and annotation parsers had to be
created. Thanks to the use of TDA it took only six person-months to produce the
betaversion of the OWLGrEd editor, including development of Protégé plug-in and the
design of the actual graphical notation (this has been the most time consuming part).
The latest editor version can be downloaded from http://OWLGrEd.lumii.lv.
5</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusion and Future Work</title>
      <p>In this paper we described a new, compact OWL graphical notation and a
betaversion implementation of the actual graphical editor. Our notation is based on UML
class diagrams with additional constructs for OWL specific concepts – our aim is to
cover full OWL 2.0 specification. The editor has a number of features to ease
ontology exploration and development, e.g. automatic layout algorithms and options
for selecting which concepts shall be displayed. We are planning to add an option to
store graphic layout information inside ontologies (we consider adding it as a special
kind of annotations). We would also like to improve integration with Protégé, in
particular, to synchronize ontologies in both tools after every editing step - current
implementation allows exchanging only whole ontologies.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. IsaViz, http://www.w3.org/
          <year>2001</year>
          /11/IsaViz/
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>2. OWLViz, http://www.co-ode.org/downloads/owlviz/</mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>3. GrOWL, http://www.uvm.edu/~skrivov/growl/</mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>4. Welkin, http://simile.mit.edu/welkin/</mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>5. UML profile, http://www.omg.org/spec/ODM/1.0/PDF/</mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>6. Protege, http://protege.stanford.edu/</mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>TopBraid</given-names>
            <surname>Composer</surname>
          </string-name>
          , http://www.topquadrant.com/products/TB_Composer.html
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Barzdins</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rencis</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kozlovics</surname>
            ,
            <given-names>S. The</given-names>
          </string-name>
          <string-name>
            <surname>Transformation-Driven</surname>
            <given-names>Architecture</given-names>
          </string-name>
          ,
          <source>Proc. of 8th OOPSLA Workshop on Domain-Specific Modeling. Nashville, USA</source>
          ,
          <year>2008</year>
          , pp.
          <fpage>60</fpage>
          -
          <lpage>63</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Barzdins</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cerans</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kozlovics</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rencis</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zarins</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          <article-title>A Graph Diagram Engine for the Transformation-Driven Architecture</article-title>
          ,
          <source>Proc. of 4th International Workshop on Model Driven Development of Advanced User Interfaces (MDDAUI-</source>
          <year>2009</year>
          ). Florida, USA,
          <year>2009</year>
          , pp.
          <fpage>29</fpage>
          -
          <lpage>32</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Barzdins</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Zarins</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cerans</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kalnins</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rencis</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lace</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Liepins</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sprogis</surname>
            ,
            <given-names>A..,</given-names>
          </string-name>
          <article-title>GrTP: Transformation Based Graphical Tool Building</article-title>
          ,
          <source>Proc. of 3th International Workshop on Model Driven Development of Advanced User Interfaces (MDDAUI-</source>
          <year>2007</year>
          ). Nashville, USA, CEUR Workshop Proceedings, http://ceur-ws.
          <source>org</source>
          , vol.
          <volume>297</volume>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>