Relationship Degree and Participants
The degree of a relationship type is the number of participating entity types. The entities involved in a particular relationship are called participants. A recursive relationship is one where the same entity type participates more than once, taking on different roles each time — for example, an Employee entity that relates to itself through a "manages" relationship, where one employee is the manager and another is the subordinate.
Role Names
Relationships can be given role names to clarify the purpose each participating entity type plays. Role names become especially important in recursive relationships, where you need to distinguish which instance is playing which function — without clear roles, it is impossible to tell the manager from the managed or the parent from the child.
Participation
Participation determines whether all entity occurrences must participate in a relationship or only some. Total participation means every instance of an entity must be involved in the relationship; partial participation means some instances can exist without being linked. This distinction affects integrity constraints and how you handle missing relationships in queries.
Fan Traps
A fan trap occurs when a model represents a relationship between entity types, but the pathway between certain entity occurrences is ambiguous. For example, a company has divisions and staff, and each division operates multiple branches. You know Bob works in Division A, and Division A operates Branch 1 and Branch 2, but the model gives you no way to tell whether Bob works at Branch 1 or Branch 2. The connection fans out without enough specificity to trace the actual path.
Chasm Traps
A chasm trap happens when a model suggests a relationship pathway exists between entity types, but the pathway does not exist between certain entity occurrences. Consider a Branch → Staff → Property model where a branch has staff and staff oversee properties. If a staff member does not oversee any properties, there is no way to connect that branch to properties through that staff member. The path has a gap — a chasm — that breaks the chain and leaves some data unreachable.
Avoiding Traps
Both fan traps and chasm traps point to incomplete or incorrectly structured relationships. The fix usually involves introducing an additional entity or relationship to clarify the pathway, or adding attributes that capture the missing information directly. Recognizing these patterns early in the design process saves expensive restructuring later.