-
Key: KERML_-68
-
Status: open
-
Source: Model Driven Solutions ( Mr. Ed Seidewitz)
-
Summary:
The properties Expression::result and Function::result subset parameter, which means they do not have to be ownedFeatures.
The description of deriveExpressionResult states that
If an Expression has a parameter owned via a ReturnParameterMembership, then that is its result parameter. Otherwise, its result parameter is the result parameter inherited from its function.
As written, the OCL interprets this as meaning that the result parameter of an Expression is either owned by that Expression or inherited from the function of that Expression. However, this derivation does not allow for the possibility that an Expression might inherit its result parameter from a supertype Expression. It would seem to make more sense just to select the result as the parameter owned via a ReturnParameterMembership, whether directly owned or inherited (i.e., owned by a supertype) .
Somewhat similarly, the description of the constraint deriveFunctionResult states that
The result parameter of a Function is its parameter owned via a ReturnParameterMembership (if any).
However, the OCL requires that the result parameter of a Function be owned by that Function and cannot be inherited. That seems to be more restrictive than was intended for this constraint.
-
Reported: KerML 1.0b2 — Mon, 22 Apr 2024 12:55 GMT
-
Updated: Fri, 10 May 2024 21:57 GMT
KERML_ — deriveExpressionResult and deriveFunctionResult should be revised
- Key: KERML_-68
- OMG Task Force: Kernel Modeling Language (KerML) 1.0 FTF 2