Attribute Reference - modelint/shlaer-mellor-metamodel GitHub Wiki

“A referential attribute identifies an attribute whose value is the value of an identifying attribute in one or more associated Classes.” [MB]

images/class-attribute-subsystem/attribute-reference-10.png

An Attribute Reference is nothing more than a relational constraint restricting the value of some Attribute (for a given instance) to match a corresponding value of a referenced instance's Identifier Attribute. This concept should not be confused with the programming notion of a pointer or handle.

Essentially what we are saying by creating an Attribute Reference is: This Attribute X fully or partially formalizes some Relationship Rn by holding a value found in Identifier Attribute Y. Attributes X and Y may or may not be in the same Class depending on Relationship Rn.

Identifiers

  1. From attribute + From class + To identifier + To attribute + To class + Rnum + Domain
  2. From attribute + from class + Ref + Rnum + Domain

Attributes

(no non-referential attributes)