SEMICeu / style-guide

SEMIC style guide to create reusable vocabularies and application profiles
https://semiceu.github.io/style-guide/
Creative Commons Attribution 4.0 International
9 stars 2 forks source link

UML Composition for Application Profiles #95

Open sixdiamants opened 6 months ago

sixdiamants commented 6 months ago

UML class diagrams often use composition relations (the black lozenge) to express that the individual at the other end of the relation can’t live without its owner, e.g. a bike has two wheels, – when the bike dies, so do the wheels.

This notion of life cycle is missing from SEMIC, probably because it's not a conceptual consideration.

UML modellers will need explaining why the different aggregation types are absent. Secondly, the life cycle does become relevant when creating an AP. I would like SHACL to warn me that I define a bike without wheels and vice versa.

Suggestions:

  1. Consider introducing the black lozenge connector or
  2. Justify in the style guide the absence of the composition relation because it's equivalent to an attribute in terms of life cycle
  3. Introduce a SHACL shape that checks that a part (e.g. a wheel) has an owner (the bicycle).

Final remark; imho SEMIC may wish to state that the white lozenge is equivalent to the plain association