What is Aggregation? The concept of generalization specialization is associated with special types of entities known as superclasses and subclasses, and the process of attribute inheritance. The ER Model has the capability of articulating database entities in a conceptual hierarchical manner. As the hierarchy goes up, it generalizes the view of entities, and as you go deep in the hierarchy, it will provide the detail of every entity included. Going up in this structure is called generalization, where entities are associated together to represent a more generalized view.
|Country:||Turks & Caicos Islands|
|Published (Last):||18 October 2012|
|PDF File Size:||10.17 Mb|
|ePub File Size:||5.37 Mb|
|Price:||Free* [*Free Regsitration Required]|
Next Page The ER Model has the power of expressing database entities in a conceptual hierarchical manner. 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 generalization, where 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 person.
The reverse is called specialization where a person is a student, and that student is Mira. Generalization 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 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 what role they play in school as entities. Inheritance 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.
The Enhanced ER Model
In generalization, the generalized entity of higher level can also combine with entities of the lower-level to make further higher-level entity. It is like a superclass and subclass system, but the only difference is that it uses the bottom-up approach. It helps in reducing the schema size. It is always applied to the group of entities and result in the formation of a single entity. According to the below diagram, there are two entities, namely teacher and student.
DBMS Generalization, Specialization, and Aggregation
Generalization, Specialization and Aggregation in ER model are used for data abstraction in which abstraction mechanism is used to hide details of a set of objects. Generalization — Generalization is the process of extracting common properties from a set of entities and create a generalized entity from it. It is a bottom-up approach in which two or more entities can be generalized to a higher level entity if they have some attributes in common. Specialization — In specialization, an entity is divided into sub-entities based on their characteristics. It is a top-down approach where higher level entity is specialized into two or more lower level entities. Aggregation — An ER diagram is not capable of representing relationship between an entity and a relationship which may be required in some scenarios.
Generalization, Specialization and Aggregation in ER Model