R32 - modelint/shlaer-mellor-metamodel GitHub Wiki

R32 / 1c:1c-1

Identifier Attribute makes subclass populations distinct in zero or one Superclass

Superclass subclass populations are distinguished by zero or one Identifier Attribute


If the Identifier of each Subclass in a Generalization is locally unique to each Subclass, but not across the Superclass population, the Superclass requires an additional Classifier Attribute.

An Identifier Attribute may or may not play the role of a Classifier Attribute in some Superclass.

Formalization

Classifier Attribute.(Superclass, Generalization, Domain) -> Superclass.(Rnum, Class, Domain)
Classifier Attribute.(Identifier, Attribute, Superclass, Domain) -> Identifier Attribute.(Identifier, Attribute, Class, Domain)