<!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>Towards Diagrammatic Ontology Patterns</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Gem Stapleton</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>John Howse</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Kerry Taylor</string-name>
          <email>kerry.taylor@csiro.au</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Aidan Delaney</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jim Burton</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Peter Chapman</string-name>
          <email>p.chapmang@brighton.ac.uk</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CSIRO Computational Informatics and Australian National University</institution>
          ,
          <country country="AU">Australia</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Brighton</institution>
          ,
          <country country="UK">UK</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>It has long been recognized that patterns can be a useful and important tool when building models. This is reflected by their adoption in the practice of ontology and software engineering. Similarly, visual representations of information are often seen as beneficial with, for example, software engineering making use of the suite of diagrammatic notations forming the UML. Likewise, ontology engineering has seen the development of a variety of different visualizations for classes and properties. This paper combines these two strands of work, making visual (diagrammatic) patterns available to ontology engineers.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
    </sec>
    <sec id="sec-2">
      <title>Concept Diagrams for Ontology Modelling</title>
      <p>
        This section provides an introduction to concept diagrams, designed as part of
the Ontology Engineering with Diagrams project (www.ontologyengineering.org).
Readers interested in the full notation and its formalization should see [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ].
Concept diagrams represent classes using closed curves and properties using arrows
which can be solid or dashed. The spatial relationships between the closed curves
and the sources and targets of arrows convey semantic information.
      </p>
      <p>Fig. 1 asserts that the class B is subsumed by A and both A and B are
disjoint from C. The spatial properties of inclusion and exclusion correspond
to the semantic properties of set inclusion and disjointness. The solid arrow P
asserts that individuals in A are only related to elements in C: the target of the
arrow is the set of things to which the elements in A are related and this set is
subsumed by C. The solid arrow R , where R is the inverse of R, asserts that
all things are, between them, related to exactly the individuals in C under R ;
the source of this arrow is the boundary rectangle which represents the set of all
things, often denoted ⊤. Lastly, the dashed arrow provides partial information
about property Q: under Q, the individuals in B are, between them, related to
at least the elements in C. Under some circumstances, we may not wish to assert
disjointness and subsumption relationships. Concept diagrams make this readily
achievable, whilst avoiding clutter, by using multiple rectangles. Fig. 2 visualizes
the same information as Fig. 1 except for the disjointness of C with A and B.
Spatial relationships only convey information within a single rectangle.
3</p>
    </sec>
    <sec id="sec-3">
      <title>Diagrammatic Patterns for Common Constructions</title>
      <p>We now demonstrate how to express nine commonly occurring axioms using
patterns, contrasting with Description Logic (DL). Common constraints that
are imposed on classes are subsumption (subset), disjointness and equivalence.
To express that one class is subsumed by another class, concept diagrams use
curve containment, reflected in our first pattern; to express class subsumption
in DL, one asserts C2 ⊑ C1. Similarly, concept diagrams use curve disjointness
(i.e. non-overlapping curves) to express class disjointness, captured in DL by
C1 ⊓ C2 ⊑ ⊥.</p>
      <p>Pattern 1: Class Subsumption Class C1 subsumes class C2, Fig. 3.
Pattern 2: Class Disjointness Classes C1 and C2 are disjoint, Fig. 4.</p>
      <p>Pattern 2 has an obvious generalization to (concisely) assert that n classes
are pairwise disjoint (that is, any pair of the n classes are disjoint). Using DL,
one axiom is required for each pair of classes to capture this disjointness
information: C1 ⊓ C2 ⊑ ⊥,...,C1 ⊓ Cn ⊑ ⊥, ..., Cn 1 ⊓ Cn ⊑ ⊥; OWL has a more
succinct representation: DisjointClasses(C1; :::; Cn). In the diagram below, the
ellipsis indicates the presence of a further n − 3 circles labelled in the obvious
fashion.</p>
      <p>Pattern 3: General Class Disjointness C1; ::; Cn are pairwise disjoint, Fig. 5.</p>
      <p>Ontology engineers often want to express that two classes are equivalent. As
with the other patterns, there are many semantically equivalent, but
syntactically different, concept diagrams that express class equivalence. The following
pattern employs two overlaying (completely concurrent) curves.
Pattern 4: Class Equivalence Classes C1 and C2 are equivalent, Fig. 6.</p>
      <p>In DL, Class Equivalence can be expressed by C1 ≡ C2. Again, the Class
Equivalence pattern has an obvious generalization to the n-class case: to express
that n classes are equivalent draw n overlaying curves. The number of DL axioms
to express many classes are all equivalent to each other increases rapidly, whereas
only a single diagram is needed, omitted for space reasons. A common property
restriction is to enforce ‘All Values From’ and ‘Some Values From’ constraints.
Pattern 5: All Values From All individuals in class C1 have all values, under
property P, from class C2, Fig. 7</p>
      <p>The arrow in the above diagram formally asserts that the image of the
property P (considering P as a binary relation), when its domain is restricted to C1, is
a subset of C2. In other words, the only things that individuals in C1 are related
to, under P, must be in C2. The use of multiple bounding boxes ensures that no
unintended disjointness information between classes is asserted. In DL, the All
Values From pattern is captured by C1 ⊑ ∀P:C2. We also present a pattern for
‘Some Values From’, expressed in DL by C1 ⊑ ∃P:C2.</p>
      <p>Pattern 6: Some Values From Individuals in class C1 have at least one value,
under property P, from class C2, Fig. 8.</p>
      <p>The above diagram makes use of the inverse of property P. To justify the
correctness of the Some Values From pattern, consider an individual, c1, in the
class C1. The pattern must ensure that c1 has a value, c2, from C2 under property
P. Well, c1 has such a value, c2, if and only if c2 has the value c1 under P .
Equivalently, the image of P when its domain is restricted to C2 includes at
least all of the individuals in C1, captured by the dashed arrow.</p>
      <p>Our last three patterns concern domains and ranges of properties. Firstly,
consider the domain, D, of property P. The domain of P is D if and only if the
range of the inverse, P , of P is D.</p>
      <p>Pattern 7: Domain of a Property The domain of property P is D, Fig. 9.</p>
      <p>The corresponding DL formalization of this pattern is ∀P:⊤ ⊑ D; the
construction ∀P:⊤ builds the pre-image of the property P. The Domain of a Property
pattern employs the same style of construction: the arrow builds the pre-image
of P. In DL, the range is typically defined by ⊤ ⊑ ∀P:R. The range can also
be defined in DL by constructing the pre-image of the inverse, P , of P and
asserting that this pre-image is subsumed by R: ∀P :⊤ ⊑ R. Our Range of a
Property pattern constructs the image of P, using an arrow, and asserts that
this image is subsumed by the range, R.</p>
      <p>Pattern 8: Range of a Property The range of property P is R, Fig. 10.
Pattern 9: Domain and Range of a Property The domain and range of
property P are D and R respectively, Fig. 11.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Applying the Patterns</title>
      <p>
        We demonstrate the application of the patterns to the Semantic Sensor Networks
(SSN) Ontology [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] as a case study. The examples represent just a small
fragment of that ontology, but have been chosen to illustrate the application of the
patterns above. The SSN ontology, the class MeasurementCapability is subsumed
by Property and there are four pairwise disjoint classes: Sensor, Stimulus,
Property, and Sensing. SensorInput is equivalent to Stimulus. The Class Subsumption,
General Class Disjointness, and Class Equivalence patterns yield the diagrams in
Figs 12, 13 and 14 respectively. Regarding property restrictions, the SSN
ontology includes the constraint that sensors detect only stimuli. The property detects
relates individuals in the Sensor class only to individuals in the Stimulus class.
This property restriction is an All Values From constraint and the
corresponding diagram is in Fig. 15. The SSN ontology also makes plentiful use of Some
Values From property restrictions. One example is that sensors implement some
sensing. The property implements relates individuals in the Sensor class to some
individual(s) in the Sensing class. The Some Values From diagrammatic pattern
thus gives rise to Fig. 16. Lastly, we demonstrate instances of the Domain of
a Property, Range of a Property, and the Domain and Range of a Property
patterns. To do so, we make use of a further two classes in the SSN ontology:
Fig. 15. All Val. From
      </p>
      <p>Fig. 16. Some Val. From
Situation and Event. There is a property, includesEvent, with domain Situation
and range Event shown in Fig. 17.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>
        We have presented nine diagrammatic patterns for defining constraints that
occur frequently in ontology engineering. These patterns are all formal, since
concept diagrams have a fully defined syntax and semantics [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. There are various
avenues for significant future work. A particular goal is to provide tool
support for ontology engineering using concept diagrams. This will treat concept
diagrams as ‘first-class’ citizens in the model development process, rather than
purely as a visualization of an ontology. We envisage producing a tool that allows
the diagrammatic patterns to be accessed. A big challenge is to ensure that the
resulting drawn (concrete) diagram has an effective layout. This will build on
the now substantial body of work that solves Euler diagram layout problems [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1. OntoGraf. http://protegewiki.stanford.edu/wiki/OntoGraf, accessed
          <year>July 2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>M.</given-names>
            <surname>Compton</surname>
          </string-name>
          et al.
          <article-title>The SSN ontology of the semantic sensor network incubator group</article-title>
          .
          <source>Web Semantics: Science, Services and Agents on the World Wide Web</source>
          ,
          <volume>17</volume>
          (
          <issue>0</issue>
          ):
          <fpage>25</fpage>
          -
          <lpage>3</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>E.</given-names>
            <surname>Gamma</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Helm</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Johnson</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Vlissides</surname>
          </string-name>
          . Design Patterns:
          <article-title>Elements of Reusable Object-Oriented Software</article-title>
          .
          <string-name>
            <surname>Addison-Wesley Professional</surname>
          </string-name>
          ,
          <year>1994</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>P.</given-names>
            <surname>Hayes</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Eskridge</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Mehrotra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Bobrovnikoff</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Reichherzer</surname>
          </string-name>
          , and
          <string-name>
            <given-names>R.</given-names>
            <surname>Saavedra</surname>
          </string-name>
          . Coe:
          <article-title>Tools for collaborative ontology development and reuse</article-title>
          .
          <source>In Knowledge Capture Conference</source>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>M.</given-names>
            <surname>Horridge</surname>
          </string-name>
          . Owlviz. www.co-ode.org/downloads/owlviz/,
          <source>accessed June</source>
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>G.</given-names>
            <surname>Stapleton</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Flower</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Rodgers</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Howse</surname>
          </string-name>
          .
          <article-title>Automatically drawing Euler diagrams with circles</article-title>
          .
          <source>Journal of Visual Languages and Computing</source>
          ,
          <volume>23</volume>
          :
          <fpage>163</fpage>
          -
          <lpage>193</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>G.</given-names>
            <surname>Stapleton</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Howse</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Chapman</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Delaney</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Burton</surname>
          </string-name>
          ,
          <string-name>
            <surname>and I. Oliver.</surname>
          </string-name>
          <article-title>Formalizing concept diagrams</article-title>
          .
          <source>In Visual Languages and Computing. KSI</source>
          ,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>