What is a participation role? State the circumstances under which the use of role names becomes necessary in description of relationship types.

A particular role is played in the relationship by each entity that participates in a relationship type. The Participation role specifies the existence of an entity depending on being related to another entity via a relationship or not. The two types of such constraints are total or partial participation.

Total Participation- If it is required that every entity of an entity type must relate to another entity type, then such an entity can exist only if it participates in that specific relationship. This kind of participation is called total participation. This type of participation constraints is also known as existence dependency. For example, if it is required that every account must be related to at least one of the accounts type, then an account entity can only exist if it participates in CLASSIFY relationship instance.

Partial Participation- If in case, it is not required that every entity of an entity type must relate to another entity type, then the participation of the entity in the relationship type is partially constrained. Such an entity can exist even if a part of it is related to the relationship type. For example, if every employee is not expected to prepare at least one of the vouchers, then the participation of employee in PREPARED_BY relationship is partial.

In case, there exist two relationships between any two entities, then in order to map both the relationships, the primary key of the common entity is to be included twice. But a relation cannot have the same name, hence, we need to use different role names as attributes as foreign keys to indicate the relations.

  • 1
What are you looking for?