In ER modeling, is a recursive relationship defined as a relationship between instances of the same entity type (for example, Employee manages Employee), rather than between an “archetype” and an instance?

Difficulty: Easy

Correct Answer: Incorrect

Explanation:


Introduction / Context:
A recursive (unary) relationship relates an entity type to itself. Classic examples include employee-to-manager, part-to-subpart (bill of materials), and person-to-guardian. The notion of “archetype vs. instance” is not ER terminology for recursion and confuses separate modeling ideas.


Given Data / Assumptions:

  • Recursive = unary relationship involving a single entity type.
  • Archetype/instance phrasing is not part of standard ER definitions.
  • Cardinality and optionality still apply (e.g., each Employee may have zero or one manager; a manager may supervise many employees).


Concept / Approach:
Model recursion by relating the entity to itself with appropriate roles (e.g., Employee as “Manager” and Employee as “Subordinate”), and set min/max cardinalities per role. This is independent of inheritance (supertype/subtype) structures.


Step-by-Step Solution:
Select entity type (Employee). Create relationship EMPLOYEE manages EMPLOYEE with role names. Set cardinalities: each Employee may have 0..1 manager; a Manager may have 0..N subordinates. Implement with a self-referencing foreign key (e.g., Employee.ManagerID → Employee.EmployeeID).


Verification / Alternative check:
Check that removing the recursive FK breaks manager-subordinate traversal, confirming the self-relationship semantics.


Why Other Options Are Wrong:
Saying recursion is between an archetype and instance misuses terms; recursion is between two roles of the same entity type. Tying recursion to 1:1 or inheritance is also incorrect.


Common Pitfalls:
Forgetting to name roles; trying to create two separate entities instead of a single entity with a recursive relationship.


Final Answer:
Incorrect

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion