KerML 1.0b2 FTF Avatar
  1. OMG Issue

KERML — Error in Expression modelLevelEvaluable operation OCL

  • Key: KERML-248
  • Status: closed  
  • Source: Self ( Jim Ciarcia)
  • Summary:

    Operations
    modelLevelEvaluable
    I'm not convinced the OCL expression is the same as the lexical explanation directly above it.
    Also the OCL may just be wrong in the 6th line
    "f.ownedFeature->isEmpty() f.valuation = null and or"
    This OCL needs to be very carefully looked at to align with the lexical explanation directly above it.
    I didn't spend more time on this but there were other concerns I had about the Relationships check and passing visited without adding itself to the visited list.
    It could be as simple as "((directionOf(f) = ... result) and f.ownedFeature->isEmpty() and f.valuation = null) or"

  • Reported: KerML 1.0b1 — Sun, 3 Dec 2023 02:58 GMT
  • Disposition: Resolved — KerML 1.0b2
  • Disposition Summary:

    Correct the operation Expression::modelLevelEvaluable

    The OCL for the operation is not only ill-formed, but even if that is fixed, it is incorrect: there is no such thing as an "implicit feature", and features cannot be relationships. However, it is actually not wrong that the OCL does not check or update the visited parameter. The references being tracked in this parameter are actually only those from FeatureReferenceExpressions. This should be made clearer in the operation description.

  • Updated: Tue, 1 Jul 2025 15:01 GMT