Reference
Define a cross-entity association that references an independently-existing entity
Definition
A Reference is an association from one entity to another where the target entity exists independently — it is NOT contained by or value-bound to the source entity. References model the THIRD structural feature of PD alongside entities (containment) and attributes (value-bound) The Three-Map PD Architecture distinguishes structural features by lifecycle: entities: CONTAINMENT — cascade-delete, single parent, graph nodes attributes: VALUE-BOUND — parent lifecycle, equality-by-value, sidebar references: ASSOCIATION — independent lifecycle, no cascade, graph edges This maps to ECore's structural feature split: EReference(containment=true) → our entities map EAttribute → our attributes map EReference(containment=false) → our references map (this protocol) References differ from attributes in the IDENTITY PRINCIPLE: - order.customer_name (attribute) → value copy, parent lifecycle - order.customer (reference) → pointer to independent Customer entity References appear as EDGES (arrows) on the modeling graph, connecting entity nodes. Attributes appear in the sidebar.
Standards
- OMG MOF 2.5.1 — Property (aggregation=none)
- Eclipse EMF ECore — EReference (containment=false)
- Domain-Driven Design — Cross-Aggregate Reference
Knowledge References
- aggregate pattern
- entity-pattern pattern
- repository pattern
Schema Preview (7 fields)
- target string — Name of the entity this reference points to
- purpose string — Explain why this entity references the target
- multiplicity string — How many target entities this reference can point to