-
Key: UML22-24
-
Legacy Issue Number: 6495
-
Status: closed
-
Source: David Frankel Consulting ( David Frankel)
-
Summary:
Issue: One of the main requirements for a core that can be reused by CWM
hinges on whether it is possible to reuse the abstract syntax that supports
classification and supports having properties (or features), without pulling
in generalization constructs. U2P’s Core::Basic package, upon which EMOF is
based, does not appear to adequately separate these concerns.The most abstract level of Core::Basic's inheritance hierarchy at which the
ability to have properties appears is in the Class metaclass. But Class
also carries the “baggage” of a definition of superclass.The Core::Abstractions package does appear to adequately separate these
concerns. It does so by defining a simple Classifier in the
Core::Abstractions::Classifiers package that supports features but not
generalization. The Core::Abstractions::Super package defines another
Classifier metaclass that subclasses
Core::Abstractions::Classifiers::Classifier and adds support for
generalization.Presumably, then, the intent is that CWM metamodels that support
classification and properties but not generalization can reuse
Core::Abstractions::Classifiers::Classifier. However, Core::Basic does not
reuse either of these basic definitions of Classifier from
Core::Abstractions, and EMOF is based on Core::Basic. Thus, if a CWM
metamodel reuses Core::Abstractions::Classifiers::Classifier, it will not
share a common definition of Classifier with EMOF. That could mean that a
metamodel expressed solely via EMOF will not be able to be the source or
target in a unified approach to transformations. This is not a problem for
CMOF, though, because CMOF is based on Core::Constructs, whose Classifiers
are based on Core::Abstractions.Recommendation: Solving the problem for EMOF would require some refactoring
of Core::Basic to separate concerns between classification and
generalization. -
Reported: UML 1.5 — Fri, 7 Nov 2003 05:00 GMT
-
Disposition: Resolved — UML 2.2
-
Disposition Summary:
Discussion
This issue has already been resolved by, or no longer applies to, the UML 2.5 Beta 1 specification.
Disposition: Closed - No Change -
Updated: Fri, 6 Mar 2015 20:58 GMT
UML22 — ptc-03-09-15/Separate classification and generalization in Core::Basic
- Key: UML22-24
- OMG Task Force: UML 2.2 RTF