R131 - modelint/shlaer-mellor-metamodel GitHub Wiki

R131 / M:Mc-1

Class is instantiated to manifest real world entity as part of zero, one or many Lineage

Lineage real world entity requires instantiation of each one or many Class


In the simplest case of a single Generalization, a Lineage will consist of a one Superclass and a one Subclass, with a single Lineage per subclass branch. Therefore, the minimum number of Classes defined in a Lineage is two.

Only a Class that participates in at least one Generalization may participate in a Lineage. If the same Class participates in more than one Generalization it may be part of multiple Lineages. You can see an example of this in the Lineage description figure.

Formalization

Class in Lineage.(Class, Domain) -> Facet.(Class, Rnum)
Class in Lineage.(Lnum, Domain) -> Lineage.(Lnum, Domain)