R23 deprecated - modelint/shlaer-mellor-metamodel GitHub Wiki
Class is a Specialized Class or a Non-Specialized Class
If a Class participates in at least one Generalization, it is a Specialized Class. Otherwise, it is a Non-Specialized Class. A Specialized Class may play the role of Superclass or Subclass in each Generalization in which it participates. A Non-Specialized Class may not be a Superclass or Subclass in any Generalization.
The distinction is relevant in the interpretation of a Class instance. While an instance of a Non-Specialized Class is always a complete Object, an instance of a Specialized Class represents only some Facet of an Object.
<subclass>.(Name, Domain) -> Class.(Name, Domain)