OCL 2.5 RTF Avatar
  1. OMG Issue

OCL25 — OCL 2.1 Navigation of opposites

  • Key: OCL25-51
  • Legacy Issue Number: 15175
  • Status: open  
  • Source: Model Driven Solutions ( Dr. Edward Willink)
  • Summary:

    UML models may explicitly declare that a Property is not navigable in order to simplify the complexity of the run-time representation of that Property.

    In an EMOF representation, the non-navigable Property is missing and so an OCL constraint cannot use it, even though the OCL constraint is used at compile-time rather than run-time.

    In a UML direction, a Property may be unnamed in one direction and the implicit naming of such opposites may be inadequate to permit unambiguous usage.

    QVT Relations 1.1 partially works around this by introducing an opposite(Property) declaration that may be used for Keys and PropertyTemplateItems.

    OCL, rather than QVT, should provide an ability to navigate a Property in an opposite direction.

    In the Abstract Syntax, OppositePropertyCallExp is required to capture the inverse navigation semantics of PropertyCallExp.

    In the Concrete Syntax, some alternate navigation operator is required. Perhaps "a.~b" indicates that "b" is in an inverted direction.

  • Reported: OCL 2.1 — Tue, 13 Apr 2010 04:00 GMT
  • Updated: Thu, 8 Oct 2015 14:11 GMT