Facet - modelint/shlaer-mellor-metamodel GitHub Wiki
Many real world entities are modeled directly with a single Class. But if a Class participates in one or more Generalizations, the corresponding real world entity is viewed through a number of facets.
For example, a real world entity such as an airplane approaching an Airport
is understood to be simultaneously an Aircraft
and a Fixed Wing Aircraft
. Both the superclass Aircraft
and the subclass Fixed Wing Aircraft
are Facets of the same real world entity. The same principle, of course, applies to abstract, policy and any other entity of interest in the modeled subject matter.
The key principle is that one thing in the domain of interest is modeled as multiple Classes tied together in one or more Generalizations.
A Facet then is simply the incorporation of a Class into a Generalization as either a Superclass or a Subclass.
Identifiers
- Class + Rnum + Domain
Attributes
No non-referential attributes