Issue 9398: UML 2/Templates -- single argument? (uml2-rtf) Source: Simula Research Laboratory (Mr. Bran Selic, selic(at)acm.org) Nature: Uncategorized Issue Severity: Summary: A TemplateParameterSubstitution corresponds to exactly one template parameter, but the metamodel allows multiple actual arguments to be supplied for the parameter. There does not seem to be any compelling reason for multiple arguments to be provided for a single template parameter in a substitution (nor are the semantics of this clearl). Therefore, the multiplicity of TemplateParameterSubstitution::actual and Template ParameterSubstitution::ownedActual should be restricted to [1]. Resolution: Revised Text: Superstructure (ptc/07-02-05) On page page 624 section 14.5.5 Change: actual: ParameterableElement[1..*] “The elements that are the actual parameters for this substitution”. To: actual : ParameterableElement[1] “The element that is the actual parameter for this substitution” Change ownedActual : ParameterableElement[0..*] The actual parameters that are owned by this substitution. Subsets Element::ownedElement and actual. To: ownedActual : ParameterableElement[0..1] The actual parameter that is owned by this substitution. Subsets Element::ownedElement and actual. Change Semantics section on p.624 From: “A TemplateParameterSubstitution specifies the set of actual parameters to be substituted for a formal template parameter within the context of a template binding.” To: “A TemplateParameterSubstitution specifies the actual parameter to be substituted for a formal template parameter within the context of a template binding.” Section 15.5.5 Change: A template parameter substitution relates the actual parameter(s) to a formal template parameter as part of a template binding. To: A template parameter substitution relates the actual parameter to a formal template parameter as part of a template binding. Actions taken: February 24, 2006: received issue October 27, 2008: closed issue Discussion: Possibly just change the multiplicities of TemplateParameterSubstitution::actual and ParameterSubstitution::ownedActual to [1] as mentioned above since it is unclear how substitutions involving multiple actual parameters for one formal parameter would work. End of Annotations:===== ubject: UML 2/Templates -- single argument? X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003 From: Branislav Selic Date: Fri, 24 Feb 2006 15:16:05 -0500 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.5.4|March 27, 2005) at 02/24/2006 15:16:07, Serialize complete at 02/24/2006 15:16:07 A TemplateParameterSubstitution corresponds to exactly one template parameter, but the metamodel allows multiple actual arguments to be supplied for the parameter. There does not seem to be any compelling reason for multiple arguments to be provided for a single template parameter in a substitution (nor are the semantics of this clearl). Therefore, the multiplicity of TemplateParameterSubstitution::actual and Template ParameterSubstitution::ownedActual should be restricted to [1]. Bran Selic IBM Distinguished Engineer IBM Rational Software 770 Palladium Drive Kanata, Ontario, Canada K2V 1C8 ph.: (613) 591-7915 fax: (613) 599-3912 Reply-To: From: "Conrad Bock" To: "'Branislav Selic'" , Subject: RE: UML 2.2 RTF: Ballot 1 (VOTE STARTS) Date: Sat, 5 May 2007 14:10:42 -0400 X-Mailer: Microsoft Office Outlook 11 Thread-Index: AceJCpZw+1ZsUaa5Tay1pEmU2achSQGNgUEA Bran, NIST votes YES on all of Ballot 1, except for NO on issue 9398 (it doesn't specify how multiple actual arguments can be substituted for a single formal argument). BTW, on 9963, just noticed the resolution doesn't specify all the changes needed, for example, "= true" should be added to the description of isSubstitutable, and the metamodel should be changed. Can this be taken as editorial? e-mail: bselic@ca.ibm.com