Previous Topic: Handling Unusual SituationsNext Topic: Relationships with Multiple Meanings


Redundant Relationships

A redundant relationship is a relationship conveying no information that cannot be deduced from other relationships. Consider the Entity Relationship Diagram fragment shown in the following illustration.

Handling Unusual Situations

The M:N relationship between product and warehouse records that a product is stocked in a particular warehouse.

Assume that if a product is stocked at one or more warehouses, the Quantity of product at a particular warehouse is held as an attribute of the entity type stock. If this is true, the analyst can deduce that a product is stored at a warehouse from the pairing of the product with stock. STOCK, in turn, is paired with a warehouse. The relationship product is stocked in warehouse conveys no new information and is therefore redundant.

You should eliminate redundant relationships. Such relationships are superfluous and require duplicate operations to properly record the information reflected in the model. For example, each time a product is to be stocked in a new warehouse, the product must be paired both with a warehouse and a stock entity. When the product's stock is exhausted, two pairings must be deleted instead of just one.

Note: Exercise caution when removing apparently redundant relationships.

Imagine, for example, a situation only slightly different from the one in the previous illustration. Assume that certain warehouses are equipped to handle certain products and that the ability of a warehouse to stock a particular product, whether it actually carries it, is of interest to the business. The following illustration depicts this situation.

Handling Unusual Situations (2)

Here, the relationship between product and warehouse is not redundant, although it might appear to be at first glance.

You should always watch for this situation. Businesses commonly need to distinguish between the actual or current positions, and allowable or potential positions. When searching for relationships, try to determine whether this distinction is important.