-
Key: KERML-54
-
Status: closed
-
Source: NIST ( Mr. Conrad Bock)
-
Summary:
In Clause 8.3.3.3.1 (Overview, Features Abstract Syntax), Figure 18 (Subsetting):
- Subsetting::/owningFeature:Feature[1] narrows the multiplicity inherited from Type::/owningType[0..1] in Clause 8.3.3.1.1 (Overview, Types Abstract Syntax), Figure 10 (Specialization).
- Redefinition::/owningFeature:Feature[0..1] subsets the above with the same name, which is not allowed, and widens the multiplicity back to the one on Type.
This prevents subsettings from being defined without "affecting" the specializing feature (ie, modifying that feature as a model element). Compare to Subclassification, which leaves the inherited multiplicity as is for this purpose, in Clause 8.3.3.2.1 (Overview, 8.3.3.2 Classifiers Abstract Syntax), Figure 16 (Classifiers).
-
Reported: KerML 1.0a1 — Sun, 30 Apr 2023 14:41 GMT
-
Disposition: Resolved — KerML 1.0b2
-
Disposition Summary:
Correct multiplicity of Subsetting::owningFeature
Agreed that the multiplicity of Subsetting::owningFeature should be 0..1.
Note that the inverse property owningFeature of Feature::ownedRedefinition is a non-navigable owned end of the association. Therefore, it is not actually a member of Redefinition, and it is acceptable for it to have the same name as the property Subsetting::owningFeature that it subsets, which is inherited into Redefinition. (The UML rules for subsetting allow such subsettings of association ends; redefinition would not be allow.)
-
Updated: Tue, 1 Jul 2025 15:01 GMT
-
Attachments:
- fig-18-subsetting.png 152 kB (image/png)
KERML — Subsetting::/owningType is mandatory
- Key: KERML-54
- OMG Task Force: Kernel Modeling Language (KerML) 1.0 FTF