Issue 8021: Section: Classes (uml2-rtf) Source: NIST (Dr. Conrad Bock, conrad.bock(at)nist.gov) Nature: Clarification Severity: Significant Summary: Specializing one association end Suppose we have a class diagram like this: <pre> aend bend A ----------------------------- B ^ ^ | | | | | | | | | subbend | | {subsets bend} | SubA -------------------------- SubB </pre> What metarelation is used between the lower left end and the upper left end (aend)? It is not redefined or subsetted. Resolution: Revised Text: Actions taken: December 30, 2004: received issue August 23, 2006: closed issue Discussion: There are four properties in this model (assuming the properties are owned by the class): A::bend, B::aend, SubA::subbend, and an unnamed property ::SubB (or SubB::subA by default). The subsets constraint only indicates all the elements in SubA::subbend must be contained in A::bend. There are no constraints or any other connection between properties B::aend and SubB::subA. Disposition: Closed, no change End of Annotations:===== m: webmaster@omg.org Date: 30 Dec 2004 15:14:47 -0500 To: Subject: Issue/Bug Report -------------------------------------------------------------------------------- Name: Conrad Bock Company: NIST mailFrom: conrad.bock@nist.gov Notification: No Specification: UML 2 Super Section: Classes FormalNumber: ptc/04-10-02 Version: 2.0 RevisionDate: 04-10-02 Page: - Nature: Clarification Severity: Significant HTTP User Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322) Description Specializing one association end Suppose we have a class diagram like this: aend bend A ----------------------------- B ^ ^ | | | | | | | | | subbend | | {subsets bend} | SubA -------------------------- SubB What metarelation is used between the lower left end and the upper left end (aend)? It is not redefined or subsetted. Reply-To: From: "Conrad Bock" To: "Juergen Boldt" Subject: RE: issue 8021-- UML 2 RTF (superstructure) issue Date: Thu, 30 Dec 2004 15:32:59 -0500 X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) Juergen, My ascii diagram got munged in the report. If possible, can you update it to this HTML:
      aend                  bend
   A ----------------------------- B
   ^                               ^
   |                               |
   |                               |
   |                               |
   |                               |
   |                      subbend  |
   |               {subsets bend}  |
  SubA -------------------------- SubB


The "pre" construct should preserve the white space and line breaks. Thanks, Conrad -----Original Message----- From: Juergen Boldt [mailto:juergen@omg.org] Sent: Thursday, December 30, 2004 3:21 PM To: issues@omg.org; uml2-rtf@omg.org Subject: issue 8021-- UML 2 RTF (superstructure) issue From: webmaster@omg.org Date: 30 Dec 2004 15:14:47 -0500 To: Subject: Issue/Bug Report Name: Conrad Bock Company: NIST mailFrom: conrad.bock@nist.gov Notification: No Specification: UML 2 Super Section: Classes FormalNumber: ptc/04-10-02 Version: 2.0 RevisionDate: 04-10-02 Page: - Nature: Clarification Severity: Significant HTTP User Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322) Description Specializing one association end Suppose we have a class diagram like this: aend bend A ----------------------------- B ^ ^ | | | | | | | | | subbend | | {subsets bend} | SubA -------------------------- SubB What metarelation is used between the lower left end and the upper left end (aend)? It is not redefined or subsetted. ================================= Jürgen Boldt Director, Member Services Object Management Group 250 First Avenue, Suite 100 Needham, MA 02494 Tel. +1 781 444 0404 ext. 132 Fax: +1 781 444 0320 email: juergen@omg.org www www.omg.org Reply-To: From: "Conrad Bock" To: Subject: RE: Draft ballot 7 -- please review Date: Tue, 2 Aug 2005 15:36:09 -0400 X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) Hi Bran, Comments on draft ballot 7. Conrad - Issue 8021: Section: Classes The discussion says "There are no constraints or any other connection between properties B::aend and SubB::subA", but there must be. For example, if there is an instance of SubB, and you navigate from it along the inherited B::aend, the result should be the instances of A related by that association, including the ones created on instances of SubA with SubB::subA. How can it have this semantics if B::aend and SubB::subA aren't related? Needs more discussion, especially in relation to the text references in Association Semantics, see 8023 below. - Issue 8023: Association specialization semantics This didn't address the issues that some of the text applies to Generalization. The cited text, including the proposed revision, is especially confusing because the semantics of Generalization in UML is that all the instances of the subtype are instances of the supertype, so subtyping in UML implies subsetting. It is not necessarily proper subsetting, as the cited text explains, but that is a minor point. Subsetting/specialization in UML can be achieved by subtyping (adding attributes, etc), but can only be done by adding constraints to the subtype. In particular, for association classes, the user should be able to specialize an association class with another association class with the same semantics as to subsetting ends. Should discuss more. - Issue 8028: create dependency Figures 103 and 121 This way of modeling a constructor should be in Classes, which Thomas agrees with. His question on the wiki was about whether compliance levels permitted it, but I can't see why they wouldn't. Seems like it can be moved to Classes with no adverse effect. - Issue 8038: IsReadOnly constriant This is overconstrained, because the default value could be set dynamically before initialization, rather than a default value. As long as this happens before initialization is over, there is no violation of multiplicity. In any case, UML doesn't enforce when constraints are evaluated or inconsistencies repaired. Tim's response on the wiki only came on the 29th, so I hadn't replied, but it was only about the wording I used on the wiki, which I corrected to the above. Never mind that I filed the issue! - Issue 8078: Actor is a specialized Classifier and not BehavioredClassifier There isn't anything I can find on BehavioredClassifier that says it supports interfaces. - Issue 8677: token movement In the revised text, update the new sentence to "For brevity, the specification uses the terms "flow", "pass", "traverse" interchangeably in relation to tokens to mean offering tokens, and movement of tokens when offers are accepted. - Issue 8751: Relations I agree with the filer here. We should discuss more. - Issue 8758: Association in UseCase diagram Can't say there hasn't been enough discussion, but use cases have had associations between them for so long, that it doesn't seem Reply-To: Joaquin Miller X-Mailer: QUALCOMM Windows Eudora Version 6.2.1.2 Date: Fri, 05 Aug 2005 10:15:25 -0700 To: UML-RTF From: Joaquin Miller Subject: Re: Draft ballot 7 -- please review Oops. I'm sure i mailed this, but it looks like maybe i did not. 6524: Does this deal with the complaint about the generated JMI interface? The resolution would be more satisfying (if so) if it explained how or (if not) said why not. 8021: "an unnamed property ::SubB (or SubB::subA by default)" seems fishy: Should the '::' jump around 'SubB' like that? 8023: How about: Specialization is, in contrast to Subsetting, a relationship in the domain of intentional semantics, which is to say it characterizes the criteria whereby membership in the collection of instances is defined, not by specifying the actual collection of instances. One classifier may specialize another by adding or redefining features; while a set cannot specialize another set, it can only be a subset or superset of another set. A naïve but popular and useful view has it that as the classifier becomes more specialized, the extent of the collection(s) of its instances narrows. This is because instances of the more general classifier include instances of all its different specializations. In the case of associations, subsetting ends, according to this view, corresponds to specializing the association since the collection of instances of a specialization would be a subset of the collection of instances of its generalization. This view falls down because it ignores the case of classifiers which, for whatever reason (e.g. abstract classes), have no instances. Adding new criteria for membership does not narrow the set of instances if the classifier already has no instances. [I don't even like that. [-- I don't feel it helps. [-- It seems to say that UML 2 subsetting is a relationship in the domain of extensional semantics. But it is not. If we like the phrase, 'a relationship in the domain of intentional semantics,' then certainly UML 2 subsetting is a relationship in the domain of intentional semantics. [-- The example of abstract classes also seems to me to be incorrect: Abstract classes have instances. In particular, an abstract class which is specialized by concrete classes has, as instances, as many instances as those classes have.] To: Joaquin Miller Cc: UML-RTF Subject: Re: Draft ballot 7 -- please review X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003 From: Branislav Selic Date: Fri, 5 Aug 2005 16:59:06 -0400 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.5.4|March 27, 2005) at 08/05/2005 16:59:10, Serialize complete at 08/05/2005 16:59:10 Hello Joaquin, > Oops. I'm sure i mailed this, but it looks like maybe i did not. If you did, I have not received it. However, better late than never. > 6524: Does this deal with the complaint about the generated JMI > interface? The resolution would be more satisfying (if so) if it > explained how or (if not) said why not. I have added an explanation to the resolution. The problem is that the concept of feature redefinition -- which is not supported by most popular OO languages -- is (a) an architectural feature of UML 2 and (b) used extensively in the definition of the UML metamodel. Removing this would require major surgery to the metamodel and a change to the definition of the UML language. It is far beyond the scope of an RTF. One choice might be to defer the issue, but the issue text is not cirectly challenging the concept of redefinition but is focusing on just one particular usage of it. Therefore, I think that it is appropriate to close this issue as "no change". If someone wants to challenge the redefinition capability of UML, then an explicit issue should be formulated to that end. > 8021: "an unnamed property ::SubB (or SubB::subA by default)" seems > fishy: Should the '::' jump around 'SubB' like that? This is merely the OCL convention for giving names to un-named association ends. Jim was just using it to explain things. > 8023: How about: > Specialization is, in contrast to Subsetting, a relationship in the > domain of intentional semantics, which is to say it characterizes > the criteria whereby membership in the collection of instances is > defined, not by specifying the actual collection of instances. One > classifier may specialize another by adding or redefining features; > while a set cannot specialize another set, it can only be a subset > or superset of another set. A naïve but popular and useful view has > it that as the classifier becomes more specialized, the extent of > the collection(s) of its instances narrows. This is because > instances of the more general classifier include instances of all > its different specializations. In the case of associations, > subsetting ends, according to this view, corresponds to specializing > the association since the collection of instances of a > specialization would be a subset of the collection of instances of > its generalization. This view falls down because it ignores the > case of classifiers which, for whatever reason (e.g. abstract > classes), have no instances. Adding new criteria for membership > does not narrow the set of instances if the classifier already has > no instances. Issue 8023 has been withdrawn from the ballot. Please discuss with Jim Amsden about your preferred reformulation. Cheers...Bran