-
Key: UML22-257
-
Legacy Issue Number: 10001
-
Status: closed
-
Source: Adaptive ( Mr. Pete Rivett)
-
Summary:
Merged metamodel has Property::class with redefinition of a non-inherited property
----------------------------------------------------------------------------------------------------------------------In UML 2.1 we have the following:
Kernel defines Class which inherits from Classifier, and has Class::ownedAttribute of type Kernel::Property.Composite Structures also defines Class which inherits from EncapsulatedClassifier which inherits from StructuredClassifier which inherits from Kernel::Classifier (curiously not Collaborations::Classifier in the same section).
Now StructuredClassifier also defines property StructuredClassifier::ownedAttribute of type InternalStructures::PropertySo in the Merge, we have:
L3::Class with property L3::Class::ownedAttribute of type L3::Property
this will inherit from:
L3::Classifier and L3::EncapsulatedClassifier, with the latter inheriting from L3::StructuredClassifier.
And L3::StructuredClassifier will continue to have a property L3::StructuredClassifier::ownedAttribute.
This would be inherited by L3::Class which has its own ownedAttribute.Hence there must be a redefinition L3::Class::ownedAttribute redefines L3::StructuredClassifier::ownedAttribute (there is).
Likewise there must also be a generalization between the 2 associations (there is).However there is a change of the property ownership: at the subclass Property::class is owned by Property, and L3::A_ownedAttribute_structuredClassifier::structuredClassifier is owned by the Association.
And there is no redefinition (or subsetting) between the two.Note that Figure 9.2 of ptc/06-04-02 does show a redefinition - but of "_structuredClassifier" with an underscore (not sure what that is supposed to mean).
Proposed resolution:
The Property::class property should be owned by the association (but still be navigable), and a redefinition needs to be added in section 9.3.12
{redefines structuredClassifier}.
Add Property::classifier as a derived union and have all opposites of ?::ownedAttribute subset it.
This way, access to a property's (owning) classifier can be obtained uniformly - note that a number of the OCL expressions are currently written (incorrectly) with this assumption. -
Reported: UML 2.0 — Wed, 26 Jul 2006 04:00 GMT
-
Disposition: Resolved — UML 2.2
-
Disposition Summary:
No Data Available
-
Updated: Fri, 6 Mar 2015 20:58 GMT
UML22 — Merged Metam.:Property::class with redefinition of non-inherited property
- Key: UML22-257
- OMG Task Force: UML 2.2 RTF