Issue 8385: UML 2 Super / Components / realizingClassifier (uml2-rtf) Source: Simula Research Laboratory (Mr. Bran Selic, selic(at)acm.org) Nature: Uncategorized Issue Severity: Summary: InterfaceRealization is a subclass of Realization that inherits the attribute Realization::realizingClassifier (defined in the Components package). This attribute has a multiplicity of 1, which means that InterfaceRealization must have a "realizingClassifier", even though this attribute only makes sense when the target is a Component and not an Interface. This is complicated further by the fact that InterfaceRealization has its own association end that serves a similar purpose called "implementingClassifier". But, this only makes sense for the case when the target of the realization is an Interface and not a Component. InterfaceRealization should not be forced to have a "realizingClassifier" attribute. The best way to fix this may be to define a separate subclass of Realization for the case of Components (e.g., ComponentRealization) such that the two cases are kept apart. Alternatively, the multiplicity on Realization::realizingClassifier could be set to 0..1. Resolution: This has already been resolved in 2.2. Revised Text: None. Disposition: Closed, no change. Revised Text: Actions taken: February 25, 2005: received issue April 26, 2010: closed issue Discussion: End of Annotations:===== ubject: UML 2 Super / Components / realizingClassifier X-Mailer: Lotus Notes Release 6.0.1CF1 March 04, 2003 From: Branislav Selic Date: Fri, 25 Feb 2005 17:57:51 -0500 X-MIMETrack: Serialize by Router on D25ML01/25/M/IBM(Release 6.53HF247 | January 6, 2005) at 02/25/2005 17:57:52, Serialize complete at 02/25/2005 17:57:52 InterfaceRealization is a subclass of Realization that inherits the attribute Realization::realizingClassifier (defined in the Components package). This attribute has a multiplicity of 1, which means that InterfaceRealization must have a "realizingClassifier", even though this attribute only makes sense when the target is a Component and not an Interface. This is complicated further by the fact that InterfaceRealization has its own association end that serves a similar purpose called "implementingClassifier". But, this only makes sense for the case when the target of the realization is an Interface and not a Component. InterfaceRealization should not be forced to have a "realizingClassifier" attribute. The best way to fix this may be to define a separate subclass of Realization for the case of Components (e.g., ComponentRealization) such that the two cases are kept apart. Alternatively, the multiplicity on Realization::realizingClassifier could be set to 0..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 Subject: [Issue 8385] UML 2 Super / Components / realizingClassifier Date: Fri, 20 Jun 2008 15:48:43 +0200 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: [Issue 8385] UML 2 Super / Components / realizingClassifier Thread-Index: AcjS3Fqxttrfmo++SE+DgXYNNgZjXg== From: "BERNARD, Yves" To: X-OriginalArrivalTime: 20 Jun 2008 13:48:44.0040 (UTC) FILETIME=[5AF06080:01C8D2DC] X-MIME-Autoconverted: from quoted-printable to 8bit by amethyst.omg.org id m5KDmww8025687 Hello, I don't understand what could be an "InterfaceRealization" with no implementingClassifier. Nevertheless, I see the point. A way to solve the problem might be to prevent an Interface to have any InterfaceRealization. Considering that a Classifier may have" 0..n" InterfaceRealization, A cardinality of "0" is valid for a Classifier and should be the only one valid for an Interface. The point is that it's not possible currently because a multiplicity of "0..0" isn't allowed. However, it will be very usefull for redefinition of some properties in specialized classes. I've already post an issue on that point (cf. #10783). Regards, Yves BERNARD Avionic Engineering Research Leader AIRBUS France EDYYAI - Engineering, PM & Avionics Research Phone: 33 (0)5 67 19 45 32 Fax: 33 (0)5 61 93 08 83 The information in this e-mail is confidential. The contents may not be disclosed or used by anyone other then the addressee. Access to this e-mail by anyone else is unauthorised. If you are not the intended recipient, please notify Airbus immediately and delete this e-mail. Airbus cannot accept any responsibility for the accuracy or completeness of this e-mail as it has been sent over public networks. If you have any concerns over the content of this message or its Accuracy or Integrity, please contact Airbus immediately. All outgoing e-mails from Airbus are checked using regularly updated virus scanning software but you should take whatever measures you deem to be appropriate to ensure that this message and any attachments are virus free. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:cc:in-reply-to:mime-version:content-type:references; bh=7u7mNbRaJNItn7RUpxLxM0tEp8IzqgSHrt+q8kae1lg=; b=poW/uTtLPiVlRRb1eIURxuSrbaNI2elrIjI46hBJd+NmPtoegbBONCPf4JWSyEm0mt s93oAo8Ozu9Xql2+nz5PLAN+cRy61o/JU/EythcBBi1xDzNLqDcXBH76wyBAwYTHdf60 fBj9YZawrWgHPdk1Y8Lm9yD6/jWZYAdZmeoxw= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:references; b=rMZpzDmLlihaFV97WAm5aT1ylUoZhOWthVCpYU35fCr4o6bfuFErZ369T8UT2hgFrR InUdAJYPxEdRxuDGr1QGEgHsth/e0T2HwEe7d43kdJqq8J9M38VBC4l61Sd+D4Fg4osc 2Sk7p7hIFGlY96zLZCt8ZjsgHVlzkMZeSfQC0= Date: Fri, 20 Jun 2008 10:29:07 -0400 From: "Bran Selic" To: "BERNARD, Yves" Subject: Re: [Issue 8385] UML 2 Super / Components / realizingClassifier Cc: uml2-rtf@omg.org As of UML 2.2, a multiplicity of 0..0 is allowed in UML. There was a resolution to this effect. Cheers...Bran On Fri, Jun 20, 2008 at 9:48 AM, BERNARD, Yves wrote: Hello, I don't understand what could be an "InterfaceRealization" with no implementingClassifier. Nevertheless, I see the point. A way to solve the problem might be to prevent an Interface to have any InterfaceRealization. Considering that a Classifier may have" 0..n" InterfaceRealization, A cardinality of "0" is valid for a Classifier and should be the only one valid for an Interface. The point is that it's not possible currently because a multiplicity of "0..0" isn't allowed. However, it will be very usefull for redefinition of some properties in specialized classes. I've already post an issue on that point (cf. #10783). Regards, Yves BERNARD Avionic Engineering Research Leader AIRBUS France EDYYAI - Engineering, PM & Avionics Research Phone: 33 (0)5 67 19 45 32 Fax: 33 (0)5 61 93 08 83 The information in this e-mail is confidential. The contents may not be disclosed or used by anyone other then the addressee. Access to this e-mail by anyone else is unauthorised. If you are not the intended recipient, please notify Airbus immediately and delete this e-mail. Airbus cannot accept any responsibility for the accuracy or completeness of this e-mail as it has been sent over public networks. If you have any concerns over the content of this message or its Accuracy or Integrity, please contact Airbus immediately. All outgoing e-mails from Airbus are checked using regularly updated virus scanning software but you should take whatever measures you deem to be appropriate to ensure that this message and any attachments are virus free. -- Bran Selic Malina Software Corp. e-mail: bselic@ca.ibm.com