Part-Whole¶
UML distinguishes between aggregation and composition only. OntoUML distinguishes among
- sharing
- shared part (white ◊)
- exclusive part (black ♦)
- multiplicity of relationship
- mandatory part with respect to the whole
- mandatory whole w.r.t. the part
- mandatory non-rigid type (e.g. role, phase, mixin)
OntoUML also distinguishes among various types of wholes and their parts
- functional whole (and ComponentOf relation)
- Collective (and SubCollectionOf and MemberOf relations)
- Quantity (and Containment and SubQuantityOf relations)
Examples¶
EX1:
EX2:
Notice that maximum multiplicity of the whole is > 1.
EX3:
Notice that maximum multiplicity of the whole is = 1.
EX4:
Optional part w.r.t. the rigid whole. The whole doesn´t necessarily need any part.
EX5:
Mandatory part w.r.t. the rigid whole. The whole does need a part, instances of the part may mute.
EX6:
Essential part w.r.t. the rigid whole. The whole does need a part, instances mustn´t mute.
EX7:
Optional rigid whole w.r.t. the part. The part may exist alone, even without the whole.
EX8:
Mandatory rigid whole w.r.t. the part. The part must belong to some whole, instances of the whole may mute.
EX9:
Inseparable part of the rigid whole. The part must belong to the same whole, instances of the whole mustn´t mute.
EX10:
Immutable part of the antirigid whole. Whenever the whole exists in the particular role or phase, its parts must be still the same instances – they cannot not mute. Compare to {essential}.
EX11:
Immutable whole w.r.t. the antirigid part. Whenever the part exists in the particular role or phase, its wholes must be still the same instances – they cannot not mute. Instances of the whole may mute only as the part changes it´s role or phase.
GUIZZARDI, Giancarlo. Ontological Foundations for Structural Conceptual Models. Enschede: CTIT, Telematica Instituut, 2005. GUIZZARDI, Giancarlo. Introduction to Ontological Engineering. [presentation] Prague: Prague University of Economics, 2011.