Issue 11120: Property::isAttribute() query needs no argument (uml2-rtf) Source: Eclipse Foundation (Mr. Kenneth Hussey, kenn.hussey(at)gmail.com) Nature: Uncategorized Issue Severity: Summary: The Property::isAttribute() OCL query (see p. 133 of 07-02-03) is currently defined to take an argument: [4] The query isAttribute() is true if the Property is defined as an attribute of some classifier context Property::isAttribute(p : Property) : Boolean post: result = Classifier.allInstances->exists(c| c.attribute->includes(p)) This argument (p) is not necessary, as the query should be based on the context property. Note that the OCL body for this query does not appear to be correct either. Resolution: Revised Text: Actions taken: July 4, 2007: received issue Discussion: End of Annotations:===== c: Branislav Selic , James Bruck Subject: Property::isAttribute() query needs no argument X-Mailer: Lotus Notes Release 7.0 HF277 June 21, 2006 From: Kenneth Hussey Date: Wed, 4 Jul 2007 15:59:24 -0400 X-MIMETrack: Serialize by Router on D25ML03/25/M/IBM(Release 7.0.2HF446 | March 16, 2007) at 07/04/2007 15:59:27, Serialize complete at 07/04/2007 15:59:27 The Property::isAttribute() OCL query (see p. 133 of 07-02-03) is currently defined to take an argument: [4] The query isAttribute() is true if the Property is defined as an attribute of some classifier context Property::isAttribute(p : Property) : Boolean post: result = Classifier.allInstances->exists(c| c.attribute->includes(p)) This argument (p) is not necessary, as the query should be based on the context property. Note that the OCL body for this query does not appear to be correct either. Cheers, Kenn Hussey Senior Software Developer Rational Software, IBM Software Group 770 Palladium Drive Kanata, Ontario, K2V 1C8 T: (613) 599-3980 F: (613) 599-3912 Subject: Issue 11120 in ballot 5 To: uml2-rtf@omg.org X-Mailer: Lotus Notes Release 7.0 HF277 June 21, 2006 From: Maged Elaasar Date: Wed, 17 Mar 2010 23:22:58 -0400 X-MIMETrack: Serialize by Router on D25ML03/25/M/IBM(Release 8.0.1|February 07, 2008) at 03/17/2010 23:22:54 One of the corrected constraints in this issue is found in section 17.5.19: [1] A binding of a property template parameter representing an attribute must be to an attribute (isAttribute() and (templateParameterSubstitution->notEmpty() implies (templateParameterSubstitution->forAll(ts | ts.isAttribute())) This constraint's OCL expression is very incorrect as it refers to non-existing "templateParameterSubstitution" attribute of Property, and the final "ts.isAttrubute()" is also wrong as ts is of type TemplateParameter (not Property as implied). Although the resolution was just trying to address the isAttribute() operation call, it still leaves the constraint in a bad shape. So I suggest either fixing the constraint (not sure exactly what should be the fix) or taking the issue off the ballot. I also noticed that Templates::Property is defined in section 17.5.19 as specializing bpth Kernel::Proprety and Templates::ParameterableElement, but in the metamodel it is only specializing the latter. Thanks, Maged Elaasar, PhD Candidate Senior Software Engineer, Rational Modeling Tools IBM Representative@OMG, CAS Research Staff Member IBM Canada, Ottawa Lab, +1 613 270 4651 From: Steve Cook To: "juergen@omg.org" Subject: FW: Issue 11120 in ballot 5 Thread-Topic: Issue 11120 in ballot 5 Thread-Index: AQHKxkrImLrYa+UiEkamGs1LZtLhl5H3WjSAgAAJv3CACIXiYA== Date: Tue, 23 Mar 2010 19:04:40 +0000 Accept-Language: en-GB, en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: Juergen There.s an issue in the message below which I think fell through the cracks. Could you log this issue please? >Templates::Property is defined in section 17.5.19 as specializing both Kernel::Property and Templates::ParameterableElement, but in the metamodel it is only specializing the latter. Thanks -- Steve From: Steve Cook [mailto:Steve.Cook@microsoft.com] Sent: 18 March 2010 08:57 To: Bran Selic; Maged Elaasar; issues@omg.org; juergen@omg.org Cc: uml2-rtf@omg.org Subject: RE: Issue 11120 in ballot 5 I.ve removed 11120 from ballot 5. Juergen, could you log a new UML 2 issue please: Templates::Property is defined in section 17.5.19 as specializing both Kernel::Property and Templates::ParameterableElement, but in the metamodel it is only specializing the latter. Thanks -- Steve PS Voting on ballot 5 is under way. The following companies have not yet voted: 88Solutions, Atego, Adaptive, Armstrong Process Group, CEA, Fujitsu, HP, Lockheed Martin, MDS, NASA, No Magic, Oracle, Oslo Software, SINTEF, Softeam, Sparx Systems, Thales, Unisys, oose. From: bran.selic@gmail.com [mailto:bran.selic@gmail.com] On Behalf Of Bran Selic Sent: 18 March 2010 08:17 To: Maged Elaasar Cc: uml2-rtf@omg.org Subject: Re: Issue 11120 in ballot 5 Good eye, Maged, and thanks. My bad. Steve, please pull resolution 11120 from the ballot. Do you want to raise another issue to deal with the missing attribute? Apologies to all for not doing a thorough enough job on this. Bran On Thu, Mar 18, 2010 at 4:22 AM, Maged Elaasar wrote: One of the corrected constraints in this issue is found in section 17.5.19: [1] A binding of a property template parameter representing an attribute must be to an attribute (isAttribute() and (templateParameterSubstitution->notEmpty() implies (templateParameterSubstitution->forAll(ts | ts.isAttribute())) This constraint's OCL expression is very incorrect as it refers to non-existing "templateParameterSubstitution" attribute of Property, and the final "ts.isAttrubute()" is also wrong as ts is of type TemplateParameter (not Property as implied). Although the resolution was just trying to address the isAttribute() operation call, it still leaves the constraint in a bad shape. So I suggest either fixing the constraint (not sure exactly what should be the fix) or taking the issue off the ballot. I also noticed that Templates::Property is defined in section 17.5.19 as specializing bpth Kernel::Proprety and Templates::ParameterableElement, but in the metamodel it is only specializing the latter. Thanks, Maged Elaasar, PhD Candidate Senior Software Engineer, Rational Modeling Tools IBM Representative@OMG, CAS Research Staff Member IBM Canada, Ottawa Lab, +1 613 270 4651