<!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>Generic Ontologies and Generic Ontology Design Patterns</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>BAALL</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Universität Bremen</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Mathematik und Informatik</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Bremen</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Germany Bernd.Krieg-Brueckner@dfki.de</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Institute for Intelligent Cooperating Systems, Faculty of Computer Science, Otto-von-Guericke-Universität Magdeburg</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Generic Ontologies are introduced in GDOL, an extension of DOL, the Distributed Ontology, Modeling and Specification Language, and implemented using Hets, the Heterogeneous Tool Set framework. Parameters such as classes, properties, individuals, or whole ontologies may be instantiated with arguments in a host ontology. A Generic Ontology Design Pattern, GODP, defined in GDOL, embodies an ontology development operation and serves as a methodological tool for ontology development. Some non-trivial GODPs are presented for illustration, e.g. for qualitatively graded relations.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <sec id="sec-1-1">
        <title>Structuring Ontologies In-The-Large is absolutely indispensable to retain</title>
        <p>
          an overview and allow separate developments (“divide and conquer”), when we
consider large ontologies. For example, the “hyper-ontology” [
          <xref ref-type="bibr" rid="ref13 ref6">6, 13</xref>
          ] in [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] with
more than 25.000 definitions is a network of ontologies, which built on top of
each other: foundational so-called “Upper Ontologies”, ontologies in a variety of
general domains, and finally ontologies in application domains.
        </p>
        <p>
          Standard OWL [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] allows such a breakdown into separate ontologies with
import, although transitive import is not always properly supported by tools.
Sometimes, however, we would like to import classes, relations etc. with
renaming. We will look at support for this by DOL (Sect. 2.1) and Hets (Sect. 2.2).
        </p>
        <p>We extend ontologies to Generic Ontologies, and DOL to Generic DOL
(Sect. 3), to allow easy reuse of ontologies without cumbersome renaming.</p>
      </sec>
      <sec id="sec-1-2">
        <title>Structuring Ontologies In-The-Small is required for sustained confidence</title>
        <p>in (or better: correctness of) intricate local, reusable development tasks.</p>
        <p>We take generic ontologies as the basis for Generic Ontology Design Patterns
(Sect. 4) embodying development operations. We show how a complex pattern
can be structured into sub-patterns, and how iteration can be achieved. This is
demonstrated by several non-trivial examples.
1 ontology VSet2 =</p>
        <p>Class: Val
3 Class: Val0 SubClassOf: Val</p>
        <p>EquivalentTo: {VAL_Val0}
5 Class: Val1 SubClassOf: Val</p>
        <p>EquivalentTo: {VAL_Val1}
7 ObjectProperty: greater_Val</p>
        <p>Characteristics: Transitive
9 Domain: Val Range: Val</p>
        <p>Individual: VAL_Val0 Types: Val0
11 Individual: VAL_Val1 Types: Val1 11</p>
        <p>Facts: greater_Val VAL_Val0
13 end
2
4
ontology VSet3 = VSet2 and</p>
        <p>VSet2 with Val0 |-&gt; Val1,</p>
        <p>Val1 |-&gt; Val2,
VAL_Val0 |-&gt; VAL_Val1,</p>
        <p>VAL_Val1 |-&gt; VAL_Val2
6 end
1 ontology VSet3Exp =</p>
        <p>Class: Val
3 Class: Val0 SubClassOf: Val</p>
        <p>EquivalentTo: {VAL_Val0}
5 Class: Val1 SubClassOf: Val</p>
        <p>EquivalentTo: {VAL_Val1}
7 Class: Val2 SubClassOf: Val</p>
        <p>EquivalentTo: {VAL_Val2}
9 ObjectProperty: greater_Val</p>
        <p>Characteristics: Transitive
Domain: Val Range: Val</p>
        <p>Individual: VAL_Val0 Types: Val0
13 Individual: VAL_Val1 Types: Val1</p>
        <p>Facts: greater_Val VAL_Val0
15 Individual: VAL_Val2 Types: Val2</p>
        <p>Facts: greater_Val VAL_Val1
17 end</p>
      </sec>
    </sec>
    <sec id="sec-2">
      <title>2 Structured Semantic Modelling</title>
      <p>A repository of general and specific domain ontologies may be utilized very well
indeed for a variety of applications. In a special application, these ontologies are
often only needed selectively, in specific “views”.</p>
      <p>
        The Distributed Ontology, Modeling and Specification Language, DOL, an
OMG standard [
        <xref ref-type="bibr" rid="ref14 ref16 ref19">19, 16, 14</xref>
        ], allows, in particular, the definition of a selective
view to an ontology upon import, and renaming of entities.
      </p>
      <p>Such a “fine” structuring is a form of structured reuse. It avoids multiple
developments and error-prone copies: later changes to an original are often mistakenly
omitted in copies, or erroneous when replaying a slight adaptation.</p>
      <sec id="sec-2-1">
        <title>The “Same Name—Same Thing” Principle is fundamental in DOL, as it</title>
        <p>is in OWL. Thus a definition may be repeated for a class, say, when adding an
additional axiom. Note, however, the use of separate name spaces, see Sect. 3.2.
The Value Sets VSet2, VSet3, see Fig. 1, are examples of small ontologies
that can be re-used as building blocks in other ontologies.</p>
        <p>VSet2 contains a class Val with two subclasses Val0 and Val1, with one
individual each. A transitive order relation greater_Val is defined on the individuals.</p>
        <p>Now VSet3 is formulated in DOL as VSet2 “and” (i.e. united with) a copy of
VSet2 “with” renamings; thus it contains 3 classes and 3 values.</p>
        <p>Renamings take the form of a sequence of “mapping items” (using the symbol
“|-&gt;”) from old to new names, e.g. Val0 is renamed as Val1, Val1 as Val2, in the
copy. Note that mere textual substitution would be error-prone: the replacements
in Fig. 1 would only work in reverse order in this particular case. The expanded
result is shown as VSet3Exp.</p>
        <p>While being more concise, even with this DOL notation, the example will
become cumbersome when constructing a value set of 4 or more values, because
each time we have to use renaming for yet another copy with distinct names.
So we are looking for a means to make a general construction reusable, and to
structure it in such a way that iteration becomes easy and obvious to do, i.e. a
generic solution (see Sect. 3.2, Fig. 3).
2.2</p>
      </sec>
      <sec id="sec-2-2">
        <title>Heterogeneous Ontologies</title>
        <p>DOL has been devised for the heterogeneous combination of theories in a variety
of logics, dealing with logic morphisms, i.e. functions mapping a theory from one
logic into another, and theory morphisms, i.e. functions mapping a specification
(e.g. an ontology) into another in the same logic.</p>
        <p>
          Actually, the axioms for a total order cannot be defined in OWL-DL, but
could be defined in another logic, say FOL or the Common Algebraic Specification
Language, CASL [
          <xref ref-type="bibr" rid="ref18 ref4 ref7">4, 18, 7</xref>
          ]. Such a logically complete formulation for a total (or
any other desired) order would then accompany the DOL definition (see section
3.2.5 in [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ]), to be used for verification purposes with Hets.
        </p>
        <p>
          The Heterogeneous Tool Set, Hets [
          <xref ref-type="bibr" rid="ref17">17</xref>
          ], is the implementation basis for DOL
and provides and implementation of its semantics. It takes care of proper
replacements; e.g. it generates VSet3Exp.
3
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Generic Ontologies in GDOL</title>
      <p>We propose the language Generic DOL, GDOL, which extends DOL by a
parameterization mechanism for ontologies. Generics in GDOL borrow their semantics
from CASL’s generic specification mechanism. The syntax for OWL in GDOL is
presently Manchester Syntax, extended by Parameterized Names (cf. Sect. 3.2).
3.1</p>
      <sec id="sec-3-1">
        <title>Generic Ontologies</title>
        <p>
          Generics (first introduced in ADA [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]) are not just macros. Their most
important aspect is that all parameters are fully typed items, and argument types are
checked against parameter types. Moreover, generics are closed: all free names
in the body come from imports, or are bound as parameters. When parameter
to argument substitutions are interpreted in the context of the instantiation,
frustrating name clashes in the context of the instantiation are thus avoided.
        </p>
        <p>Parameters in CASL or GDOL may be any items in the signature of a theory,
or whole theories. Thus the parameter of a generic ontology may not only be a
class, relation, or individual, it may be a whole ontology with specific abstract
11
13
15
properties expressed by axioms. An argument ontology must conform to such a
parameter ontology, i.e. the required properties must be satisfied.</p>
        <p>This concept makes structuring of ontologies in-the-large and in-the-small
extremely powerful to capture separate semantic concepts independently, beyond
mere modularization and “object-oriented” inheritance.</p>
        <p>Generic Lists. Lists, sequences, or sets are classic examples of parameterized
data structures. Such “containers” are also quite useful in ontologies, likely to
be instantiated many times. A list is cast into a generic OWL ontology List in
Fig. 2: the class Item is a parameter.</p>
        <p>In the ontology List_Num, List is then instantiated, where an argument class
Num is provided for the parameter Item; cf. also the expansion List_NumExp.
This way, different instantiations, say List_Num and List_Person, may coexist,
since classes and relations such as first_Num and first_Person are differentiated.
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Pragmatic Naming in GDOL</title>
        <p>Inherited Name Spaces. DOL/GDOL supports declaration of prefixes that
can be used for the abbreviation of URLs in much the same way as OWL does.
Each ontology, and hence each argument of an instantiation of a generic ontology,
carries its own set of prefixes, possibly distinct.</p>
        <p>The default prefix of the body of a GODP is set by the instantiation.
Sometimes an item in the body is closely related to a parameter and should in fact
inherit the name space of the argument in an instantiation.</p>
        <p>For example in TaxonomicExtension (Fig. 5), X is interpreted with the default
prefix of the instantiation, whereas Y might be intended to reside in a different
name space; this decision is made when the argument for Y is provided in the
instantiation. Thus X gets the default prefix, and Y its own prefix, denoted Y:Y.</p>
        <p>For better readability, we drop the definition of the default prefix, or other
prefixes (given in Fig. 5), in the presentation of the other examples in this paper.</p>
      </sec>
      <sec id="sec-3-3">
        <title>Parameterized Names and Stratified Names. Names of new items are</title>
        <p>often related to (“dependent on”) names of parameters. To avoid renaming and
extra parameters, we use the construct of compound names in CASL to introduce
Parameterized Names for use in ontologies.</p>
        <p>As in the CASL notation, Parameterized Names use brackets “ [” and “ ]”
around constituent names, and comma “ ,” as separator.</p>
        <p>When parameters are substituted by arguments in the expansion of an
instantiation, the constituent names are substituted by the corresponding argument
names, and “ [” and “ ,” are replaced by “_” (the trailing “ ]” is dropped). The
resulting Stratified Names are thus expressed in legal OWL notation, and all
OWL-related tools can be used on instantiated generics.</p>
        <p>Parameterized Names in List allow a compact notation (Fig. 2): just the
parameter class Item needs to be instantiated with an argument. The new classes,
relations etc. are expressed as parameterized names such as List[Item], first[Item],
and corresponding stratified names such as List_Num, first_Num are generated
by Hets, supplying a fresh name for each expanded instantiation.</p>
        <p>Thus the required parameter definitions and instantiations are reduced
considerably; if parameterized names were not available, all these names would have
to be supplied as extra parameters (and arguments!), and generic instantiation
would be quite cumbersome and not very different from renaming.</p>
        <p>Generic Value Sets. While VSet2 (see Sect. 2.1) is not per se generic, it is
made to be so as ValSet4, see Fig. 3, to provide new names for parameters Val,
Val0, Val1, etc., such that a new instance with different names is created for each
instantiation.</p>
        <p>Note that we use multiple parameters, each consisting of a single class. The
advantage is that we can write instantiations similarly, with one argument each,
avoiding the need to rename, i.e. explicitly give a fitting morphism from
parameter to argument.</p>
        <p>ValSet4 is structured: ValSetInitial is the base for a generic extension,
ValSetStep, which adds another value class and individual to the set, and the order.
This extension may be iterated: in ValSet4, ValSetStep is instantiated 3 times,
providing a total of 4 values Val0 to Val3. In a final phase, a disjointness axiom
completes ValSet4. Note that the “Same Name—Same Thing” principle ensures
that repeated instantiations may speak about the same class (e.g. Val2). In the
extension of the instantiation for Significance, duplicates of class definitions, e.g.
for 2-Essential, are removed by Hets, cf. Fig. 3.
10
12</p>
        <p>ontology ValSet4
2 [Class: Val]</p>
        <p>[Class: Val0][Class: Val1]
4 [Class: Val2][Class: Val3]</p>
        <p>= ValSetInitial
6 [Class: Val][Class: Val0]</p>
        <p>and ValSetStep[Class: Val]
8 [Class: Val0][Class: Val1]
and ValSetStep[Class: Val]</p>
        <p>[Class: Val1][Class: Val2]
and ValSetStep[Class: Val]</p>
        <p>[Class: Val2][Class: Val3]
and Class: Val</p>
        <p>DisjointUnionOf:</p>
        <p>Val0, Val1, Val2, Val3
14
16 end</p>
        <p>ontology Significance
2 = ValSet4</p>
        <p>[Class: Significance]
4 [Class: 0-Insignificant]</p>
        <p>[Class: 1-Subordinate]
6 [Class: 2-Essential]</p>
        <p>[Class: 3-Dominant]
8 end
1 ontology ValSetInitial</p>
        <p>[Class: Val] [Class: Val0]
3 = Class: Val</p>
        <p>Class: Val0 SubClassOf: Val
5 EquivalentTo: {VAL[Val0]}</p>
        <p>Individual: VAL[Val0]
7 Types: Val0</p>
        <p>ObjectProperty: greater[Val]
9 Characteristics: Transitive</p>
        <p>Domain: Val Range: Val
11 end
1 ontology ValSetStep</p>
        <p>[Class: Val]
3 [Class: PrevVal]</p>
        <p>[Class: NextVal]
5 = ValSetInitial</p>
        <p>[ Class: Val][ Class: PrevVal]
7 and</p>
        <p>Class: NextVal SubClassOf: Val
9 EquivalentTo: {VAL[NextVal]}</p>
        <p>Individual: VAL[NextVal]
11 Types: NextVal</p>
        <p>Facts: greater[Val] VAL[PrevVal]
13 end
1 ontology GradedRelations4Exp =</p>
        <p>Class: 0-Insignificant SubClassOf: Significance
3 EquivalentTo: {VAL_0-Insignificant}</p>
        <p>Class: 1-Subordinate SubClassOf: Significance
5 EquivalentTo: {VAL_1-Subordinate}</p>
        <p>Class: 2-Essential SubClassOf: Significance
7 EquivalentTo: {VAL_2-Essential}</p>
        <p>Class: 3-Dominant SubClassOf: Significance
9 EquivalentTo: {VAL_3-Dominant}</p>
        <p>Class: Significance
11 DisjointUnionOf: 0-Insignificant, 1-Subordinate, 2-Essential, 3-Dominant</p>
        <p>ObjectProperty: greater_Significance Range: Significance
13 Characteristics: Transitive Domain: Significance</p>
        <p>Individual: VAL_0-Insignificant Types: 0-Insignificant
15 Individual: VAL_1-Subordinate Types: 1-Subordinate</p>
        <p>Facts: greater_Significance VAL_0-Insignificant
17 Individual: VAL_2-Essential Types: 2-Essential</p>
        <p>Facts: greater_Significance VAL_1-Subordinate
19 Individual: VAL_3-Dominant Types: 3-Dominant</p>
        <p>Facts: greater_Significance VAL_2-Essential
21 end</p>
        <p>Fig. 3. ValSet4, ValSetInitial, ValSetStep, instantiation as Significance and expansion
1 ontology OrderRelationExtension</p>
        <p>[ OrderRelation] =
3 ObjectProperty: greater_Val</p>
        <p>InverseOf: less_Val
5 SubPropertyOf: greaterOrEqual_Val 5</p>
        <p>ObjectProperty: less_Val
7 InverseOf: greater_Val</p>
        <p>SubPropertyOf: lessOrEqual_Val
9 Characteristics: Transitive</p>
        <p>Domain: Val Range: Val
11 ObjectProperty: greaterOrEqual_Val</p>
        <p>InverseOf: lessOrEqual_Val
13 Characteristics:</p>
        <p>Transitive, Reflexive
15 Domain: Val Range: Val</p>
        <p>ObjectProperty: lessOrEqual_Val
17 InverseOf: greaterOrEqual_Val</p>
        <p>Characteristics:
19 Transitive, Reflexive</p>
        <p>Domain: Val Range: Val
21 end
1 ontology OrderRelation =</p>
        <p>Class: Val
3 ObjectProperty: greater_Val</p>
        <p>Characteristics: Transitive</p>
        <p>Domain: Val Range: Val
end
1 ontology ValSet4WithOrderRelations</p>
        <p>[ Class: Val]
3 [ Class: Val0][ Class: Val1]</p>
        <p>[ Class: Val2][ Class: Val3]
5 = OrderRelationExtension</p>
        <p>[ ValSet4 [ Class: Val]
7 [ Class: Val0][ Class: Val1]</p>
        <p>[ Class: Val2][ Class: Val3]]
9 end
Pre-conditions to an instantiation may be stated by axioms in parameters
expressed as whole ontologies, a powerful way to ensure semantic consistency.
OrderRelationExtension in Fig. 4 is the extension of greater_Val, an order
relation, to its inverse less_Val, the reflexive version greaterOrEqual_Val, and its
inverse lessOrEqual_Val. The parameters Val and greater_Val are formulated
together as an ontology parameter OrderRelation. This way, the precondition that
greater_Val should be transitive, is formulated in it, and will be checked for the
argument (for a complete definition of an order relation in DOL cf. Sect. 2.2).</p>
        <p>In ValSet4WithOrderRelations, the instantiation of OrderRelationExtension
receives both the value set Val to be extended, and the order relation greater_Val,
i.e. a proper OrderRelation, from nested instantiation of ValSet4. The resulting
ontology is, as always, a union of the argument(s) and the (translated) body,
thus contains the instantiated ValSet4 plus the extensions.
4</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>Generic Ontology Design Patterns</title>
      <p>
        Most of the existing patterns in the repository for ontology patterns [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] treat
Upper Ontologies, or design issues and structuring in specific application
domains (cf. Content Design Patterns in [
        <xref ref-type="bibr" rid="ref20 ref9">9, 20</xref>
        ]). Generic Ontology Design Patterns,
%prefix(&lt;X:&gt;&lt;http://X.owl#&gt; &lt;Y&gt;
2 Y: &lt;http:/&lt;/lYe.fto&gt;wl#&gt; )%
      </p>
      <p>ontology TaxonomicExtension
4 [Class: X] [Class: Y:Y] 8</p>
      <p>= Class: Y:Y SubClassOf: X &lt;comp&gt; end
6 end</p>
      <p>Intermediate Abstraction
… &lt;Zn&gt;
is-a is-a</p>
      <p>is-a
&lt;Z1&gt;
… &lt;Zn&gt;</p>
      <p>&lt;Y&gt;
Taxonomic Extension
1 ontology IndividualExtension</p>
      <p>[Class: X]
3 = Individual: VAL[X] Types: X</p>
      <p>end
&lt;X&gt; &lt;Y&gt;</p>
      <p>ontology D&lt;irsejl&gt;ointUnionExtension
2 [Class: X</p>
      <p>ClCaoslsla:teZra1l ESxutbeCnlsaiosnsOf: X
4 Class: Zn SubClassOf: X]</p>
      <p>[Class: Y] &lt;Z&gt;
6 = C&lt;lraigshst:&gt; Y SubClassOf: X</p>
      <p>Class: X DisjointUnionOf: Y,Z1,Zn
reject DisjointUnionOf: Z1,Zn
&lt;X&gt;
…
&lt;Y&gt;</p>
      <p>
        …
is-a
… &lt;Zn&gt;
GODPs (cf. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] for a first sketch), are mostly domain independent, universal
Ontology Design Patterns according to the classification of [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. They abstract away
from application domains to a generic methodological level, and are then
instantiated to particular domains as part of an ontology engineering process. A GODP
may be a large ontology to be reused, but also a tiny ontology fragment to be
comp&lt;oXse&gt;&lt;dXw&gt;ith ot&lt;heYrs&gt;, thus structuring ontolo&lt;gXies&gt;in-the-lar&lt;gYe&gt;or in-the-small.
      </p>
      <p>GODPs now receive their semantic foundation from generic ontologies (cf.
Sect. 3) and implementation basis from Hets.
is-a isi-sa-a is-a is-a</p>
      <p>
        Exampliess-afor GODPs were introducedis-ianforism-aally by diagrams in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. We
formalize some of them here as examples for GODPs in GDOL/Hets.
&lt;Z1&gt; &lt;Z…1&gt; &lt;Z…i&gt; &lt;Z…n&gt;&lt;Zn&gt;&lt;Y&gt; &lt;Z1&gt; … &lt;Zi&gt; … &lt;Zn&gt;
TaxToanxoonmo micic EExxtteensniosnion. The diagraSmupfpolermaenTtaarxyoAnbosmtriaccEtixotnension pattern in
Fig. 5 illustrates the introduction of a new class &lt;Y &gt; as a subclass of &lt;X&gt;.
      </p>
      <p>Like the generation of a standard individual in IndividualExtension, this
appears to be an extremely simple pattern, whose effect might just as well be
achieved by free editing. However, it stands for a set of GODPs
corresponding to development operations that rope in free editing and capture it under
semantic control in an application context (cf. Sect. 5).</p>
      <p>
        Disjoint Union Extension. Moreover, if previously the subclasses &lt;Z1&gt;,
&lt;Zn&gt; of &lt;X&gt; were stated to be disjoint, we would expect the disjoint union
axiom to be extended as well. When adding another &lt;Y &gt; that should be
included in the union, we have to “repair” the disjoint union axiom to include &lt;Y &gt;
by rejecting the old axiom and introducing the extended one (cf. [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]).
      </p>
      <p>The need for an extension of a previous disjoint union (with associated
deletion) is circumvented in the example ValSet4 (Fig. 3) by introducing an explicit
completion with a disjoint union of all constituent value classes as a final phase.</p>
      <p>Qualitative Abstraction, Grading
&lt;pm&gt; …. &lt;pn&gt;</p>
      <p>&lt;rm&gt; …. &lt;rn&gt;
&lt;Y&gt;</p>
      <p>&lt;q&gt;
Simplified Symmetric Configuration
&lt;Z&gt;
Qualitative Abstraction. To achieve a graded valuation according to some
qualitative abstraction of a semantic concept, we might introduce extra valuation
domains, e.g. Significance (see Fig. 3), with values such as Insignificant,
Subordinate, Essential, Dominant, or some other (arbitrarily fine) qualitative metrics; the
number of levels depends on the application.</p>
      <p>To combine a class, say C, with its valuations, resp., we could construct extra
combined domains, say C-Insignificant, ... , C-Dominant, one for each domain, or
standard individuals for valuation combinations. The general approach in this
vein is reification to realize a ternary relation by binary relations.</p>
      <p>
        These approaches involve a considerable overhead of introducing extra classes
and relations, and are clumsy, barely readable, and ultimately error-prone.
Qualitatively Graded Relations have been proposed instead in [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] to encode
such valuations. Formally, we use an ordered set (Sect. 3.2) as grading domain. A
ternary relation hasTarget with grade value Val1 as third argument is represented
by a qualitatively graded relation hasTargetWithGrade_Val1 such that
hasTarget(?s,?t,VAL_Val1) hasTargetWithGrade_Val1(?s,?t)
This axiom cannot be expressed in OWL, but defines the proper semantic
relationships that may be used for verification in Hets.
1 ontology GESubsumption4
      </p>
      <p>[Class: S][Class: T][Class: Val]
3 [Class: Val0][Class: Val1]</p>
      <p>[Class: Val2][Class: Val3]
5 = GradedRelations4 [Class: S]</p>
      <p>[Class: T][Class: Val]
7 [Class: Val0][Class: Val1]</p>
      <p>[Class: Val2][Class: Val3]
9 and</p>
      <p>GESubStep
11 [Class: S][Class: T][Class: Val] 11</p>
      <p>[Class: Val0][Class: Val1]
13 [ObjectProperty: has[T,Val,Val0]]</p>
      <p>and
15 GESubStep</p>
      <p>[Class: S][Class: T][Class: Val]
17 [Class: Val1][Class: Val2]</p>
      <p>[ObjectProperty: has[T,Val,Val1]]
19 and</p>
      <p>GESubFinal
21 [Class: S][Class: T][Class: Val] 8</p>
      <p>[Class: Val2][Class: Val3]
23 [ObjectProperty: has[T,Val,Val2]] 10</p>
      <p>[ObjectProperty: has[T,Val,Val3]]
25 end
1 ontology GESubStep</p>
      <p>[Class: S][Class: T][Class: Val]
3 [Class: Vali][Class: Valj]</p>
      <p>[ObjectProperty: has-T-Val-Vali]
5 = ObjectProperty: hasGE[T,Val,Vali]</p>
      <p>Domain: S Range: T
7 ObjectProperty: has-T-Val-Vali</p>
      <p>SubPropertyOf: hasGE[T,Val,Vali]
9 ObjectProperty: hasGE[T,Val,Valj]</p>
      <p>SubPropertyOf: hasGE[T,Val,Vali]</p>
      <p>Domain: S Range: T
end
ontology GESubFinal
2 [Class: S][Class: T][Class: Val]</p>
      <p>[Class: Vali][Class: Valj]
4 [ObjectProperty: has-T-Val-Vali]</p>
      <p>[ObjectProperty: has-T-Val-Valj]
6 = ObjectProperty: hasGE[T,Val,Vali]</p>
      <p>Domain: S Range: T
ObjectProperty: has-T-Val-Vali
SubPropertyOf: hasGE[T,Val,Vali]
ObjectProperty: has-T-Val-Valj</p>
      <p>SubPropertyOf: hasGE[T,Val,Vali]
12 end
ontology GESubsumption4_SigExp =
2 Class: Ingredient Class: Significance</p>
      <p>ObjectProperty: hasGE_Ingredient_Significance_0-Insignificant
4 Domain: Ingredient Range: Ingredient</p>
      <p>ObjectProperty: hasGE_Ingredient_Significance_1-Subordinate
6 SubPropertyOf: hasGE_Ingredient_Significance_0-Insignificant</p>
      <p>Domain: Ingredient Range: Ingredient
8 ObjectProperty: hasGE_Ingredient_Significance_2-Essential</p>
      <p>SubPropertyOf: hasGE_Ingredient_Significance_1-Subordinate
10 Domain: Ingredient Range: Ingredient</p>
      <p>ObjectProperty: has_Ingredient_Significance_0-Insignificant
12 SubPropertyOf: hasGE_Ingredient_Significance_0-Insignificant</p>
      <p>Domain: Ingredient Range: Ingredient
14 ObjectProperty: has_Ingredient_Significance_1-Subordinate</p>
      <p>SubPropertyOf: hasGE_Ingredient_Significance_1-Subordinate
16 Domain: Ingredient Range: Ingredient</p>
      <p>ObjectProperty: has_Ingredient_Significance_2-Essential
18 SubPropertyOf: hasGE_Ingredient_Significance_2-Essential</p>
      <p>Domain: Ingredient Range: Ingredient
20 ObjectProperty: has_Ingredient_Significance_3-Dominant</p>
      <p>SubPropertyOf: hasGE_Ingredient_Significance_2-Essential
22 Domain: Ingredient Range: Ingredient</p>
      <p>ObjectProperty: has_Val Domain: Ingredient Range: Significance
Fig. 7. GESubsumption4, GESubStep, GESubFinal and expansion of instantiation
Generic GradedRelations. With this encoding we obtain a sheaf of relations
&lt;pi&gt;, one for each qualitative grade i, cf. Fig. 4. Note that GradedRelations4 is
appropriate for a grade domain with 4 values; we have to provide an analogous
GODP for each number by adding further relations.</p>
      <p>
        Graded Configuration can be defined in a similar way (cf. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]), taking two
sheafs of graded relations as parameters.
      </p>
      <p>Graded Subsumption. A grading level often corresponds to an
appropriate interval of quantitative properties. When the levels are ordered (the
intervals are consecutive), it makes sense to also introduce associated relations
corresponding to a greater[Val] ordering (actually a greaterOrEqual[Val] ordering;
ValSet4WithOrderRelations could be added if verification is intended).</p>
      <p>In GESubsumption4, see Fig. 7, this is expressed by subsumption of relations,
where a given sheaf of graded relations is a parameter. Whereas an instantiation
of GradedRelations4 (Fig. 6) only generates relations such as
has_Ingredient_Significance_1-Subordinate, has_Ingredient_Significance_2-Essential, etc., an
instantiation of GESubsumption4 additionally yields e.g. a relation
hasGE_Ingredient_Significance_1-Subordinate, which subsumes grades 1-Subordinate, 2-Essential,
and 3-Dominant. We obtain the following relation subsumption hierarchy:
hasGE_Ingredient_Significance_0-Insignificant
has_Ingredient_Significance_0-Insignificant
hasGE_Ingredient_Significance_1-Subordinate
has_Ingredient_Significance_1-Subordinate
hasGE_Ingredient_Significance_2-Essential
has_Ingredient_Significance_2-Essential
has_Ingredient_Significance_3-Dominant
To create this hierarchy in GESubStep, a new GE-relation hasGE[T,Val,Valj] is
defined as a subrelation of the previous GE-relation hasGE[T,Val,Vali], and
hasT-Val-Vali, passed as a parameter, is also made a subrelation of the previous
GE-relation hasGE[T,Val,Vali] (the instantiations are chosen in such a way that
j denotes i+1).
5</p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>Development Operations with Constrained Focus. A GODP abstracts
away from a particular development fragment. As such it embodies an ontology
development operation, to be re-used repeatedly in a variety of contexts. While a
free development, e.g. in Protégé, allows changes everywhere and cannot guard
against erroneous changes in a different part of the hyper-ontology, a GODP
provides a constrained focus, a kind of “straightjacket” to allow only this particular
development operation. Changes are confined to the effects of an instantiation,
no other part of the host ontology is accidentally affected, it is “frozen”.</p>
      <p>The developers attention is focused on providing appropriate arguments,
which are checked for violation of semantic constraints.</p>
      <sec id="sec-5-1">
        <title>Composition of Development Operations is a powerful way to create</title>
        <p>new GODPs from the repository of generally applicable building blocks, viz.
GODPs. We have seen in Fig. 4 that OrderRelationExtension may be instantiated
on ValSet4, yielding a new GODP ValSet4WithOrderRelations.</p>
        <p>Similarly, a combination of initial, iteration step and final sub-GODPs as in
ValSet4 (Fig. 3), or GESubsumption4 (Fig. 7) seems to be quite typical for the
compilation of larger GODPs from small building blocks.</p>
        <p>Consistency. A GODP is separately defined from its applications; it can be
tested to comply with the intentions of the developer once and for all (i.e. for
all instantiations). The semantics of its body is defined w.r.t. its parameters;
semantic pre-conditions may be stated by axioms in parameter ontologies.</p>
        <p>Structural consistency is then ensured in each instantiation by checking
structural conformance of arguments, e.g. that an argument of appropriate kind with
the resp. name exists (subject to renaming). Semantic consistency is ensured
by proving each ontology argument to comply with its parameter, if it contains
axioms. Such a proof obligation is generated and managed by Hets. It may be
discharged automatically, if it can be reduced to Description Logic, DL, or some
other logic for which automatic reasoning is provided by an appropriate reasoner.</p>
        <p>In fact, every (generic) ontology pattern, e.g. for Order (cf. Sect. 2.2), should
be accompanied by a formal definition in CASL, say, if DL is not sufficient, to
properly define its semantics and to support a potential verification process.</p>
      </sec>
      <sec id="sec-5-2">
        <title>Towards Safer Ontology Development. It cannot be expected that ontolo</title>
        <p>gies are ever “complete”; thus the development process and the correctness of
changes on the resulting ontologies are a major concern.</p>
        <p>A GODP, separately defined and verified, is safe insofar as changes are
confined to the effects of pattern instantiation, checking arguments for violation of
semantic constraints; no other part of the host ontology is accidentally affected.</p>
        <p>The constrained development focus of “straightjacket” GODPs seems to have
potential for supporting a safe development process.
6</p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Ongoing and Future Work</title>
      <p>
        Development Support Tools. We are working on an environment for just
such “straightjacket” GODPs focussing on one GODP as a development
operation at a time while other changes are blocked. A planned user interface, as a
Protégé [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] plugin, will take care of smooth interaction with Hets, tracks changes
with change management, and provides development control (see below).The
vision for the future is that all development will be done this way and free editing
is banned.
      </p>
      <p>This user interface will be for the semantic modelling expert, who will develop
new general GODPs, and the domain expert selecting ready-made interfaces on
top of GODPs for specific development tasks in an application domain.</p>
      <p>The above experts are allowed to change the modelling level of an ontology;
an application interface for an end-user will only be able to browse (with a
frozen model), and add or change application-oriented data (i.e. individuals and
relating facts), such as person profiles, new recipes, or shopping lists.</p>
      <sec id="sec-6-1">
        <title>Compilation of Application-Oriented Patterns. We expect the semantic</title>
        <p>modelling expert to be able to easily compile specialized domain-oriented GODPs
from the repository of GODPs. An extra user-interface might then be added for
the domain expert, compiled from a repository of appropriate components, but
it is mere “syntactic sugar” (“interface topping”) with its semantics firmly and
safely rooted in the GODP framework.</p>
      </sec>
      <sec id="sec-6-2">
        <title>Generation of Ontology Components is usually quite cumbersome and</title>
        <p>error-prone, since code using the OWL-API has to be written and debugged.</p>
        <p>
          With GODPs, this process is raised to an appropriate abstraction level
(including potential verification). Only the triggering of the application of a GOPD
has to be programmed (to be included in our support tools). The iteration of a
GODP application is then easily achieved, possibly by development control (see
below). As a simple example consider the generation of a standard individual
IndividualExtension (Fig. 5), to be repeated for all classes in a particular context.
Development Control for complex development tasks, guiding through
subtasks, will require further research. Examples are collateral or intermediate
abstraction (cf. [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]), where an ongoing development is temporarily suspended,
while another auxiliary development is pursued, and subsequently resumed; in
fact, control is alternating between subtasks.
        </p>
        <p>
          We envisage development terms with GODP instantiations as development
atoms and operations such as subordinate or collateral composition, where
subdevelopments are initiated while the parent development stays suspended.
Similarly, iteration of developments is intended (cf. development functionals in [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]).
Development Ontology. Development operations, their parameter profiles
and other details will be formalized in a Development Ontology, which is
imported into an actual development, but does not affect its semantics; links into
it act like formal annotations. Of particular interest is the interlinking of the
application of a development operation, viz. instantiation of a GODP, to the
GODP and the arguments in the instantiation.
        </p>
        <p>
          Change Management. The definition of such a Development Ontology, which
is the basis for change management, is fairly well advanced. On the basis of
semantic change impact analysis [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ], development operations will be treated as first
class citizens; this will open the possibility for transformations of development
terms such as reordering according to algebraic properties.
        </p>
        <p>Not only GODPs but whole developments will be re-usable by replay,
potentially with adaptation transformations.
GDOL extensions. GODPs are presently supported as generic CASL
specifications in Hets. Generic ontologies are defined as a Generic extension of DOL
to GDOL, to be proposed as an extension of the DOL standard (cf. Sect. 2.1).</p>
        <p>
          GDOL examples in this paper (available at https://ontohub.org/godp)
are confined to extensions of an ontology (actually the vast majority). Deletions
of items in GDOL receive their semantics in [
          <xref ref-type="bibr" rid="ref15">15</xref>
          ].
        </p>
        <p>In contrast to CASL, where generics are “first order”, we are considering an
extension, where separate parameters, which often occur in the examples above,
are taken to augment the context one by one; in fact, new generics could be
defined from existing ones by partial parameterization (whether one should go
all the way to introduce higher-order generics is a different question). This seems
to be natural and would simplify some of the examples: e.g., with</p>
        <p>GESubStepVal = GESubStep[Class: S][Class: T][Class: Val]
as a local definition in GESubStep, these parameters are fixed, and the previous
instantiations of GESubStep are then reduced to just the remaining arguments,
e.g. GESubStepVal[Class: Val0][Class: Val1][ObjectProperty: has[T,Val,Val0]].</p>
        <p>We are also contemplating an extension of the syntax for GODPs in GDOL
that corresponds to iterations in patterns, denoted e.g. by some elliptical
notation. Compare the initial, iteration step and final phases represented by extra
component GODPs in Fig. 3 (Sect. 3.2), which suggest an ellipsis in the body of
ValSet4 for instantiations of ValSetStep, accompanied by some ellipsis for extra
parameters (similarly in Fig. 6 and Fig. 7).</p>
        <p>Moreover, it would be nice, if Hets would take the type of an argument (as
required by the parameter) into account in instantiations; this would eliminate
the need for stating such information in the argument and render instantiations
considerably more compact: “ Class:” could e.g. be deleted everywhere in the
body of ValSet4 (Fig. 3), GradedRelations4 (Fig. 6), or GESubsumption4 (Fig. 7),
and similarly in the associated instantiations.</p>
        <p>Acknowledgements. We are very grateful to the reviewers and Serge Autexier,
Jens Pelzetter, and Martin Rink for their suggestions and contributions.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Ontology</given-names>
            <surname>Design</surname>
          </string-name>
          <article-title>Pattern Types, ontologydesignpatterns</article-title>
          .org/wiki/OPTypes
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>OWL</given-names>
            <surname>Web Ontology Language - Use Cases</surname>
          </string-name>
          and Requirements - W3C
          <source>Recommendation 10 February</source>
          <year>2004</year>
          ,
          <article-title>www</article-title>
          .w3.org/TR/2004/REC-webont-req-
          <volume>20040210</volume>
          /
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Protégé</given-names>
            <surname>Desktop User Documentation</surname>
          </string-name>
          ,
          <year>August 2016</year>
          ,
          <article-title>protegewiki</article-title>
          .stanford. edu/wiki/ProtegeDesktopUserDocs
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Astesiano</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bidoit</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Krieg-Brückner</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kirchner</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mosses</surname>
            ,
            <given-names>P.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sannella</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tarlecki</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>CASL - the Common Algebraic Specification Language</article-title>
          .
          <source>Theoretical Computer Science</source>
          <volume>286</volume>
          ,
          <fpage>153</fpage>
          -
          <lpage>196</lpage>
          (
          <year>2002</year>
          ), http://www.cofi.info
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Autexier</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hutter</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mossakowski</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          :
          <article-title>Change management for heterogeneous development graphs</article-title>
          . In: Siegler,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Wasser</surname>
          </string-name>
          , N. (eds.) Verification, Induction,
          <string-name>
            <given-names>Termination</given-names>
            <surname>Analysis</surname>
          </string-name>
          ,
          <article-title>Festschrift in honor of Christoph Walther</article-title>
          . LNCS, Springer (November
          <year>2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Bateman</surname>
            ,
            <given-names>J.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Castro</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Normann</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pera</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Garcia</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Villaveces</surname>
            ,
            <given-names>J.M.:</given-names>
          </string-name>
          <article-title>OASIS Common hyper-ontological framework (COF)</article-title>
          .
          <source>EU FP7 Project OASIS - Open architecture for Accessible Services Integration and Standardization Deliverable D1.2</source>
          .1,
          <string-name>
            <surname>Bremen</surname>
            <given-names>University</given-names>
          </string-name>
          , Bremen, Germany (
          <year>January 2010</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Bidoit</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mosses</surname>
          </string-name>
          , P.D. (eds.):
          <article-title>CASL User Manual</article-title>
          ,
          <source>LNCS</source>
          , vol.
          <volume>2900</volume>
          . Springer, Berlin, Heidelberg (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Blomqvist</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sandkuhl</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>Patterns in ontology engineering: Classification of ontology patterns</article-title>
          . In: Chen,
          <string-name>
            <given-names>C.</given-names>
            ,
            <surname>Filipe</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Seruca</surname>
          </string-name>
          ,
          <string-name>
            <given-names>I.</given-names>
            ,
            <surname>Cordeiro</surname>
          </string-name>
          ,
          <string-name>
            <surname>J</surname>
          </string-name>
          . (eds.)
          <source>ICEIS</source>
          <year>2005</year>
          ,
          <source>Proceedings of the Seventh International Conference on Enterprise Information Systems</source>
          , Miami, USA, May
          <volume>25</volume>
          -28,
          <year>2005</year>
          . pp.
          <fpage>413</fpage>
          -
          <lpage>416</lpage>
          (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <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,
          <string-name>
            <given-names>Y.</given-names>
            ,
            <surname>Motta</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.</given-names>
            ,
            <surname>Benjamins</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.R.</given-names>
            ,
            <surname>Musen</surname>
          </string-name>
          ,
          <string-name>
            <surname>M.A</surname>
          </string-name>
          . (eds.)
          <source>The Semantic Web - ISWC</source>
          <year>2005</year>
          , 4th International Semantic Web Conference,
          <source>Proceedings. LNCS</source>
          , vol.
          <volume>3729</volume>
          , pp.
          <fpage>262</fpage>
          -
          <lpage>276</lpage>
          . Springer (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Ichbiah</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Krieg-Brückner</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wichmann</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ledgard</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Heliard</surname>
            ,
            <given-names>J.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Abrial</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barnes</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roubine</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>Preliminary Ada Reference Manual</article-title>
          .
          <source>ACM SIGPLAN Notices</source>
          (
          <volume>14</volume>
          :6 Part
          <string-name>
            <surname>A</surname>
          </string-name>
          ) (
          <year>1979</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Krieg-Brückner</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Transformational meta program development</article-title>
          . In: Broy,
          <string-name>
            <given-names>M.</given-names>
            ,
            <surname>Wirsing</surname>
          </string-name>
          , M. (eds.)
          <source>Methods of Programming. LNCS</source>
          , vol.
          <volume>544</volume>
          , pp.
          <fpage>19</fpage>
          -
          <lpage>33</lpage>
          . Springer, Berlin, Heidelberg (
          <year>1991</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Krieg-Brückner</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Generic Ontology Design Patterns: Qualitatively Graded Configuration</article-title>
          . In: Lehner,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Fteimi</surname>
          </string-name>
          , N. (eds.)
          <source>KSEM</source>
          <year>2016</year>
          ,
          <source>The 9th International Conference on Knowledge Science, Engineering and Management. Lecture Notes in Artificial Intelligence</source>
          , vol.
          <volume>9983</volume>
          , pp.
          <fpage>580</fpage>
          -
          <lpage>595</lpage>
          . Springer International Publishing (
          <year>2016</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Kutz</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mossakowski</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lücke</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          : Carnap, Goguen, and the Hyperontologies:
          <article-title>Logical Pluralism and Heterogeneous Structuring in Ontology Design</article-title>
          .
          <source>Logica Universalis</source>
          <volume>4</volume>
          (
          <issue>2</issue>
          ),
          <fpage>255</fpage>
          -
          <lpage>333</lpage>
          (
          <year>2010</year>
          ), special Issue on 'Is Logic Universal?'
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Mossakowski</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Codescu</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Neuhaus</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kutz</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          :
          <article-title>The Distributed Ontology, Modeling and Specification Language - DOL</article-title>
          . In: Koslow,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Buchsbaum</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . (eds.) The Road to Universal Logic, vol. I, pp.
          <fpage>489</fpage>
          -
          <lpage>520</lpage>
          . Birkhäuser (
          <year>2015</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Mossakowski</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Krieg-Brückner</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>Partial Pushout Semantics of Generics in GDOL (submitted)</article-title>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Mossakowski</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kutz</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Codescu</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lange</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>The distributed ontology, modeling and specification language</article-title>
          . In: Vescovo,
          <string-name>
            <given-names>C.D.</given-names>
            ,
            <surname>Hahmann</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            ,
            <surname>Pearce</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            ,
            <surname>Walther</surname>
          </string-name>
          ,
          <string-name>
            <surname>D</surname>
          </string-name>
          . (eds.)
          <article-title>WoMo 2013</article-title>
          .
          <article-title>CEUR-WS online proceedings</article-title>
          , vol.
          <volume>1081</volume>
          (
          <year>2013</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Mossakowski</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maeder</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lüttich</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          :
          <article-title>The heterogeneous tool set, Hets</article-title>
          . In: Grumberg,
          <string-name>
            <given-names>O.</given-names>
            ,
            <surname>Huth</surname>
          </string-name>
          , M. (eds.)
          <article-title>Tools and Algorithms for the Construction and Analysis of Systems</article-title>
          , 13th International Conference, TACAS 2007,
          <article-title>Proceedings</article-title>
          . LNCS, vol.
          <volume>4424</volume>
          , pp.
          <fpage>519</fpage>
          -
          <lpage>522</lpage>
          . Springer (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Mosses</surname>
          </string-name>
          , P.D. (ed.)
          <source>: CASL Reference Manual, LNCS</source>
          , vol.
          <volume>2960</volume>
          . Springer, Berlin, Heidelberg (
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19. Object Management Group:
          <article-title>The distributed ontology, modeling, and specification language (DOL) (2016), OMG standard available at omg</article-title>
          .org/spec/DOL. See also dol-omg.org
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Presutti</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gangemi</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Content ontology design patterns as practical building blocks for web ontologies</article-title>
          . In: Li,
          <string-name>
            <given-names>Q.</given-names>
            ,
            <surname>Spaccapietra</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            ,
            <surname>Yu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E.S.K.</given-names>
            ,
            <surname>Olivé</surname>
          </string-name>
          ,
          <string-name>
            <surname>A</surname>
          </string-name>
          . (eds.) Conceptual Modeling - ER
          <year>2008</year>
          , 27th International Conference on Conceptual Modeling, Barcelona, Spain,
          <source>October 20-24</source>
          ,
          <year>2008</year>
          . Proceedings. LNCS, vol.
          <volume>5231</volume>
          , pp.
          <fpage>128</fpage>
          -
          <lpage>141</lpage>
          . Springer (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>