Skip to main content

Enhanced ER Models

Specialisation & Generalisation

Specialisation is the process of defining a set of subtypes of an entity (the supertype).

  • The set of subtypes is defined on the basis of some distinguishing characteristics or relationships.

Generalisation is the process of defining i generalise entity by identifying common characteristics from the given entities.

  • Suppress the differences among several entities, identify their common features, and generalise them into the single supertype of which the original entities are special subtypes.

Supertype and Subtype

Supertype

a generic entity that can be subdivided into subtypes.

  • EMPLOYEE is the supertype for each of the subtypes.

Subtype

a subset of a supertype that shares common attributes or relationships distinct from the other subsets.

Specific attributes may apply to some, but not to all entities of the supertype.
Some specific relationships may be only associated with the subtype.

  • HOURLY EMPLOYEE and SALARIED EMPLOYEE are subtypes of EMPLOYEE.
Notation

Represented by a circle connection with HORSE-SHOE symbols used on the subtypes

Constraints on Specialisation and Generalisation

Disjoint Constraint

If subtypes of a specialisation are disjoint, an entity can be a member of at moste one of the subtypes of the specialisation.

  • An EMPLOYEE is either an HOURLY EMPLOYEE or a SALARIED EMPLOYEE but not not both.
Notation

Represented by a d in the circle.

If subtypes of a specialisation overlap, an entity can be a member of more than one subclass of a specialisation.

  • A PROPERTY can be a member of both PROPERTY FOR SALE and PROPERTY FOR RENT subtypes.
Notation

Represented by a o in the circle.