Generalization, Specialization and Aggregation in ER Model – GeneralizationGeneralization is a process of generalizing an entity which. Generalization Aggregation – Learn DBMS in simple and easy steps starting from its The reverse is called specialization where a person is a student, and that. Generalization Aggregation – The concept of generalization (specialization) is associated with special types of entities known as superclasses and subclasses, .

Author: Samuhn Sall
Country: Switzerland
Language: English (Spanish)
Genre: Finance
Published (Last): 26 August 2008
Pages: 56
PDF File Size: 9.31 Mb
ePub File Size: 13.79 Mb
ISBN: 764-4-78634-914-7
Downloads: 64283
Price: Free* [*Free Regsitration Required]
Uploader: Shalrajas

The ER Model has the power of expressing database entities in a conceptual hierarchical manner.

Generalization, Specialization and Aggregation in ER Model

As the hierarchy goes up, it generalizes the view of entities, and as we go deep in the hierarchy, it gives us the detail of every entity included. Going up in this structure is called generalizationwhere entities are clubbed together to represent a more generalized view.


For example, a particular student named Mira can be generalized along with all the students. The entity shall be a student, and further, the student is a ih.

The reverse is called specialization where a person is a student, and that student is Mira. As mentioned above, the process of generalizing entities, where the generalized entities contain the properties of all the generalized entities, is called generalization. In generalization, a number of entities are brought together into one generalized entity based on their similar characteristics.

For example, pigeon, house sparrow, crow and dove can all be generalized as Birds.

Specialization is the opposite of generalization. In specialization, a group of entities is divided into sub-groups based on their characteristics. A person has name, date of birth, gender, etc.

These properties are common in all persons, human beings. But in a company, persons can be identified as employee, employer, customer, or vendor, based on what role they play in the company. Similarly, in a school database, persons can be specialized as teacher, student, or a staff, based on specializatiob role they play in school as entities.


We use all the above features of ER-Model in order to create classes of objects in object-oriented programming. The details of entities are generally hidden from the user; this process known as abstraction. Inheritance is an important feature of Generalization and Specialization.

It allows lower-level entities to inherit the attributes of higher-level entities.

For example, the attributes of a Person class such as name, age, and gender can be inherited by lower-level entities such as Student or Teacher.