Issue 7825: UML 2 Superstructure -Incompatible use of term link (uml2-superstructure-ftf) Source: The MathWorks (Mr. Alan Moore, alan.moore(at)mathworks.co.uk) Nature: Uncategorized Issue Severity: Summary: The Semantics of Association says: "An association declares that there can be links between instances of the associated types. A link is a tuple with one value for each end of the assocaition, where each value is an instance of the type of the end." but in Semantics of Connector the spec states: "Specifies a link that enables communication between two or more instances. This link may be an instance of an association, or it may represent the possibility of the instances being able to communicate because their identities are known by virtue of being passed in as parameters, held in variables or slots, or because the communicating instances are the same instance." The small issue is that link is used in incompatible ways which is confusing. The bigger issue is that Connectors may be typed by Associations and even if there is no actual type, one is "inferred". I would have thought that an instance of a Connector (a link) typed by an Association would have to be an Association Instance; one possible interpretation of this is that an instance of a Connector is only an Association Instance if it has a "non-inferred" type, although the value of "inferring" a type seems dubious if that is the case. The spec should clarify the situation. Resolution: Revised Text: Actions taken: September 30, 2004: received issue Discussion: End of Annotations:===== m: "Moore, Alan" To: issues@omg.org Subject: UML 2 Superstructure -Incompatible use of term link Date: Thu, 30 Sep 2004 12:32:13 +0100 X-Mailer: Internet Mail Service (5.5.2657.72) Two issues really: The Semantics of Association says: "An association declares that there can be links between instances of the associated types. A link is a tuple with one value for each end of the assocaition, where each value is an instance of the type of the end." but in Semantics of Connector the spec states: "Specifies a link that enables communication between two or more instances. This link may be an instance of an association, or it may represent the possibility of the instances being able to communicate because their identities are known by virtue of being passed in as parameters, held in variables or slots, or because the communicating instances are the same instance." The small issue is that link is used in incompatible ways which is confusing. The bigger issue is that Connectors may be typed by Associations and even if there is no actual type, one is "inferred". I would have thought that an instance of a Connector (a link) typed by an Association would have to be an Association Instance; one possible interpretation of this is that an instance of a Connector is only an Association Instance if it has a "non-inferred" type, although the value of "inferring" a type seems dubious if that is the case. The spec should clarify the situation.