R995 - modelint/shlaer-mellor-metamodel GitHub Wiki

R995 / 1:Mc

Single Create Action creates instance of exactly one Class

Class is instantiated by zero, one or many Single Create Action


By definition, this action creates a single instance of one Class.

Any given Class may or may not be the target of a Single Create Action. If a Class participates in one or more Generalization relationships, it is an error for that Class to be the target of a Single Create Action. Also, if instances of a given Class are not created during runtime, it will not be the target of any Create Action.

Multiple actions in possibly different Activities or even the same Activity may create instances of the same Class.

Formalization

Single Create Action.(Class, Domain) -> Class.(Name, Domain)

Constraint

The target Class must be in the same domain as the Single Create Action. This is enforced by using the same Domain attribute constrained on R994.