Do these 3 things before closing this tab:
1Fix the driver behind crashes, sound loss and screen glitches2Clear out junk files and repair common Windows errors3Scan for outdated or missing drivers - takes under a minuteIn DBMS, specialization starts with a broad entity type and divides it into more specific subtypes; generalization starts with related entity types and combines their shared features into a broader type. Both describe an “is-a” hierarchy in an Enhanced Entity-Relationship (EER) model. For example, defining CAR and TRUCK as subtypes of VEHICLE is specialization when viewed from the top down, and generalization when viewed from the bottom up.
What specialization and generalization mean
A superclass is the broader entity type in a hierarchy. It holds attributes and relationships shared by its members. A subclass is a more specific type whose entities are also members of the superclass. A subclass inherits the superclass’s common properties and can have additional attributes that apply only to that subtype.
As an Amazon Associate I earn from qualifying purchases.
The difference between specialization and generalization is the direction in which a designer thinks about the hierarchy:
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →| Concept | Starting point | Operation | Result |
|---|---|---|---|
| Specialization | One broad entity type | Divide it according to meaningful differences | More specific subclasses |
| Generalization | Several related entity types | Identify and combine their common features | A shared superclass |
The resulting hierarchy can be the same either way. The terms describe the modeling process, not two different kinds of relationship.
#1 Best Overall
Simple example: VEHICLE, CAR, and TRUCK
Suppose a database needs to store vehicles. A VEHICLE entity type could contain shared information such as a vehicle identifier and make. A CAR subtype and a TRUCK subtype can then hold details specific to those types.
Viewed as specialization
Start with VEHICLE, then divide its entities into more specific types, such as CAR and TRUCK. Shared attributes stay on VEHICLE; subtype-specific attributes belong on the relevant child type.
Viewed as generalization
Start with separate CAR and TRUCK entity types. If both have common properties, move those shared properties into a broader VEHICLE superclass. This avoids modeling the same common information separately in each type.
Example: employee roles and nested subclasses
An EMPLOYEE superclass can be specialized into SECRETARY, ENGINEER, and TECHNICIAN. Attributes shared by employees belong on EMPLOYEE; details specific to a job type belong on its subtype. If engineering managers need additional attributes, ENGINEERING_MANAGER can be modeled as a subclass of ENGINEER.
This nested structure means every engineering manager is an engineer and, through that relationship, an employee. It also gives a clear home to each attribute: common employment details on EMPLOYEE, engineering details on ENGINEER, and manager-specific details on ENGINEERING_MANAGER.
Two independent rules define subtype membership
Choosing subclasses also means deciding which superclass entities may or must belong to them. Two separate questions govern membership: whether subtypes can overlap and whether the listed subtypes cover every superclass entity.
Rank #4
Disjoint or overlapping?
- Disjoint: One superclass entity cannot belong to more than one of the sibling subclasses in that specialization. A model that classifies each book as either a
TEXTBOOKor aNOVELillustrates a disjoint rule. - Overlapping: A superclass entity may belong to multiple sibling subclasses. For instance, a
CELEBRITYmight be both aPLAYERand aPOLITICIAN.
These examples express possible modeling rules; they are not universal classifications for every book or celebrity.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Total or partial?
- Total: Every entity in the superclass must belong to at least one of the listed subclasses. If a model requires every employee to be either hourly or salaried, that split is total.
- Partial: Some superclass entities may belong to none of the listed subclasses. A specialization that lists selected employee roles is partial if other employees can exist outside those roles.
“Total” does not mean “disjoint.” Total versus partial asks whether the subclasses cover the superclass; disjoint versus overlapping asks whether an entity can belong to multiple sibling subclasses. Either rule can be combined with either of the other, producing four possibilities:
Best Value
| Combination | Meaning |
|---|---|
| Disjoint-total | Every superclass entity belongs to at least one listed subclass, and none belongs to more than one. |
| Disjoint-partial | An entity may belong to no listed subclass, but cannot belong to more than one. |
| Overlapping-total | Every superclass entity belongs to at least one listed subclass, and some may belong to several. |
| Overlapping-partial | An entity may belong to no listed subclass, while others may belong to several. |
Choose the combination that matches the real membership rules the database is meant to represent. If the rule is wrong, the schema may allow records that should be excluded or prevent valid records from being represented.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.How to read the EER notation
In the notation used in the cited EER materials, a d in the specialization circle marks disjoint subclasses, while an o marks overlapping subclasses. A double line from the superclass to the circle indicates total specialization; a single line indicates partial specialization. Modeling tools may use different notation, so include a legend when sharing a diagram.
Quick Recap
Sources for the definitions and examples
- Fundamentals of Database Systems, Seventh Edition, Chapter 4 explains EER specialization, generalization, and the independent subtype constraints.
- Fundamentals of Database Systems: Enhanced Entity-Relationship and UML Modeling includes employee subtype and nested subclass examples.
- DBMS textbook material on specialization and generalization discusses disjoint, overlapping, total, and partial constraints.
- Loyola University Chicago’s Entity-Relationship Modeling notes use the car, truck, and vehicle example to explain generalization.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
The Tool Desk
Outbyte Driver Updater FREEFix the driver behind crashes, sound loss and screen glitchesFind Drivers →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →




