Chapter 3

Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

CHAPTER 3

DATA MODELING USING


EERD
Objective
s

After studying this chapter, you should be able to:


1. Explain EERD concepts
2. Discuss Inheritance, constraint on EERD
3. Construct EER diagrams to represent a given scenario.
Enhanced Entity Relationship Model
(EERD)
➢ Enhanced entity-relationship diagrams, or EERDs, are
specialized ER Diagrams that can be extremely useful for
modelling database.
➢ The most important modeling construct incorporated in the EER
model is supertype/subtype relationships. This facility enables
us to model a general entity type (called the supertype) and
then subdivide it into several specialized entity types (called
subtypes).
➢For example, the entity type CAR can be modeled as a
supertype, with subtypes SEDAN, SPORTS CAR, COUPE, and so
on.
➢Each subtype inherits attributes from its supertype and in
addition may have special attributes and be involved in
relationships of its own.
Features of EER
Model

➢An EER diagram provides you with all the elements of an ER


diagram while adding:
➢Attribute or relationship inheritances
➢Category or union types
➢Specialization and Generalization
➢Subclasses and Super classes
Generalization and
Specialization
Generalization and specialization act as opposites of one another.
Generalization:
➢ Is a process of defining a more general entity type from a set
of more specialized entity types. Thus, generalization is a
bottom-up process.
➢ Generalization combines lower-level entities into one that is a
higher level.
➢ Is a process of forming more general entity type by taking all
the common attributes from the specialized entity types.
Specializatio
n:
➢ Specialization divides high-level entities into lower levels.
➢ Is a process of forming more specialized entity types by
taking unique attributes.
Generalization and
Specialization
Specialization
➢ The process of defining one or more subtypes of the
supertype and forming supertype/subtype relationships.
➢ Each subtype is formed based on some distinguishing
characteristic, such as attributes or relationships
specific to the subtype.
➢ Specialization is a top-down process.
Sub Class and Super
Class

➢Super class is a generic entity type that has a


relationship with one or more subtypes.
➢Sub class is a group of entities with unique attributes.
Sub class inherits all the attributes from its super
class.
Inheritance

We have established that a member of a subtype must be a


member of the supertype. And a member of the supertype
also may or may not be a member of one (or more) of the
subtypes.
Constraints on
EERD

These constraints allow us to capture some of the important


business rules that apply to these super class and sub class
relationships. The two most important types of constraints
described here are

1. Based on Membership(Disjointness Constraint)


2. Based on Participation(Completeness Constraint)
Constraints on
EERD

Based on
Membership
➢ A membership constraint/disjointness constraint
addresses whether an instance of a supertype may
simultaneously be a member of two (or more) subtypes.

➢ The membership/disjointness constraint has two possible


rules:
▪ Disjoint rule or Disjoint sub classes (d)
▪ Overlap rule or Overlap sub classes(o)
Constraints on
EERD

Based on
Membership
Disjoint rule or Disjoint sub classes (d)
➢ The disjoint rule or disjoint sub classes rule specifies that
an entity instance of the supertype is a member of one
subtype, it cannot simultaneously be a member of any
other subtype.

Overlap rule or Overlapping sub classes(o)


➢ The overlap rule specifies that an entity instance can
simultaneously be a member of two (or more) subtypes.
Constraints on
EERD
Based on
Membership
Example: The business rule in figure below is, At any given
time, a PATIENT must be either an OUTPATIENT or an
INPATIENT but cannot be both. This is the disjoint rule, as
specified by the letter d in the circle joining the supertype and
its subtypes.
Constraints on
EERD
Based on
Membership
Example: Figure below shows the entity type PART with its
two subtypes, MANUFACTURED PART and PURCHASED
PART.A PART can be both MANUFACTURED and
PURCHASED. This is the overlap rule, as specified by the
letter o in the circle joining the supertype and its subtypes.
Constraints on
EERD

Based on
Participation
➢ A participation constraint/completeness constraint
addresses the question of whether an instance of a
supertype must also be a member of at least one subtype.

➢ The participation/completeness constraint has two


possible rules:

▪ Total specialization/Complete participation(||)


▪ Partial specialization/Partial participation(|)
Constraints on
EERD
Based on
Participation
Total specialization/Complete participation(||)
➢ A rule that specifies that each entity instance of a
supertype must be a member of some subtype in the
relationship.

Partial specialization/Partial participation (|)


➢ A rule that specifies that an entity instance of a
supertype is allowed not to belong to any subtype.
Constraints on
EERD
Based on
Participation
Example: In this example, the business rule is the following: A
patient must be either an outpatient or a resident patient.
(There are no other types of patient in this hospital.) Total
specialization is indicated by the double line extending from the
PATIENT entity type to the circle
Constraints on
EERD
Based on
Participation
Example: There are 3 types of vehicles: car, truck and motorcycle.
Figure below shows the entity type VEHICLE with its two subtypes,
CAR and TRUCK. MOTORCYCLE is not represented. If a vehicle is
a car, then it must appear in CAR, and if it is a truck, it must appear
as an instance of TRUCK. However, if the vehicle is a motorcycle, it
cannot appear as an instance of any subtype. The partial
participation/specialization is specified by the single line from the
VEHICLE supertype to the circle.
WHEN TO USE
SUPERTYPE/SUBTYPE
RELATIONSHIPS

You should consider using subtypes when either (or both) of


the following conditions are present:

1. There are attributes unique to subtype.


2. The subtype participate in a relationship unique to that
subtype.
Thank You

You might also like