R26 - modelint/shlaer-mellor-metamodel GitHub Wiki
R26 / M:Mc-1
Derived Attribute is derived from one or many Attribute
Attribute contributes to the value of zero, one or many Derived Attribute
By definition, a Derived Attribute must be computed from at least one other Attribute.
An Attribute of any type, including Derived, may contribute to the computation of a Derived Attribute (other than itself).
The specific role, or roles played by an Attribute in Derivation is determined by the Formula specified for the Derived Attribute.
Formalization
Attribute In Derivation.(Source attribute, Source class, Domain) -> Attribute.(Name, Class, Domain)
Attribute In Derivation.(Target attribute, Target class, Domain) -> Derived Attribute.(Name, Class, Domain)
Constraint
The value pair of Source attribute + Source class may not match the value pair of Target attribute + Target class. In other words, an Attribute may not be derived from itself.