<!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>View Inheritance as an Extension of the Normalization Ontology Design Pattern</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Bene Rodriguez-Castro</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Hugh Glaser</string-name>
          <email>hg@ecs.soton.ac.uk</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ian Millard</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Intelligence, Agents and Multimedia Group, School of Electronics and Computer Science, University of Southampton</institution>
          ,
          <addr-line>Southampton SO17 1BJ</addr-line>
          ,
          <country country="UK">UK</country>
        </aff>
      </contrib-group>
      <fpage>163</fpage>
      <lpage>170</lpage>
      <abstract>
        <p>There are ontology domain concepts that are difficult to represent due to the complexities in their definition and the presence of multiple alternative criteria to classify their abstractions. To assist ontologists in overcoming these challenges, an analysis of available design patterns in ontology and object-oriented modeling has been carried out. As a result, the View Inheritance Ontology Design Pattern (ODP) is introduced. The pattern extends the Normalization ODP (a.k.a. Untangling or Modularization) and revelas the notion of Inter- and Intra-criterion Multiple Inheritance. Our contribution is illustrated with a concrete example of a use case scenario that benefits from the outcome of this study.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Ontologies have emerged as one of the key components needed for the realization
of the Semantic Web vision. Ontologies bring with them a broad range of
development activities that can be grouped into what is called ontology engineering.
Ontology engineering practices present many similarities to those in the software
engineering field and there have been different adaptations of software
engineering principles to the ontology engineering domain [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Within ontology
engineering, this research primarily focuses on ontology modeling, more specifically on
Ontology Design Patterns (ODPs) [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and on how they can help representing
complex domain concepts. ODPs have evolved from the general notion of design
pattern, defined in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] as “archetypal solutions to design problems in a certain
context” and they are justifiably receiving a significant amount of attention by
ontologists due to the preceding success achieved by software design patterns [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <p>
        In this study, we introduce the View Inheritance ODP. The View Inheritance
pattern intends to represent ontology domain concepts that presents multiple
alternative criteria to classify their abstractions. The motivation that led us
to the development of the View Inheritance pattern originates in the ReSIST
(Resilience for Survivability in Information Society Technologies) project [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
One of the objectives of ReSIST is to create a knowledge base application in
the field of resilient and dependable computing. The ReSIST Knowledge Base
(RKB)1 features an ontology in the domain of resilient systems. This ontology
was built using the definitions and taxonomies presented in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>
        Among all the ReSIST concepts, one that particularly stands out from a
representational point of view is the concept of “Fault”. The concept of “Fault”
referred hereto is extensively detailed in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. This concept involves certain
complexities that makes it difficult to represent in the ReSIST ontology, such as a)
the dual role that it supports in the ontology, b) the number of relationships that
it participates in with other ontology domain concepts, c) support for classifying
occurrences of actual faults in real world systems and d) providing a keyword
index for subjects of publications and research interests/areas of projects,
institutions or people. The characteristics of role and reusability of domain concepts
that we identified in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] laid out some guidelines to handle the first two aspects.
To handle the rest, it is crucial that all types of faults identified in [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] can be
represented in the ReSIST ontology.
– A first criterion can be derived from the left column of the matrix. This
column represents the values of the eight basic viewpoints (see Figure 4 in
[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]) which lead to the elementary fault classes : “Development/Operational
Faults”, “Internal/External Faults” and so on.
1 http://rkbexplorer.com/
– A second criterion can be abstracted from the bottom row (listing numbers
1 to 31). This row represents the 31 likely combinations of fault classes out
of the 256 possible.
– A third criterion is implicit at the top row, representing the three major
partially overlapping groupings of faults: “Development”, “Physical” and
“Interaction”.
– A fourth criterion can be seen at the bottom row, labeled “Examples”,
containing nine illustrative examples of fault classes.
      </p>
      <p>The representation of multiple alternative criteria (views) to classify the
abstractions of a certain domain concept motivated the development of the View
Inheritance ODP, which is explained throughout the paper as follows: Section
2 presents a brief overview of the main work related to the modeling of ODPs.
Section 3 introduces the View Inheritance ODP in detail and finally, Section 4
covers the conclusions gathered from this endeavor and open lines for further
investigation.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Related Research</title>
      <p>
        An initial set of ODPs is introduced in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. The notion of Conceptual (or
Content) Ontology Design Patterns (CODePs) is defined and several examples are
included. Future work in the direction of CODePs has been carried out in the
context of the NeOn project2 [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ][
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. They present a more detailed overview and
refinement of different types of ODPs at different levels of abstraction (see Figure
2.2 in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]) and a thorough catalogue of patterns is also documented and made
available online3.
      </p>
      <p>
        Experiences in the development of large ontologies in the Biology domain
led to the development of a separate repository of ODPs4 [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] although with a
significant degree of overlap with the one previously mentioned.
      </p>
      <p>
        From all the patterns surveyed, only the Normalization ODP [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ][
        <xref ref-type="bibr" rid="ref10">10</xref>
        ] analyzes
the implications of having a high number of multiple inheritance relations in the
ontology and it refers to the notion of modelling different semantic axes as the
cause that can lead to polihierarchical structures or a tangled ontology. It then
outlines a very effective step by step procedure that would untangle the ontology
becoming a collection of independent modules easy to maintain.
      </p>
      <p>To achieve this however, it relies on modelling constructs available only at the
OWL-DL expressivity level of the OWL language (such as owl:disjointWith and
to some extent owl:intersectionOf ). This also implies the need of an OWL-DL
capable reasoner in order to fully benefit from the use of this pattern.
Unfortunately, in the context of ReSIST support for OWL-DL reasoning is beyond the
scope of the project.</p>
      <sec id="sec-2-1">
        <title>2 http://www.neon-project.org 3 http://ontologydesignpatterns.org/ 4 http://odps.sourceforge.net/</title>
        <p>
          Another aspect where the Normalization ODP and the representation of
“Fault” in ReSIST diverge is connected to the normalization criteria of the
pattern. These criteria requires the primitive skeleton of the domain ontology
to consist only of disjoint homogeneous trees [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. Intuitively, this appears as a
very limiting constrain considering the amount of overlap that Figure 1 reveals
among the types of faults identified.
        </p>
        <p>
          Praising the virtues of the Normalization pattern, we attempted to find
complementary material to characterize the modelling scenario that the many faces
of “Fault” presents. In that sense and again in the domain of O-O software, the
rationale of View Inheritance given in [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] as part of his detailed taxonomy of
types of inheritance and discussion of multiple inheritance seem to correlate very
well with the representation needs of “Fault”.
        </p>
        <p>In summary, the related work referred hereto, provided an essential
framework that served as the basis for the proposed View Inheritance ODP to assist
with the development of the ontology component of ReSIST.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>View Inheritance Ontology Design Pattern</title>
      <p>It might be too early to consider View Inheritance a full right member of the ODP
family given that certain aspects of it are still being refined and a more extensive
collection of archetypal use cases is still needed. The intent of the pattern is to
provide a characterization to the ontological modelling problem of representing a
certain domain concept whose abstractions can be classified according to multiple
alternative criteria. It represents all of these relevant classification criteria so that
multiple possible combinations of the concepts that refine them are allowed.</p>
      <p>
        The applicability requirements below stems from the use of View Inheritance
in the O-O design [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Nonetheless, the level of abstraction is high enough to
deem them suitable for ontology development as well. In ontology design terms,
these applicability requirements can be summarized as:
– The various classification criteria of the ontology domain concept being
represented are equally important, so any choice of a primary one would be
arbitrary.
– Many possible combinations of the concepts that refine the various
classification criteria are needed.
– Reusability. The domain concepts under consideration are so important as
to justify spending significant time to get the best possible inheritance
structure.
      </p>
      <p>Structure (Diagram). Figure 2 provides a generic graphical representation
of the View Inheritance pattern while Figure 3 shows a subset of the classes
involved in the overall representation of “Fault” and how it aligns to this generic
structure.
Elements and Relationships. The classes participating in the pattern
together with their responsibility are listed below. The generic names for classes
corresponds to classes located in Figure 2 and the names of classes from the
representation of the “Fault” example are located in Figure 3.</p>
      <p>– TargetDomainConcept (Fault)
• This class represents the ontology domain concept being defined for
which multiple alternative abstraction criteria exist.
– Criterion i (BasicViewPointFault, MajorGroupFault, NamedClassFault,
NamedCombinedFault)
• These classes represent each one of the alternative abstraction criteria
of the TargetDomainConcept (Criterion1, Criterion2, Criterion i in
Figure 2). The list of classes may not be exhaustive or pairwise disjoint.
– Ci Class x5 (All subclasses of BasicViewPointFault, MajorGroupFault,
NamedClassFault, NamedCombinedFault)
• These classes refine each abstraction criteria class (C1 Class1, ..., C2 Class1,
..., Ci Class i in Figure 2). The list of classes may not be exhaustive or
pairwise disjoint.
– CiClass x CjClass y6, Ci Class xClass y7 (FaultType1, FaultType2, ...,
FaultType32)
• These classes participate in multiple inheritance relationships
combining different refinements from the alternative abstraction criteria classes
(C1Class3 C2Class2 and C1 Class1Class2 in Figure 2).</p>
      <p>Inter- and Intra-criterion Multiple Inheritance. There is an interesting
feature regarding the types of multiple inheritance relations that can take place
in the context of a View Inheritance pattern, that to the best of our knowledge
has not been made explicit so far in ontology modeling. These types of multiple
inheritance relationships can be characterized as:
– Inter-criterion, when the parent classes involved in the multiple inheritance
relation are subclasses of different abstraction criteria. The class C1Class3 C2Class2
in Figure 2 is an example of this type of inheritance because one of its parent
classes, C1 Class3, is a refining concept of Criterion1 and the other parent
class, C2 Class2, is a refining concept of Criterion2.
– Intra-criterion, when the parent classes involved in the multiple
inheritance relation are subclasses of the same abstraction criterion. The class
C1 Class1Class2 is an example of this type of inheritance because all of its
parents classes, C1 Class1 and C1 Class2, are refining concepts of the same
criterion, Criterion1.
– Intra- and inter-criterion, when there are at least two parents involved in
the relation that are subclasses of the same abstraction criterion and there is
at least one more different parent that is a subclass of a different abstraction
criterion. An example of this type of inheritance is trivial to extrapolate from
the composition of the previous two.</p>
      <sec id="sec-3-1">
        <title>5 Short for: Class x from Criterion i 6 Short for: Class x from Criterion i and Class y from Criterion j 7 Short for: Class x and Class y from Criterion i</title>
        <p>Nested View Inheritance. It is worth noting that View Inheritance patterns
could occur in a nested fashion. That is, a View Inheritance pattern with a
concept Ci as root, could enclose another case of a View Inheritance pattern
with a different concept Cj as root where Ci subsumes Cj.</p>
        <p>As an example, consider the View Inheritance scenario with “Fault” as root
in Figure 3. Let us focus in the subtree that originates in one of its
abstraction criterion, in this case “BasicViewPointFault” and zoom in on it. From the
point of view of “BasicViewPointFault” and with this concept as root, its direct
subclasses (“ObjectiveFault”, “BoundaryFault” and so on) could be regarded as
alternative abstraction criteria of “BasicViewPointFault”. The classes
“FaultType1” and “FaultType2” could be regarded as cases of inter-criterion multiple
inheritance given that each one of their parents is a class subsumed by a different
abstraction criterion of “BasicViewPointFault”.</p>
        <p>
          ODP Classification. According to the classification in [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ], the View
Inheritance ODP could be considered an Architectural OP given that it provides an
ontological characterization of a particular case of polihierarchy in the overall
ontology structure. By the same classification, the definition of Inter- and
Intercriterion Multiple Inheritance could be regarded as Logical OPs given that they
refine the Logical OP that describes the case of generic multiple inheritance in
[
          <xref ref-type="bibr" rid="ref7">7</xref>
          ][
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. This classification situates View Inheritance at a higher level of abstraction
than that of Inter- and Intra-criterion Multiple Inheritance.
        </p>
        <p>
          Based on the classification of ODPs in [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], View Inheritance can be regarded
as an extension to the Normalization ODP, which is considered part of the
group of Good Practices ODPs. In this sense, the former concentrates on certain
ontological aspects of the modelling problem that the latter addresses. View
Inheritance focuses on the nature of a specific type of polyhierarchy structure
and provides a characterization of it.
4
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Conclusions and Future Work</title>
      <p>There are a number of key points that would be worth summarizing. There can
be certain ontology domain concepts difficult to represent due to the existing
alternative abstraction criteria that define them. That is the case of the “Fault”
concept in the context of the ReSIST project.</p>
      <p>A survey of the current ontology building techniques was carried out. The
Normalization ODP seemed a viable option, yet the pattern did not fully address
the definition of “Fault” and the application requirements of the ReSIST project.</p>
      <p>To bridge this gap, the View Inheritance ODP is put forward as an
extension to the Normalization ODP, combining the latter with the notion of View
Inheritance originated in the O-O software design. View Inheritance revealed
two basic types of likely relations that could take place in the structure of the
pattern: Inter- or Intra-criterion Multiple Inheritance.</p>
      <p>These contributions, while not solving all the modelling challenges of the
ontology module for ReSIST, do provide additional awareness to be considered
in the development process.</p>
      <p>Outstanding issues open for future work include the identification of
additional examples of real world use cases of View Inheritance. In that sense, we
intend to selectively explore the ontologies most frequently used in the data
repositories that are part of the Linked Data project8 for possible occurrences
of View Inheritance patterns. The ReSIST project is one of the contributors to
the Linked Data set of repositories.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Gomez-Perez</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Corcho</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fernandez-Lopez</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Ontological Engineering : with examples from the areas of Knowledge Management, e-Commerce and the Semantic Web</article-title>
          .
          <source>First Edition (Advanced Information and Knowledge Processing)</source>
          .
          <source>Springer (July</source>
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Gangemi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Ontology design patterns for semantic web content</article-title>
          . In Gil, Y.,
          <string-name>
            <surname>Motta</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Benjamins</surname>
            ,
            <given-names>V.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Musen</surname>
          </string-name>
          , M.A., eds.:
          <source>International Semantic Web Conference</source>
          . Volume
          <volume>3729</volume>
          of Lecture Notes in Computer Science., Springer (
          <year>2005</year>
          )
          <fpage>262</fpage>
          -
          <lpage>276</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Gamma</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Helm</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          , Johnson, R.,
          <string-name>
            <surname>Vlissides</surname>
          </string-name>
          , J.:
          <article-title>Design patterns: elements of reusable object-oriented software</article-title>
          . Addison-Wesley
          <string-name>
            <surname>Professional</surname>
          </string-name>
          (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4. ReSIST:
          <article-title>Resilience and Survivability in IST. Network of Excellence. Contract: IST 4 026764 NOE, EU and Sixth Framework Programme (FP6) and Information Society Technology (IST) (</article-title>
          <year>2005</year>
          -2008) http://www.resist-noe.eu/.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Avizienis</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Laprie</surname>
            ,
            <given-names>J.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Randell</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Landwehr</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Basic concepts and taxonomy of dependable and secure computing</article-title>
          .
          <source>IEEE Transactions on Dependable and Secure Computing</source>
          <volume>01</volume>
          (
          <issue>1</issue>
          ) (
          <year>2004</year>
          )
          <fpage>11</fpage>
          -
          <lpage>33</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Rodriguez-Castro</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Glaser</surname>
          </string-name>
          , H.:
          <article-title>Whose ”fault” is this? untangling domain concepts in ontology design patterns</article-title>
          .
          <source>In: 1st International Workshop on Knowledge Reuse and Reengineering over the Semantic Web at the 5th European Semantic Web Conference. (June</source>
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Suarez-Figueroa</surname>
            ,
            <given-names>M.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Brockmans</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gangemi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gomez-Perez</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lehmann</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lewen</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Presutti</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sabou</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Neon modelling components</article-title>
          .
          <source>NeOn deliverable D5.1</source>
          .1, Universidad Politecnica de Madrid (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Presutti</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gangemi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>David</surname>
            , S., de Cea,
            <given-names>G.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Surez-Figueroa</surname>
            ,
            <given-names>M.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>MontielPonsoda</surname>
          </string-name>
          , E.,
          <string-name>
            <surname>Poveda</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A library of ontology design patterns: reusable solutions for collaborative design of networked ontologies</article-title>
          .
          <source>NeOn deliverable D2.5.1, Institute of Cognitive Sciences and Technologies (CNR)</source>
          (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Egana-Aranguren</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Ontology Design Patterns for the Formalisation of Biological Ontologies</article-title>
          .
          <source>MPhil Dissertation</source>
          , Bio-Health Informatics Group, School of Computer Science, University of Manchester (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Rector</surname>
            ,
            <given-names>A.L.</given-names>
          </string-name>
          :
          <article-title>Modularisation of domain ontologies implemented in description logics and related formalisms including owl</article-title>
          .
          <source>In: K-CAP '03: Proceedings of the 2nd international conference on Knowledge capture</source>
          , New York, NY, USA, ACM (
          <year>2003</year>
          )
          <fpage>121</fpage>
          -
          <lpage>128</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. Meyer, B.:
          <article-title>Object-Oriented Software Construction (Book/CD-ROM) (2nd Edition)</article-title>
          .
          <source>Prentice Hall PTR (March</source>
          <year>2000</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>