R993 - modelint/shlaer-mellor-metamodel GitHub Wiki
R993 / 1c:1c-1
Multiple Local Create Action designates output reference to zero or one Facet Instantiation
Facet Instantiation is designated as output reference of zero or one Multiple Local Create Action
As opposed to delegated (asynchronous) creation, local (synchronous) creation completes within the context of the initiating Activity. Consequently, a reference to a newly created instance may flow out of the creation action. In the case of a Single Local Create Action, this is just a reference to the newly created instance. But in the case of a Multiple Local Create Action, one of the instantiated Classes must be designated as the one yielding an output instance.
A Multiple Local Create Action may or may not make use of this output.
Any given Facet Instantiation may or may not be the one selected for output.
Formalization
Facet Instantiation Reference.(Rnum, Class, Create action, Activity, Domain) -> Facet Instantiation.(Rnum, Class, Create action, Activity, Domain)
Facet Instantiation Reference.(Create action, Activity, Domain) -> Multiple Local Create Action.(Action, Activity, Domain)