Chapter 3 The Enhanced ER Model (EER)

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 23

Chapter 3

The Enhanced ER
Model (EER)
Supertypes and Subtypes
• Subtype (subclass): A subgrouping of the
entities in an entity type that has attributes distinct
from those in other subgroupings
• Supertype (superclass): A generic entity type
that has a relationship with one or more subtypes
• Attribute Inheritance:
– Subtype entities inherit values of all attributes of
the supertype
– An instance of a subtype is also an instance of the
supertype

2
Supertypes and Subtypes
SECRETARY (subclass)

E1
EMPLOYEE (superclass) E4
.
.
.
ENGINER (subclass)
e1
e2
e3 e2
.
e4 .
.
.
.
. TEACHICIAN (subclass)

e3
.
.
.

3
Basic notation for supertype/subtype notation

a) EER

notation

4
Employee supertype with three subtypes

All employee subtypes


will have emp nbr, name,
address, and date-hired

Each employee subtype


will also have its own
attributes

5
Relationships and Subtypes
• Relationships at the supertype level
indicate that all subtypes will participate in
the relationship
• The instances of a subtype may
participate in a relationship unique to that
subtype. In this situation, the relationship
is shown at the subtype level

6
Supertype/subtype relationships in a hospital

Both
outpatients
and resident
patients are
cared for by
a responsible
physician

Only resident patients are


assigned to a bed

7
Generalization and Specialization

• Generalization: The process of


defining a more general entity type from a
set of more specialized entity types.
BOTTOM-UP
• Specialization: The process of defining
one or more subtypes of the supertype
and forming supertype/subtype
relationships. TOP-DOWN

8
Example of generalization
a) Three entity types: CAR, TRUCK, and MOTORCYCLE

All these types of vehicles have common attributes

9
Example of generalization (cont.)
b) Generalization to VEHICLE supertype

So we put
the shared
attributes in
a supertype

BOTTOM-UP

Note: no subtype for motorcycle, since it has no unique


attributes 10
Example of specialization

a) Entity type PART

Only applies to
manufactured parts

Applies only to purchased parts

11
Example of specialization (cont.)

b) Specialization to MANUFACTURED PART and PURCHASED PART

Created 2 TOP-DOWN
subtypes

Supplier

12
Example of specialization (cont.)
b) Specialization to MANUFACTURED PART and PURCHASED PART

Note: multivalued attribute was replaced by an


associative entity relationship to another entity

13
Constraints in Supertype/ Completeness
Constraint

• Completeness Constraints: Whether an


instance of a supertype must also be a
member of at least one subtype
– Total Specialization Rule: Yes (double line)
– Partial Specialization Rule: No (single line)

14
Examples of completeness constraints
a) Total specialization rule

A patient must be either


an outpatient or a
resident patient

15
Examples of completeness constraints (cont.)
b) Partial specialization rule

A vehicle
could be a
car, a
truck, or
neither

16
Constraints in Supertype/ Disjointness
constraint
• Disjointness Constraints: Whether an
instance of a supertype may simultaneously
be a member of two (or more) subtypes
– Disjoint Rule: An instance of the supertype can be
only ONE of the subtypes
– Overlap Rule: An instance of the supertype could
be more than one of the subtypes

17
Examples of disjointness constraints
a) Disjoint rule

A patient can either be outpatient


or resident, but not both

18
Examples of disjointness constraints (cont.)

b) Overlap rule

A part may be both


purchased and
manufactured

19
Constraints in Supertype/ Subtype
Discriminators
• Subtype Discriminator: An attribute of the
supertype whose values determine the target
subtype(s)
– Disjoint – a simple attribute with alternative values to
indicate the possible subtypes
– Overlapping – a composite attribute whose subparts
pertain to different subtypes. Each subpart contains a
boolean value to indicate whether or not the instance
belongs to the associated subtype

20
Introducing a subtype discriminator (disjoint rule)

A simple attribute with


different possible values
indicating the subtype

21
Subtype discriminator (overlap rule)
A composite
attribute with
sub-attributes
indicating “yes”
or “no” to
determine
whether it is of
each subtype

22
Example of supertype/subtype hierarchy

23

You might also like