Specialization & Generalization

DBMS Tutorial


Extended Features Of ER Model : Specialization & Generalization

  • The Specialization and Generalization concept comes under the topic of extended features of the Entity Relationship Model.
  • These extended features of the entity relationship model are based upon the conceptual hierarchy i.e. The manner in which ER Diagram is generated, view of that ER Diagram is termed as either the specialization or generalization. The topic still not clear yet? Check below the easier definition and diagram below.


This image describes the categorization of Extended Features of er model into Specialization & Generalization.

Extended Features : Specialization & Generalization


1. Specialization

  • Specialization in general terms, is a process of mastering a specific domain. But, with respect to ER Model, specialization is the procedure to split up the entities into further sub entities on the basis of their functionalities, specialities and features. This process is a Top-to-Down approach.
  • For example : In a database of hospital, a person can either be a doctor, staff or patient which can be spirited according to their functions and specialties.


This image describes the specialization example and how it works.

Specialization : Example


2. Generalization

  • Generalization is the reverse process of specialization. In generalization, the sub entities are combined together into a super entity set on the basis of some common features in such a way that the new entity thus formed contains all the features of the sub entities. Generalization is a Bottom-to-Up approach.
  • For example : Goat, Lion and Monkey have some come traits and they all together can be combined in class of animals.


This image describes the generalization example and how it works.

Generalization: Example


Aggregation : Concept

  • ER Model is a way which helps in database design with utmost efficiency. However, it does possess some limitations. One of the major limitations of ER Model is its inability to represent relationship among relationship. In order to represent ternary relationship, it can be represented using ER Model but a lot of redundancies will arise. Hence, the concept of aggregation is used to remove these redundancies.