Ontology Project Back to Top

OntoUML Specification 1.0

Last Change:

Editor:


Table of Contents

Introduction

OntoUML is an ontologically well-founded UML extension based on the Unified Foundational Ontology (UFO). UFO was created by Giancarlo Guizzardi in his Ph.D. thesis and used to evaluate and re-design a fragment of the UML 2.0 metamodel. Giancarlo Guizzardi is a lead researcher at the Ontology & Conceptual Modeling Research Group (NEMO) located at the Federal University of Espírito Santo (UFES) in Vitória, ES Brazil.

1. Overview

OntoUML Metamodel

2. Substantial

Prefix Meta-Properties (MP)
+O Provides identity (Own identity)
-O Does not provides identity
+I Identity
-I No identity
+R Rigid
-R Anti-Rigid
~R Semi-Rigid
+D Dependent
-D Independent

2.1. Sortal

2.1.1. Kind

Stereotype MP Description
+O
+I
+R
-D
A «kind» represents a substance sortal whose instances are functional complexes. Examples include instances of Natural Kinds (such as Person, Dog, Tree) and of artifacts (Chair, Car, Television).

Example

2.1.2. Subkind

Stereotype MP Description
-O
+I
+R
-D
A «subkind» is a rigid, relationally independent restriction of a substance sortal that carries the principle of identity supplied by it. An example could be the subkind MalePerson of the kind Person.

Example

2.1.3. Role

Stereotype MP Description
-O
+I
-R
+D
A «role» represents a phased-sortal role, i.e. anti-rigid and relationally dependent universal. For instance, the role student is played by an instance of the kind Person.

Example

2.1.4. Phase

Stereotype MP Description
-O
+I
-R
-D
A «phase» represents the phased-sortals phase, i.e. anti-rigid and relationally independent universals defined as part of a partition of a substance sortal. For instance, 〈Catterpillar, Butterfly〉 partitions the kind Lepdopterum.

Example

2.1.5. Collective

Stereotype MP Description
+O
+I
+R
-D
A «collective» represents a substance sortal whose instances are collectives, i.e., they are collections of complexes that have a uniform structure. Examples include a deck of cards, a forest, a group of people, a pile of bricks. Collectives can typically relate to complexes via a constitution relation. For example, a pile of bricks that constitutes a wall, a group of people that constitutes a football team. In this case, the collectives typically have an extensional principle of identity, in contrast to the complexes they constitute. For instance, The Beatles was in a given world w constituted by the collective {John, Paul, George, Pete} and in another world w’ constituted by the collective {John, Paul, George, Ringo}. The replacement of Pete Best by Ringo Star does not alter the identity of the band, but creates a numerically different group of people.

Example

2.1.6. Quantity

Stereotype MP Description
+O
+I
+R
-D
A «quantity» represents a substance sortal whose instances are quantities. Examples are those stuff universals that are typically referred in natural language by mass general terms (e.g., Gold, Water, Sand, Clay).

Example

2.2. Non Sortal

2.2.1. Category

Stereotype MP Description
-O
-I
+R
-D
A «category» represents a rigid and relationally independent mixin, i.e., a dispersive universal that aggregates essential properties which are common to different substance sortals. For example, the category RationalEntity as a generalization of Person and IntelligentAgent.

Example

2.2.2. RoleMixin

Stereotype MP Description
-O
-I
-R
+D
A «roleMixin» represents an anti-rigid and externally dependent non-sortal, i.e., a dispersive universal that aggregates properties which are common to different roles. In includes formal roles such as whole and part, and initiatior and responder.

Example

2.2.3. Mixin

Stereotype MP Description
-O
-I
~R
-D
A «mixin» represents properties which are essential to some of its instances and accidental to others (semi-rigidity). An example is the mixin Seatable, which represents a property that can be considered essential to the kinds Chair and Stool, but accidental to Crate, Paper Box or Rock.

Example

3. Moment

3.1. Relator

Stereotype Description
A «relator» universal is a relational moment universal. Every instance of relator universal is existentially dependent of at least two distinct entities. Relators are the instantiation of relational properties such as marriages, kisses, handshakes, commitments, and purchases.

Example

3.2. Mode

Stereotype Description
A «mode» universal is an intrinsic moment universal. Every instance of mode universal is existentially dependent of exactly one entity. Examples include skills, thoughts, beliefs, intentions, symptoms, private goals.

Example

3.3. Quality

Stereotype Description
A «quality» is defined as an individual (instance) with the power to connect the entity it qualifies (its subject) with a value in a geometric quality space.

Example

4. Relationships

4.1. Mediation

Stereotype Description
A «mediation» is a formal relation that takes place between a relator universal and the endurant universal(s) it mediates. For example, the universal Marriage mediates the role universals Husband and Wife, the universal Enrollment mediates Student and University, and the universal Covalent Bond mediates the universal Atom.
Constraints
  1. An association stereotyped as «mediation» must have in its source association end a class stereotyped as «relator» representing the corresponding relator universal (self.source.oclIsTypeOf(Relator)=true);
  2. The association end connected to the mediated universal must have the minimum cardinality constraints of at least one (self.target.lower ≥ 1);
  3. The association end connected to the mediated universal must have the property (self.target.isreadOnly = true);
  4. The association end connected to the relator universal must have the minimum cardinality constraints of at least one (self.source.lower ≥ 1).
  5. «mediation» associations are always binary associations.

4.2. Characterization

Stereotype Description
A «characterization» is a formal relation that takes place between a mode universal and the endurant universal this mode universal characterizes. For example, the universals Private Goal and Capability characterize the universal Agent.
Constraints
  1. An association stereotyped as «characterization» must have in its source association end a class stereotyped as «mode» representing the characterizing mode universal (self.source.oclIsTypeOf(Mode)=true);
  2. The association end connected to the characterized universal must have the cardinality constraints of one and exactly one (self.target.lower = 1 and self.target.upper = 1);
  3. The association end connected to the characterizing quality universal (source association end) must have the minimum cardinality constraints of one (self.source.lower ≥ 1);
  4. The association end connected to the characterized universal must have the property (self.target.isreadOnly = true);
  5. «characterization» associations are always binary associations.

4.3. Material

Stereotype Description
A «material» association represents a material relation, i.e., a relational universal which is induced by a relator universal. Examples include student studies in university, patient is treated in medical unit, person is married to person.
Constraints
  1. Every «material» association must be connected to the association end of exactly one derivation relation;
  2. The cardinality constraints of the association ends of a material relation are derived from the cardinality constraints of the «mediation» relations of the relator universal that this material relation is derived from. This is done in the manner shown in this section. However, since «mediation» relations require a minimum cardinality of one on both of its association ends, then the minimum cardinality constraint on each end of the derived material relation must also be ≥ 1 ;
  3. Every «material» association must have the property (isDerived = true).

4.4. Formal

Stereotype Description
A «formal» association represents a formal relation, i.e., either a comparative relation (derived from intrinsic properties of the relating entities), or an internal relation. Examples include Person is older than Person, an Atom is heavier than another atom. We use UML symbolic representation for derived relations ( / ) to represent comparative relations.

4.5. ComponentOf

Representation Description
ComponentOf is a parthood relation between two complexes. Examples include: (a) my hand is part of my arm; (b) a car engine is part of a car; (c) an Arithmetic and Logic Unit (ALU) is part of a Central Process Unit (CPU); (d) a heart is part of a circulatory system.
Constraints
  1. The classes connected to both association ends of this relation must represent universals whose instances are functional complexes. A universal X is a universal whose instances are functional complexes if it satisfies the following conditions: (i) If X is a sortal universal, then it must be either stereotyped as «kind» or be a subtype of a class stereotyped as «kind»; (ii) Otherwise, if X is a mixin universal, then for all classes Y such that Y is a subtype of X, we have that Y cannot be either stereotyped as «quantity» or «collective», and Y cannot be a subtype of class stereotyped as either «quantity» or «collective».

4.6. MemberOf

Representation Description
MemberOf is a parthood relation between a complex or a collective (as a part) and a collective (as a whole). Examples include: (a) a tree is part of forest; (b) a card is part of a deck of cards; (c) a fork is part of cutlery set; (d) a club member is part of a club.
  1. This relation can only represent essential parthood (isEssential = true) if the object representing the whole on this relation is an extensional (isExtensional = true) individual. In this case, all parthood relations in which this individual participates as a whole are essential parthood relations;
  2. The classifier connected to association end relative to the whole individual must be a universal whose instances are collectives. The classifier connected to the association end relative to the part can be either a universal whose instances are collectives, or a universal whose instances are functional complexes.

4.7. SubCollectionOf

Representation Description
SubCollectionOf is a parthood relation between two collectives. Examples include: (a) the north part of the Black Forest is part of the Black Forest; (b) The collection of Jokers in a deck of cards is part of that deck of cards; (c) the collection of forks in cutlery set is part of that cutlery set; (d) the collection of male individuals in a crowd is part of that crowd.
Constraints
  1. The classes connected to both association ends of this relation must represent universals whose instances are collectives. A universal X is a universal whose instances are collectives if it satisfies the following conditions: (i) If X is a sortal universal, then it must be either stereotyped as «collective» or be a subtype of a class stereotyped as «collective»; (ii) Otherwise, if X is a mixin universal, then for all classes Y such that Y is a subtype of X, we have that Y cannot be either stereotyped as «kind» or «quantity», and Y cannot be a subtype of class stereotyped as either «kind» or «quantity»;
  2. The maximum cardinality constraint in the association end connected to the part must be one (self.target.upper = 1).

4.8. SubQuantityOf

Representation Description
SubQuantityOf is a parthood relation between two quantities. Examples include: (a) alcohol is part of Wine; (b) Plasma is part of Blood; (c) Sugar is part of Ice Cream; (d) Milk is part of Cappucino.
Constraints
  1. This relation is always non-shareable (isShareable = false);
  2. All entities stereotyped as «quantity» are extensional individuals and, thus, all parthood relations involving quantities are essential parthood relations;
  3. The maximum cardinality constraint in the association end connected to the part must be one (self.target.upper = 1).
  4. The classes connected to both association ends of this relation must represent universals whose instances are quantities. A universal X is a universal whose instances are quantities if it satisfies the following conditions: (i) If X is a sortal universal, then it must be either stereotyped as «quantity» or be a subtype of a class stereotyped as «quantity»; (ii) Otherwise, if X is a mixin universal, then for all classes Y such that Y is a subtype of X, we have that Y cannot be either stereotyped as «kind» or «collective», and Y cannot be a subtype of class stereotyped as either «kind» or «collective».

4.9. Derivation

Representation Description
A derivation relation represents the formal relation of derivation that takes place between a material relation and the relator universal this material relation is derived from. Examples include the material relation married-to, which is derived from the relator universal Marriage, the material relation kissed-by, derived from the relator universal Kiss, and the material relation purchases-from, derived from the relator universal Purchase.
Constraints
  1. A derivation relation must have one of its association ends connected to a relator universal (the black circle end) and the other one connected to a material relation (self.target.oclIsTypeOf(Relator)=true, self.source.oclIsTypeOf(Material Association)=true);
  2. derivation associations are always binary associations;
  3. The black circle end of the derivation relation must have the cardinality constraints of one and exactly one (self.target.lower = 1 and self.target.upper = 1);
  4. The black circle end of the derivation relation must have the property (self.target.isreadOnly = true);
  5. The cardinality constraints of the association end connected to the material relation in a derivation relation are a product of the cardinality constraints of the «mediation» relations of the relator universal that this material relation derives from. This is done in the manner previously shown in this section. However, since «mediation» relations require a minimum cardinality of one on both of its association ends, then the minimum cardinality on the material relation end of a derivation relation must also be ≥ 1 (self.source.lower ≥ 1).

5. Specialization Table

(↓) to (→) Kind Quantity Collective SubKind Role Phase Category Mixin RoleMixin Relator Mode Quality
Kind - - - - - - - - - -
Quantity - - - - - - - - - -
Collective - - - - - - - - - -
SubKind - - - - - -
Role - - -
Phase - - -
Category - - - - - - - - - -
Mixin - - - - - - - - - -
RoleMixin - - - - - - - - -
Relator - - - - - - - - - - -
Mode - - - - - - - - - - -
Quality - - - - - - - - - - -

6. Relationship Table

(↓) to (→) Kind Quantity Collective SubKind Role Phase Category Mixin RoleMixin Relator Mode Quality
Kind cfm fm fm fm cfm cfm cfm cfm cfm dfm fhm fhm
Quantity fm fmq fm fm fm fm fm fm fm dfm fhm fhm
Collective bfm fm bfms bfm bcfm bcfm bcfm bcfm bcfm dfm fhm fhm
SubKind cfm fm fm fm cfm cfm cfm cfm cfm dfm fhm fhm
Role cfm fm fm fm cfm cfm cfm cfm cfm dfm fhm fhm
Phase cfm fm fm fm cfm cfm cfm cfm cfm dfm fhm fhm
Category cfm fm fm fm cfm cfm cfm cfm cfm dfm fhm fhm
Mixin cfm fm fm fm cfm cfm cfm cfm cfm dfm fhm fhm
RoleMixin cfm fm fm fm cfm cfm cfm cfm cfm dfm fhm fhm
Relator dfm dfm dfm dfm dfm dfm dfm dfm dfm bcdfmqs dfhm dfhm
Mode fhm fhm fhm fhm fhm fhm fhm fhm fhm dfhm fhm fhm
Quality fhm fhm fhm fhm fhm fhm fhm fhm fhm dfhm fhm fhm


Relationships
(m)aterial me(d)iation (c)omponentOf sub(q)uantityOf
(f)ormal c(h)aracterization mem(b)erOf (s)ubcollectionOf