R551 - modelint/shlaer-mellor-metamodel GitHub Wiki
R551 / 1:Mc
Class defines zero, one or many Polymorphic Event Specification
Polymorphic Event Specification is defined on exactly one Class
A polymorphic event is defined on some Class which may or may not have its behavior defined by a Lifecycle State Model. No State Model is required since the Polymorphic Event Specification will define a polymorphic event on that Class which is delegated.
Any given Class may or may not have polymorphic events defined on it.
Formalization
Polymorphic Event Specification.(Class, Domain) -> Class.(Name, Domain)
Constraints
Class R551c
/R551/R101/Facet/R102/Superclass == true
(the above traversal path originating from an instance of Polymorphic Event Specification must lead to a non-empty set of Superclass instances)