Cardinality (Crow’s Foot Notation)
Context: FIT2094_MOC · how many instances of one entity associate with another · min and max shown at each end · the Crow’s Foot symbols
Quick Revision
- 🎯 Objective: instances of one entity associated with another ➔ 1:1, 1:M, M:N.
- 📦 Core Components: bar = one/mandatory | circle = zero/optional | crow’s foot = many.
- ⚡ Key Constraint: show both min and max at each end; the min comes from the business rules.

📝 Core
1. Cardinality
- Definition ➔ how many instances of one entity may/must associate with another.
- Three types ➔ one-to-one (1:1), one-to-many (1:M), many-to-many (M:N).
- Both ends ➔ show min and max on each side, from the business rules.
2. The Symbols
- Bar
|➔ one / mandatory. - Circle
O➔ zero / optional. - Crow’s foot
<➔ many. - Read ➔ outer symbol = max, inner symbol = min.
3. Min from Business Rules
- “may” ➔ min 0 (optional, circle).
- “must” ➔ min 1 (mandatory, bar).
⚙️ Core Implementation
🔹 The four end-symbols
Mermaid + symbols
erDiagram EMPLOYEE ||--|| COMPANY_CAR : assigned CUSTOMER ||--o{ ORDER : places ORDER }o--o{ PRODUCT : contains
||one-and-only-one |o|zero-or-one ||{one-or-many |o{zero-or-many. 💡 Common Mistake: A plain line (implying 1,1) is not acceptable ➔ every end needs its optionality (min) and multiplicity (max); the min is dictated by the brief, not a notation choice.
⚖️ Core Decision Matrix
| Symbol | Min | Max | Meaning |
|---|---|---|---|
| ` | ` | 1 | |
| `o | ` | 0 | 1 |
| ` | {` | 1 | many |
o{ | 0 | many | zero or many |
When It Flips: M:N is allowed conceptually — it stays on the Conceptual Model and is resolved into an Associative Entity / two 1:M only when attributes are needed or at the logical stage. Line style (solid/dashed, Identifying vs Non-Identifying Relationship) is independent of the cardinality symbols.
📊 Exam Execution Trace
Applied Exercise
Problem: Encode that relationship in Crow’s Foot. Derivation Proof / Hand-Calculation Walkthrough:
Final Extracted Output: CUSTOMER ||--o{ ORDER.
🧠 Active Recall
What do the bar, circle, and crow's foot mean, and why show min and max at both ends?
- Hint: Optionality + multiplicity independent.
Answer
- Short answer: Bar = one/mandatory, circle = zero/optional, crow’s foot = many; inner = min, outer = max.
- Why: Two independent rules ➔ “can there be none?” (min) and “can there be many?” (max) are separate business rules.
Translate "a customer may place zero or many orders, each order must belong to exactly one customer".
- Hint: may/must → min.
Answer
- Short answer:
CUSTOMER ||--o{ ORDER.- Why:
o{vs||➔ “may/zero-or-many” on the order side, “must/exactly-one” on the customer side.