Issue 10780: UML2: Actor cannot have ownedAttributes (uml2-rtf) Source: International Business Machines (Mr. Jim Amsden, jamsden(at)us.ibm.com) Nature: Uncategorized Issue Severity: Summary: Constraint [1] in section 16.3.1 is incorrect. [1] An actor can only have associations to use cases, components, and classes. Furthermore these associations must be binary. self.ownedAttribute->forAll ( a | (a.association->notEmpty()) implies ((a.association.memberEnd.size() = 2) and (a.opposite.class.oclIsKindOf(UseCase) or (a.opposite.class.oclIsKindOf(Class) and not a.opposite.class.oclIsKindOf(Behavior)))) An Actor is a BehavioredClassifier and therefore cannot have ownedAttributes. The constraint above would have to iterate over all the associations in the model and insure that if one ownedEnd is an Actor or UseCase, the other ownedEnd must be a UseCase or Actor respectively. Resolution: Revised Text: Actions taken: February 20, 2007: received isuse Discussion: End of Annotations:===== ubject: UML2: Actor cannot have ownedAttributes X-Mailer: Lotus Notes Release 7.0 August 18, 2005 From: Jim Amsden Date: Tue, 20 Feb 2007 09:47:51 -0500 X-MIMETrack: Serialize by Router on D03NM118/03/M/IBM(Release 7.0.2HF32 | October 17, 2006) at 02/20/2007 07:47:52, Serialize complete at 02/20/2007 07:47:52 X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at omg.org Constraint [1] in section 16.3.1 is incorrect. [1] An actor can only have associations to use cases, components, and classes. Furthermore these associations must be binary. self.ownedAttribute->forAll ( a | (a.association->notEmpty()) implies ((a.association.memberEnd.size() = 2) and (a.opposite.class.oclIsKindOf(UseCase) or (a.opposite.class.oclIsKindOf(Class) and not a.opposite.class.oclIsKindOf(Behavior)))) An Actor is a BehavioredClassifier and therefore cannot have ownedAttributes. The constraint above would have to iterate over all the associations in the model and insure that if one ownedEnd is an Actor or UseCase, the other ownedEnd must be a UseCase or Actor respectively.