-
Key: UML22-398
-
Legacy Issue Number: 12432
-
Status: closed
-
Source: THALES ( Sebastien Madelenat)
-
Summary:
page 50, the "nestedClassifier" association of Class is described like this: "References all the Classifiers that are defined (nested) within the Class. Subsets Element::ownedMember" page 148, the "packagedElement" association of Component is described like this: packagedElement: PackageableElement [*] "The set of PackageableElements that a Component owns. In the namespace of a component, all model elements that are involved in or related to its definition may be owned or imported explicitly. These may include e.g., Classes, Interfaces, Components, Packages, Use cases, Dependencies (e.g., mappings), and Artifacts. Subsets Namespace::ownedMember." This means a Class may own a Component and this Component may own a Package. I wonder what a Class owning (transitively) a Package could mean.
-
Reported: UML 2.1.2 — Fri, 9 May 2008 04:00 GMT
-
Disposition: Resolved — UML 2.2
-
Disposition Summary:
This is one example of the unintended consequences of Component inheriting from Class. We may observe a related consequence, that it is possible for a Component to own another Component in two ways: as a nestedClassifier, and as a packagedElement. There is no distinction, notationally or otherwise, between these two modes of ownership.
We can resolve these by adding two constraints to Component:
· A Component's nestedClassifier collection is always empty.
· If a Component is nested in a Class, then its packagedElement collection is empty. -
Updated: Fri, 6 Mar 2015 20:58 GMT