Issue 9405: Wrong subtyping of PropertyCallExp and NavigationCallExp (ocl2-rtf) Source: Adaptive (Mr. Pete Rivett, pete.rivett(at)adaptive.com) Nature: Uncategorized Issue Severity: Summary: In section 8.3.2 of ptc/05-06-06 PropertyCall is shown as a subclass of NavigationCallExp -this seems the wrong way round: NavigationCallExp seems to be a specialization for when the Property is an AssociationEnd. To illustrate this, the description of NavigationCallExp starts with the following, which would not apply if the Property in question were an ownedAttribute of a class: "A NavigationCallExp is a reference to an AssociationEnd or an AssociationClass defined in a UML model." Resolution: Revised Text: Update text in Section 8.3.2: NavigationCallExp A NavigationCallExp is a reference to a Property or an AssociationClass defined in a UML model. It is used to determine objects linked to a target object by an association, whether explicitly modeled as an Association or implicit. If there is a qualifier attached to the source end of the association, then additional qualifier expressions may be used to specify the values of the qualifying attributes. Associations qualifier The values for the qualifier attributes, if applicable. navigationSource The source denotes the association end Property at the end of the object itself. This is used to resolve ambiguities when the same Classifier is at more than one end (plays more than one role) in the same association. In other cases it can be derived. Actions taken: February 28, 2006: received issue October 16, 2009: closed issue Discussion: NavigationCallExp must be the supertype of PropertyCallExp for two reasons: 1.In the reverse case, AssociationClassCallExp would inherit the referredProperty attribute from PropertyCallExp. However, this would not be applicable because association-class navigation is not a property invocation. 2.A Property can function like an association end even in the absence of an explicit Association, simply by having a Class as its type. Also, in contradiction of the submitter’s assertion, association ends commonly are ownedAttributes of Classes The text does reference the UML 1.x AssociationEnd metaclass, which is incorrect End of Annotations:===== ubject: Issues on OCL2 Date: Tue, 28 Feb 2006 19:17:35 -0800 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Issues on OCL2 Thread-Index: AcY83q/dW5WrPGSHQpeTk4pcJZEGWg== From: "Pete Rivett" To: B) Wrong subtyping of PropertyCallExp and NavigationCallExp In section 8.3.2 of ptc/05-06-06 PropertyCall is shown as a subclass of NavigationCallExp -this seems the wrong way round: NavigationCallExp seems to be a specialization for when the Property is an AssociationEnd. To illustrate this, the description of NavigationCallExp starts with the following, which would not apply if the Property in question were an ownedAttribute of a class: "A NavigationCallExp is a reference to an AssociationEnd or an AssociationClass defined in a UML model." Pete Rivett (mailto:pete.rivett@adaptive.com) CTO, Adaptive Inc. Hello House, 135 Somerford Road, Christchurch, BH23 3PY, UK Tel: +44 (0)1202 491243 Fax: +44 (0)1202 491241 http://www.adaptive.com