A Composition_of_state is a Mapping that is between two instances of State (whole and part) and that indicates each individual product in the whole State is a composition that contains, or can contain, another individual product in the part State.
EXAMPLE - 'Part type XYZ_123' is a product specification. 'Drive shaft of part type XYZ_123' is another product specification. There is a chain of assembly relationships that relate a 'drive shaft of part type XYZ_123' to the 'part type XYZ_123' assembly as a whole, which are outside the scope of this module.
'Part type XYZ_123 at maximum power' is a State specification that is valid for a member of 'Part type XYZ_123'. 'Drive shaft of part type XYZ_123 turning at 3000 rpm' is another State specification that is valid for a member of 'Drive shaft of part type XYZ_123'.
The relationship between:
that indicates:
- the whole State that is 'Part type XYZ_123 at maximum power'; and
- the part State that is 'Drive shaft of part type XYZ_123 turning at 3000 rpm',
is a Composition_of_state.
- a part of type XYZ_123 running at maximum power contains a drive shaft turning at 3000 rpm (cardinality_1 is 1); and
- a drive shaft of part type XYZ_123 turning at 3000 rpm can, but need not, be contained within a part of type_XYZ at maximum power (cardinality_2 is 0 or 1),
EXPRESS specification:
*) ENTITY Composition_of_state SUBTYPE OF (Mapping); part : State whole : State; END_ENTITY; (*
Attribute definitions:
part: the State that is a part of the whole.
whole: the State that contains the part.