Purpose: Define every edge type in the graph — its name, direction, source/target entity types, cardinality, constraint, and example assertion. Unnamed relationships ('A is connected to B') produce a graph that cannot be traversed with semantic precision.
Every relationship needs: (1) a name that reads as a predicate — subject [relationship] object (e.g. Course develops Skill), (2) a fixed direction, (3) cardinality that can be enforced, (4) at least one constraint (what is required or prohibited), and (5) an example assertion.
Relationship Taxonomy Table
Relationship Name
Source Entity
Target Entity
Direction
Cardinality
Constraint / Rule
Example Assertion
Prohibited Relationship Patterns Relationships that must never be asserted — prevents semantic errors