-
Key: KERML-154
-
Status: closed
-
Source: Model Driven Solutions ( Mr. Ed Seidewitz)
-
Summary:
Consider the following:
classifier A { in feature f; } classifier B conjugates A; classifier C specializes B;
The feature f is an input of A, but an output of B. However, f will again be considered an input of C, which is not what one would expect.
The reason for this is that, as currently specified in 8.3.3.1.10 Type, the deriveTypeInput and deriveTypeOutput constraints only flip the inputs and outputs of a type if it is directly conjugated. Otherwise, the derivations just check the direction property of the features of the type, whether they are owned or inherited.
-
Reported: KerML 1.0b1 — Wed, 23 Aug 2023 17:47 GMT
-
Disposition: Resolved — KerML 1.0b2
-
Disposition Summary:
Correct the derivation of Type::input and output
Rather than simply flipping the inputs and outputs on conjugation, it is necessary to generally search upward in the supertype hierarchy to see if the direction of a feature is conjugated (possibly more than once). This can be done in the directionOf operation (allowing for the possibility of circular specializations), with input and output then derived as being collected from the features of a Type with the correct direction based on directionOf.
-
Updated: Tue, 1 Jul 2025 15:01 GMT
KERML — Directed features inherited from a conjugated type not handled properly
- Key: KERML-154
- OMG Task Force: Kernel Modeling Language (KerML) 1.0 FTF