Issue 6221: UML 2 Super/pg.130/incorrect stereotype name (uml2-superstructure-ftf) Source: Simula Research Laboratory (Mr. Bran Selic, selic(at)acm.org) Nature: Uncategorized Issue Severity: Summary: pg. 130: – private package import shown as «use» in chart, but should be «access» according to previous text for private import Resolution: see above Revised Text: Actions taken: September 7, 2003: received issue March 8, 2005: closed issue Discussion: In Table 4, page 130, section 7.18, of the UML2 Superstructure FAS (ptc/03-08- 02), change the text “<<use>>” to “<<access>” in the Notation column of the row with Path Type column value of “PackageImport (private)”. The UML2 Infrastructure FAS (ptc/03-09-15) does not contain a corresponding table and consequently requires no change. End of Annotations:===== ubject: UML 2 Super/pg.130/incorrect stereotype name X-Mailer: Lotus Notes Release 5.0.11 July 24, 2002 From: Branislav Selic Date: Sun, 7 Sep 2003 09:56:43 -0400 X-MIMETrack: Serialize by Router on D25ML05/25/M/IBM(Release 6.0.2CF1|June 9, 2003) at 09/07/2003 09:56:46, Serialize complete at 09/07/2003 09:56:46 pg. 130: – private package import shown as «use» in chart, but should be «access» according to previous text for private import Bran Selic IBM Software Group -- Rational Software 770 Palladium Drive Kanata, Ontario, Canada K2V 1C8 ph. (613) 591-7915 fax (613) 599-3912 Subject: <> vs. <> Date: Tue, 15 Jun 2004 15:11:02 -0700 X-MS-Has-Attach: yes X-MS-TNEF-Correlator: Thread-Topic: Issues 6221 and 6255 Thread-Index: AcRP78Um25hEoD4WSUSY03kIB0i6ggDEhapQ From: "Tolbert, Doug M" To: "Branislav Selic" Cc: "Joaquin Miller (E-mail)" , , X-OriginalArrivalTime: 15 Jun 2004 22:11:03.0779 (UTC) FILETIME=[A60A1330:01C45325] Bran, If possible, please plan on a few minutes to discuss this on Wednesday's conference call. We need to come to some resolution so I can to continue with issue closures. Here's the quote I think you mean by "in an e-mail I sent earlier" ... "It seems that the meaning of <> changed from 1.5 to 2.0. In the 1.5 spec, it is stated that the difference between <> and <> is that the former does not add anything to the importing namespace whereas the latter does. I guess this just means that an accessed element has to be referenced by its qualified name (I guess that also applies to any alias that might be specified). In contrast, in 2.0, <> means that the imported elements have private visibility whereas <> means they have public visibility." My reading of the Infra and Super FASs finds that <> is pretty well "there" in both documents (even before any of the resolutions I've written on this topic). But as you note, it's meaning has changed from 1.5 to 2.0. As I read the 2.0 docs , <> means the same as <> but with the restriction that <>ed elements/packages cannot be <>ed beyond the <>ing package. I suspect this is what you meant by <> "not add[ing] anything to the importing namespace"? The 2.0 docs imply that <> is sort of a "private" <>. As you and Joaquin have noted, no one currently involved in either FTF was involved in constructing this part of the 2.0 docs so reasons for this apparent re-definition of <> are neither documented in the spec nor otherwise available to clarify things. So, here's a "make everyone happy" proposal that retains the 1.5 meaning of <> and <> without discarding what the current 2.0 definition of was trying to accomplish (see the figure in the attached Word document). In the figure, <> means both 1.5 and 2.0 "import"; <> means 1.5 "access"; and <> means 2.0 "access" as currently described in the FASs. Also, I've used "+" and "-" to indicate public and private visibility, respectively. I'd be happy to use any or all of the proposed stereotypes to resolve these issues, but we do need to decide so that I can proceed. Doug -----Original Message----- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Friday, June 11, 2004 1:08 PM To: Tolbert, Doug M Subject: Re: Issues 6221 and 6255 Hi Doug, Sorry for the late response to this e-mail. I am still behind on my e-mails. Note that, although my name appears on a number of issues, many of them were actually raised by our development team -- I merely passed the issues along to the OMG. In this case, I believe that I gave part of the answer you are looking for in an e-mail I sent earlier. From what I recall -- "access" is no longer there really. Cheers, Bran "Tolbert, Doug M" 06/03/2004 07:03 PM To Branislav Selic/Ottawa/IBM@IBMCA cc Subject Issues 6221 and 6255 Bran, Since you are the author of these issues, I've sent them to you for a first look before I send them to the reflectors. You may have some additional context that I'm missing. Please let me know what you think (you may notice that the issues are a tad contradictory). The flavor of both resolution is to use <> in place of <> or <>. My limited pdf searching capbilities cannot find a definition of either <> or <> anywhere in the docs. Besides, I like <> as being more specific than <>. Opinions or facts I've missed? Doug OMG Issue No: 6221 Title: UML 2 Super/pg.130/incorrect stereotype name Source: International Business Machines (Mr. Bran Selic, bselic@ca.ibm.com ) Summary: pg. 130: - private package import shown as «use» in chart, but should be «access» according to previous text for private import Discussion: The <> stereotype appears is in the referenced location on page 130 of the UML2 Superstructure FAS (ptc/03-08-02), and it is not defined in Appendix B (Standard Stereotypes). The <> stereotype does not appear in the UML2 Infrastructure FAS (ptc/03-09-15) nor does this document contain a corresponding section to the offending usage in the UML2 Superstructer FAS. The following changes replace <> with <> which is used at several location in the UML2 Superstructure FAS: Replace "<>" with "<>" in the "PackageImport (private)" row of Table 4 on page 130 of Section 7.18 of the UML2 Superstructure FAS (ptc/03-08-02). Disposition: Resolved ---------------------- OMG Issue No: 6255 Title: UML2 Super / Classes/ Incorrect reference to "access" Source: International Business Machines (Mr. Bran Selic, bselic@ca.ibm.com ) Summary: There are several places in the draft spec that refer to an "access" relationship when it should refer to a "uses" relationship instead. The access relationship according to the appendix is obsolete. The the incorrect reference I have found are on page 39, page 32. Discussion: The <> stereotype is not defined in the UML2 Superstructure FAS (ptc/03-08-02) nor does it appear in the UML2 Infrastructure FAS (ptc/03-09-15). Consequently, the change following removes from Appendix B of the SuperFAS the claim that the <> stereotype is obsolete. No corresponding change is required in the UML2 Infrastructure FAS since it does not contain an equivalent of table. Delete the first row, labelled "<>", from Table 28 on page 597 of Appendix B of UML2 Superstructure FAS (ptc/03-08-02). Disposition: Resolved ------------------------------------------------------------------------------------ THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. Access v Import.doc To: "Tolbert, Doug M" Cc: "Branislav Selic" , "Joaquin Miller (E-mail)" , mu2i-ftf@omg.org, uml2-superstructure-ftf@omg.org Subject: Re: <> vs. <> X-Mailer: Lotus Notes Release 6.0.2CF1 June 9, 2003 From: James E Rumbaugh Date: Tue, 15 Jun 2004 17:20:04 -0600 X-MIMETrack: Serialize by Router on D03NM118/03/M/IBM(Release 6.51HF262 | May 19, 2004) at 06/15/2004 17:20:06 This all seems clear enough in the specification. Please do NOT go and reestablish the UML1.5 meaning, once again making last minute changes to the specification. Please withdraw this "make everybody happy" proposal. It's time to stop reversing decisions made in the specification that are perfectly reasonable. Some people are already using this information and the constant unnecessary changes are against the spirit of a proper FTF. In UML 1, there was a notion that you needed "permission" to reference something in another namespace. This was some kind of misguided software engineering "control" that was not needed in a modeling language and was wisely dropped from UML2 (I didn't participate in that process, but I was glad to see the outcome). If you reference something directly in a model, clearly you want to reference it and you shouldn't need "permission" on a namespace basis. That kind of idea belongs in a programming language (maybe) and not in a modeling language. In any case, it is now gone. As I read it now, both access and import add a name to a namespace. They have NO meaning if they don't add names to the namespace, therefore the old is unnecessary and should not be preserved. Import adds a name and reexports it by making the name public within the namespace. Acess adds a name and keeps it internal by making the name private within the namespace. All very straightforward. <> has never had anything to do with namespaces. It has always been a dependency stereotype that means (effectively) that the methods within a class use objects of the target type to do their work. It therefore has a bit of an implementation flavor. Since there is no problem with the current definitions (once they are correctly understood), there is no need for any chances to the current specification, and I would strongly advise against any, such as the ones proposed here. There are unnecessary and actually make things worse. - Jim Rumbaugh "Tolbert, Doug M" 06/15/2004 03:11 PM To "Branislav Selic" cc "Joaquin Miller (E-mail)" , , Subject <> vs. <> Bran, If possible, please plan on a few minutes to discuss this on Wednesday's conference call. We need to come to some resolution so I can to continue with issue closures. Here's the quote I think you mean by "in an e-mail I sent earlier" ... "It seems that the meaning of <> changed from 1.5 to 2.0. In the 1.5 spec, it is stated that the difference between <> and <> is that the former does not add anything to the importing namespace whereas the latter does. I guess this just means that an accessed element has to be referenced by its qualified name (I guess that also applies to any alias that might be specified). In contrast, in 2.0, <> means that the imported elements have private visibility whereas <> means they have public visibility." My reading of the Infra and Super FASs finds that <> is pretty well "there" in both documents (even before any of the resolutions I've written on this topic). But as you note, it's meaning has changed from 1.5 to 2.0. As I read the 2.0 docs , <> means the same as <> but with the restriction that <>ed elements/packages cannot be <>ed beyond the <>ing package. I suspect this is what you meant by <> "not add[ing] anything to the importing namespace"? The 2.0 docs imply that <> is sort of a "private" <>. As you and Joaquin have noted, no one currently involved in either FTF was involved in constructing this part of the 2.0 docs so reasons for this apparent re-definition of <> are neither documented in the spec nor otherwise available to clarify things. So, here's a "make everyone happy" proposal that retains the 1.5 meaning of <> and <> without discarding what the current 2.0 definition of was trying to accomplish (see the figure in the attached Word document). In the figure, <> means both 1.5 and 2.0 "import"; <> means 1.5 "access"; and <> means 2.0 "access" as currently described in the FASs. Also, I've used "+" and "-" to indicate public and private visibility, respectively. I'd be happy to use any or all of the proposed stereotypes to resolve these issues, but we do need to decide so that I can proceed. Doug -----Original Message----- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Friday, June 11, 2004 1:08 PM To: Tolbert, Doug M Subject: Re: Issues 6221 and 6255 Hi Doug, Sorry for the late response to this e-mail. I am still behind on my e-mails. Note that, although my name appears on a number of issues, many of them were actually raised by our development team -- I merely passed the issues along to the OMG. In this case, I believe that I gave part of the answer you are looking for in an e-mail I sent earlier. From what I recall -- "access" is no longer there really. Cheers, Bran "Tolbert, Doug M" 06/03/2004 07:03 PM To Branislav Selic/Ottawa/IBM@IBMCA cc Subject Issues 6221 and 6255 Bran, Since you are the author of these issues, I've sent them to you for a first look before I send them to the reflectors. You may have some additional context that I'm missing. Please let me know what you think (you may notice that the issues are a tad contradictory). The flavor of both resolution is to use <> in place of <> or <>. My limited pdf searching capbilities cannot find a definition of either <> or <> anywhere in the docs. Besides, I like <> as being more specific than <>. Opinions or facts I've missed? Doug OMG Issue No: 6221 Title: UML 2 Super/pg.130/incorrect stereotype name Source: International Business Machines (Mr. Bran Selic, bselic@ca.ibm.com ) Summary: pg. 130: - private package import shown as «use» in chart, but should be «access» according to previous text for private import Discussion: The <> stereotype appears is in the referenced location on page 130 of the UML2 Superstructure FAS (ptc/03-08-02), and it is not defined in Appendix B (Standard Stereotypes). The <> stereotype does not appear in the UML2 Infrastructure FAS (ptc/03-09-15) nor does this document contain a corresponding section to the offending usage in the UML2 Superstructer FAS. The following changes replace <> with <> which is used at several location in the UML2 Superstructure FAS: Replace "<>" with "<>" in the "PackageImport (private)" row of Table 4 on page 130 of Section 7.18 of the UML2 Superstructure FAS (ptc/03-08-02). Disposition: Resolved ---------------------- OMG Issue No: 6255 Title: UML2 Super / Classes/ Incorrect reference to "access" Source: International Business Machines (Mr. Bran Selic, bselic@ca.ibm.com ) Summary: There are several places in the draft spec that refer to an "access" relationship when it should refer to a "uses" relationship instead. The access relationship according to the appendix is obsolete. The the incorrect reference I have found are on page 39, page 32. Discussion: The <> stereotype is not defined in the UML2 Superstructure FAS (ptc/03-08-02) nor does it appear in the UML2 Infrastructure FAS (ptc/03-09-15). Consequently, the change following removes from Appendix B of the SuperFAS the claim that the <> stereotype is obsolete. No corresponding change is required in the UML2 Infrastructure FAS since it does not contain an equivalent of table. Delete the first row, labelled "<>", from Table 28 on page 597 of Appendix B of UML2 Superstructure FAS (ptc/03-08-02). Disposition: Resolved ------------------------------------------------------------------------------------ THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. Access v Import1.doc To: "Tolbert, Doug M" Cc: "Joaquin Miller (E-mail)" , mu2i-ftf@omg.org, uml2-superstructure-ftf@omg.org Subject: Re: <> vs. <> X-Mailer: Lotus Notes Release 6.0.2CF1 June 9, 2003 From: Branislav Selic Date: Tue, 15 Jun 2004 19:42:35 -0400 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.0.2CF2|July 23, 2003) at 06/15/2004 19:42:36, Serialize complete at 06/15/2004 19:42:36 Hi Doug, Like Jim, I never saw any value in the idea of granting permissions to access (C++ has a similarly misguided idea of "friend" that I never thought useful). I go even further than Jim and eliminate <> altogether. I see no reason for a special concept for this subtle detail, since the same result can be achieved through <> at the next level of importing. Removing <> would also eliminate any possible confusion for those few who may be used to its old meaning. As for <>, I agree with Jim that it does not belong here. I will reserve time for this in tomorrow's agenda. Cheers, Bran "Tolbert, Doug M" 06/15/2004 06:11 PM To Branislav Selic/Ottawa/IBM@IBMCA cc "Joaquin Miller (E-mail)" , , Subject <> vs. <> Bran, If possible, please plan on a few minutes to discuss this on Wednesday's conference call. We need to come to some resolution so I can to continue with issue closures. Here's the quote I think you mean by "in an e-mail I sent earlier" ... "It seems that the meaning of <> changed from 1.5 to 2.0. In the 1.5 spec, it is stated that the difference between <> and <> is that the former does not add anything to the importing namespace whereas the latter does. I guess this just means that an accessed element has to be referenced by its qualified name (I guess that also applies to any alias that might be specified). In contrast, in 2.0, <> means that the imported elements have private visibility whereas <> means they have public visibility." My reading of the Infra and Super FASs finds that <> is pretty well "there" in both documents (even before any of the resolutions I've written on this topic). But as you note, it's meaning has changed from 1.5 to 2.0. As I read the 2.0 docs , <> means the same as <> but with the restriction that <>ed elements/packages cannot be <>ed beyond the <>ing package. I suspect this is what you meant by <> "not add[ing] anything to the importing namespace"? The 2.0 docs imply that <> is sort of a "private" <>. As you and Joaquin have noted, no one currently involved in either FTF was involved in constructing this part of the 2.0 docs so reasons for this apparent re-definition of <> are neither documented in the spec nor otherwise available to clarify things. So, here's a "make everyone happy" proposal that retains the 1.5 meaning of <> and <> without discarding what the current 2.0 definition of was trying to accomplish (see the figure in the attached Word document). In the figure, <> means both 1.5 and 2.0 "import"; <> means 1.5 "access"; and <> means 2.0 "access" as currently described in the FASs. Also, I've used "+" and "-" to indicate public and private visibility, respectively. I'd be happy to use any or all of the proposed stereotypes to resolve these issues, but we do need to decide so that I can proceed. Doug -----Original Message----- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Friday, June 11, 2004 1:08 PM To: Tolbert, Doug M Subject: Re: Issues 6221 and 6255 Hi Doug, Sorry for the late response to this e-mail. I am still behind on my e-mails. Note that, although my name appears on a number of issues, many of them were actually raised by our development team -- I merely passed the issues along to the OMG. In this case, I believe that I gave part of the answer you are looking for in an e-mail I sent earlier. From what I recall -- "access" is no longer there really. Cheers, Bran "Tolbert, Doug M" 06/03/2004 07:03 PM To Branislav Selic/Ottawa/IBM@IBMCA cc Subject Issues 6221 and 6255 Bran, Since you are the author of these issues, I've sent them to you for a first look before I send them to the reflectors. You may have some additional context that I'm missing. Please let me know what you think (you may notice that the issues are a tad contradictory). The flavor of both resolution is to use <> in place of <> or <>. My limited pdf searching capbilities cannot find a definition of either <> or <> anywhere in the docs. Besides, I like <> as being more specific than <>. Opinions or facts I've missed? Doug OMG Issue No: 6221 Title: UML 2 Super/pg.130/incorrect stereotype name Source: International Business Machines (Mr. Bran Selic, bselic@ca.ibm.com ) Summary: pg. 130: - private package import shown as «use» in chart, but should be «access» according to previous text for private import Discussion: The <> stereotype appears is in the referenced location on page 130 of the UML2 Superstructure FAS (ptc/03-08-02), and it is not defined in Appendix B (Standard Stereotypes). The <> stereotype does not appear in the UML2 Infrastructure FAS (ptc/03-09-15) nor does this document contain a corresponding section to the offending usage in the UML2 Superstructer FAS. The following changes replace <> with <> which is used at several location in the UML2 Superstructure FAS: Replace "<>" with "<>" in the "PackageImport (private)" row of Table 4 on page 130 of Section 7.18 of the UML2 Superstructure FAS (ptc/03-08-02). Disposition: Resolved ---------------------- OMG Issue No: 6255 Title: UML2 Super / Classes/ Incorrect reference to "access" Source: International Business Machines (Mr. Bran Selic, bselic@ca.ibm.com ) Summary: There are several places in the draft spec that refer to an "access" relationship when it should refer to a "uses" relationship instead. The access relationship according to the appendix is obsolete. The the incorrect reference I have found are on page 39, page 32. Discussion: The <> stereotype is not defined in the UML2 Superstructure FAS (ptc/03-08-02) nor does it appear in the UML2 Infrastructure FAS (ptc/03-09-15). Consequently, the change following removes from Appendix B of the SuperFAS the claim that the <> stereotype is obsolete. No corresponding change is required in the UML2 Infrastructure FAS since it does not contain an equivalent of table. Delete the first row, labelled "<>", from Table 28 on page 597 of Appendix B of UML2 Superstructure FAS (ptc/03-08-02). Disposition: Resolved ------------------------------------------------------------------------------------ THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. [attachment "Access v Import.doc" deleted by Branislav Selic/Ottawa/IBM] Reply-To: Joaquin Miller X-Sender: jm-omg@sbcglobal.net@pop.sbcglobal.yahoo.com X-Mailer: QUALCOMM Windows Eudora Version 5.1 Date: Tue, 15 Jun 2004 17:22:52 -0700 To: UML Superstructure FTF , MOF UML Infrastructure FTF From: Joaquin Miller Subject: Re: <> vs. <> Removing <> deals with the backward compatibility issue. If we do not remove it, Jim R. has provided material that can be drawn upon for a text on changes from UML 1. From: "Thomas Weigert" To: "James E Rumbaugh" , "Tolbert, Doug M" Cc: "Branislav Selic" , "Joaquin Miller \(E-mail\)" , , Subject: RE: <> vs. <> Date: Tue, 15 Jun 2004 20:53:45 -0500 X-Mailer: Microsoft Outlook IMO, Build 9.0.6604 (9.0.2911.0) Agreed. I also wonder whether <> is even needed? Why shouldn't we import with whatever visibility the model element was declared in the original package? Is anybody really using this feature? Th. -----Original Message----- From: James E Rumbaugh [mailto:rumbaugh@us.ibm.com] Sent: Tuesday, June 15, 2004 6:20 PM To: Tolbert, Doug M Cc: Branislav Selic; Joaquin Miller (E-mail); mu2i-ftf@omg.org; uml2-superstructure-ftf@omg.org Subject: Re: <> vs. <> This all seems clear enough in the specification. Please do NOT go and reestablish the UML1.5 meaning, once again making last minute changes to the specification. Please withdraw this "make everybody happy" proposal. It's time to stop reversing decisions made in the specification that are perfectly reasonable. Some people are already using this information and the constant unnecessary changes are against the spirit of a proper FTF. In UML 1, there was a notion that you needed "permission" to reference something in another namespace. This was some kind of misguided software engineering "control" that was not needed in a modeling language and was wisely dropped from UML2 (I didn't participate in that process, but I was glad to see the outcome). If you reference something directly in a model, clearly you want to reference it and you shouldn't need "permission" on a namespace basis. That kind of idea belongs in a programming language (maybe) and not in a modeling language. In any case, it is now gone. As I read it now, both access and import add a name to a namespace. They have NO meaning if they don't add names to the namespace, therefore the old is unnecessary and should not be preserved. Import adds a name and reexports it by making the name public within the namespace. Acess adds a name and keeps it internal by making the name private within the namespace. All very straightforward. <> has never had anything to do with namespaces. It has always been a dependency stereotype that means (effectively) that the methods within a class use objects of the target type to do their work. It therefore has a bit of an implementation flavor. Since there is no problem with the current definitions (once they are correctly understood), there is no need for any chances to the current specification, and I would strongly advise against any, such as the ones proposed here. There are unnecessary and actually make things worse. From: anders.ek@telelogic.se To: rumbaugh@us.ibm.com, Doug.Tolbert@unisys.com Cc: bselic@ca.ibm.com, joaquin.no.spam@acm.org, mu2i-ftf@omg.org, uml2-superstructure-ftf@omg.org Subject: RE: <> vs. <> Date: Wed, 16 Jun 2004 08:01:05 +0200 X-Mailer: Internet Mail Service (5.5.2657.72) I completely agree with Jim: Don't change the current definition if we don't have to. From Telelogic point of view we have an implementation of the UML 2 access/import dependencies and we have indeed users that use it. So, if there is no really strong compelling reason to change the current definition I would appreciate if we keep it as it is. After all, UML is now in a finalization stage, we're not supposed to redefine the language any more. Regards, Anders -----Original Message----- From: James E Rumbaugh [mailto:rumbaugh@us.ibm.com] Sent: den 16 juni 2004 01:20 To: Tolbert, Doug M Cc: Branislav Selic; Joaquin Miller (E-mail); mu2i-ftf@omg.org; uml2-superstructure-ftf@omg.org Subject: Re: <> vs. <> This all seems clear enough in the specification. Please do NOT go and reestablish the UML1.5 meaning, once again making last minute changes to the specification. Please withdraw this "make everybody happy" proposal. It's time to stop reversing decisions made in the specification that are perfectly reasonable. Some people are already using this information and the constant unnecessary changes are against the spirit of a proper FTF. In UML 1, there was a notion that you needed "permission" to reference something in another namespace. This was some kind of misguided software engineering "control" that was not needed in a modeling language and was wisely dropped from UML2 (I didn't participate in that process, but I was glad to see the outcome). If you reference something directly in a model, clearly you want to reference it and you shouldn't need "permission" on a namespace basis. That kind of idea belongs in a programming language (maybe) and not in a modeling language. In any case, it is now gone. As I read it now, both access and import add a name to a namespace. They have NO meaning if they don't add names to the namespace, therefore the old is unnecessary and should not be preserved. Import adds a name and reexports it by making the name public within the namespace. Acess adds a name and keeps it internal by making the name private within the namespace. All very straightforward. <> has never had anything to do with namespaces. It has always been a dependency stereotype that means (effectively) that the methods within a class use objects of the target type to do their work. It therefore has a bit of an implementation flavor. Since there is no problem with the current definitions (once they are correctly understood), there is no need for any chances to the current specification, and I would strongly advise against any, such as the ones proposed here. There are unnecessary and actually make things worse. - Jim Rumbaugh "Tolbert, Doug M" 06/15/2004 03:11 PM To "Branislav Selic" cc "Joaquin Miller (E-mail)" , , Subject <> vs. <> Bran, If possible, please plan on a few minutes to discuss this on Wednesday's conference call. We need to come to some resolution so I can to continue with issue closures. Here's the quote I think you mean by "in an e-mail I sent earlier" ... "It seems that the meaning of <> changed from 1.5 to 2.0. In the 1.5 spec, it is stated that the difference between <> and <> is that the former does not add anything to the importing namespace whereas the latter does. I guess this just means that an accessed element has to be referenced by its qualified name (I guess that also applies to any alias that might be specified). In contrast, in 2.0, <> means that the imported elements have private visibility whereas <> means they have public visibility." My reading of the Infra and Super FASs finds that <> is pretty well "there" in both documents (even before any of the resolutions I've written on this topic). But as you note, it's meaning has changed from 1.5 to 2.0. As I read the 2.0 docs , <> means the same as <> but with the restriction that <>ed elements/packages cannot be <>ed beyond the <>ing package. I suspect this is what you meant by <> "not add[ing] anything to the importing namespace"? The 2.0 docs imply that <> is sort of a "private" <>. As you and Joaquin have noted, no one currently involved in either FTF was involved in constructing this part of the 2.0 docs so reasons for this apparent re-definition of <> are neither documented in the spec nor otherwise available to clarify things. So, here's a "make everyone happy" proposal that retains the 1.5 meaning of <> and <> without discarding what the current 2.0 definition of was trying to accomplish (see the figure in the attached Word document). In the figure, <> means both 1.5 and 2.0 "import"; <> means 1.5 "access"; and <> means 2.0 "access" as currently described in the FASs. Also, I've used "+" and "-" to indicate public and private visibility, respectively. I'd be happy to use any or all of the proposed stereotypes to resolve these issues, but we do need to decide so that I can proceed. Doug -----Original Message----- From: Branislav Selic [mailto:bselic@ca.ibm.com] Sent: Friday, June 11, 2004 1:08 PM To: Tolbert, Doug M Subject: Re: Issues 6221 and 6255 Hi Doug, Sorry for the late response to this e-mail. I am still behind on my e-mails. Note that, although my name appears on a number of issues, many of them were actually raised by our development team -- I merely passed the issues along to the OMG. In this case, I believe that I gave part of the answer you are looking for in an e-mail I sent earlier. From what I recall -- "access" is no longer there really. Cheers, Bran "Tolbert, Doug M" 06/03/2004 07:03 PM To Branislav Selic/Ottawa/IBM@IBMCA cc Subject Issues 6221 and 6255 Bran, Since you are the author of these issues, I've sent them to you for a first look before I send them to the reflectors. You may have some additional context that I'm missing. Please let me know what you think (you may notice that the issues are a tad contradictory). The flavor of both resolution is to use <> in place of <> or <>. My limited pdf searching capbilities cannot find a definition of either <> or <> anywhere in the docs. Besides, I like <> as being more specific than <>. Opinions or facts I've missed? Doug OMG Issue No: 6221 Title: UML 2 Super/pg.130/incorrect stereotype name Source: International Business Machines (Mr. Bran Selic, bselic@ca.ibm.com ) Summary: pg. 130: - private package import shown as «use» in chart, but should be «access» according to previous text for private import Discussion: The <> stereotype appears is in the referenced location on page 130 of the UML2 Superstructure FAS (ptc/03-08-02), and it is not defined in Appendix B (Standard Stereotypes). The <> stereotype does not appear in the UML2 Infrastructure FAS (ptc/03-09-15) nor does this document contain a corresponding section to the offending usage in the UML2 Superstructer FAS. The following changes replace <> with <> which is used at several location in the UML2 Superstructure FAS: Replace "<>" with "<>" in the "PackageImport (private)" row of Table 4 on page 130 of Section 7.18 of the UML2 Superstructure FAS (ptc/03-08-02). Disposition: Resolved ---------------------- OMG Issue No: 6255 Title: UML2 Super / Classes/ Incorrect reference to "access" Source: International Business Machines (Mr. Bran Selic, bselic@ca.ibm.com ) Summary: There are several places in the draft spec that refer to an "access" relationship when it should refer to a "uses" relationship instead. The access relationship according to the appendix is obsolete. The the incorrect reference I have found are on page 39, page 32. Discussion: The <> stereotype is not defined in the UML2 Superstructure FAS (ptc/03-08-02) nor does it appear in the UML2 Infrastructure FAS (ptc/03-09-15). Consequently, the change following removes from Appendix B of the SuperFAS the claim that the <> stereotype is obsolete. No corresponding change is required in the UML2 Infrastructure FAS since it does not contain an equivalent of table. Delete the first row, labelled "<>", from Table 28 on page 597 of Appendix B of UML2 Superstructure FAS (ptc/03-08-02). Disposition: Resolved ------------------------------------------------------------------------------------ THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. OMG Issue No: 6221 Title: UML 2 Super/pg.130/incorrect stereotype name Source: International Business Machines (Mr. Bran Selic, bselic@ca.ibm.com) Summary: pg. 130: . private package import shown as «use» in chart, but should be «access» according to previous text for private import Discussion: In Table 4, page 130, section 7.18, of the UML2 Superstructure FAS (ptc/03-08-02), change the text .<>. to .<. in the Notation column of the row with Path Type column value of .PackageImport (private).. The UML2 Infrastructure FAS (ptc/03-09-15) does not contain a corresponding table and consequently requires no change. Disposition: Resolved e-mail: bselic@ca.ibm.com