0% found this document useful (0 votes)
38 views40 pages

Chapter 04

This document discusses enhanced entity-relationship (EER) modeling. EER modeling includes concepts like subclasses, superclasses, specialization, and generalization that allow modeling applications more completely and accurately. Specialization defines subclasses of a superclass based on distinguishing characteristics. Generalization is the reverse process of specialization. EER diagrams represent subclasses, superclasses, and the relationships between them. Specialization can be attribute-defined, predicate-defined, or user-defined based on how subclass membership is determined. Constraints like disjointness and completeness can apply to specialization/generalization.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
38 views40 pages

Chapter 04

This document discusses enhanced entity-relationship (EER) modeling. EER modeling includes concepts like subclasses, superclasses, specialization, and generalization that allow modeling applications more completely and accurately. Specialization defines subclasses of a superclass based on distinguishing characteristics. Generalization is the reverse process of specialization. EER diagrams represent subclasses, superclasses, and the relationships between them. Specialization can be attribute-defined, predicate-defined, or user-defined based on how subclass membership is determined. Constraints like disjointness and completeness can apply to specialization/generalization.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 40

CHAPTER 4

Enhanced Entity-Relationship
(EER) Modeling

Sli
de
1-
Prepared By Anita S R 1
 EER stands for Enhanced ER or Extended ER
 EER Model Concepts
◦ Includes all modeling concepts of basic ER
◦ Additional concepts:
 subclasses/superclasses
 specialization/generalization
 categories (UNION types)
 attribute and relationship inheritance
◦ Constraints on Specialization/Generalization
 The additional EER concepts are used to model
applications more completely and more accurately
◦ EER includes some object-oriented concepts, such as
inheritance
 Knowledge Representation and Ontology Concepts
Sli
de
4-
Prepared By Anita S R 2
 An entity type may have additional meaningful
subgroupings of its entities
◦ Example: EMPLOYEE may be further grouped
into:
 SECRETARY, ENGINEER, TECHNICIAN, …
 Based on the EMPLOYEE’s Job
 MANAGER
 EMPLOYEEs who are managers (the role they play)
 SALARIED_EMPLOYEE, HOURLY_EMPLOYEE
 Based on the EMPLOYEE’s method of pay
 EER diagrams extend ER diagrams to represent
these additional subgroupings, called
subclasses or subtypes
Sli
de
4-
Prepared By Anita S R 3
Subclasses and Superclasses

Sli
de
4-
Prepared By Anita S R 4
 Each of these subgroupings is a subset of EMPLOYEE
entities
 Each is called a subclass of EMPLOYEE
 EMPLOYEE is the superclass for each of these
subclasses
 These are called superclass/subclass relationships:
◦ EMPLOYEE/SECRETARY
◦ EMPLOYEE/TECHNICIAN
◦ EMPLOYEE/MANAGER
◦ …

Sli
de
4-
Prepared By Anita S R 5
 These are also called IS-A relationships
◦ SECRETARY IS-A EMPLOYEE, TECHNICIAN IS-A
EMPLOYEE, ….
 Note: An entity that is member of a subclass represents
the same real-world entity as some member of the
superclass:
◦ The subclass member is the same entity in a distinct
specific role
◦ An entity cannot exist in the database merely by
being a member of a subclass; it must also be a
member of the superclass
◦ A member of the superclass can be optionally
included as a member of any number of its
subclasses

Sli
de
4-
Prepared By Anita S R 6
 Examples:
◦ A salaried employee who is also an engineer
belongs to the two subclasses:
 ENGINEER, and
 SALARIED_EMPLOYEE
◦ A salaried employee who is also an engineering
manager belongs to the three subclasses:
 MANAGER,
 ENGINEER, and
 SALARIED_EMPLOYEE
 It is not necessary that every entity in a
superclass be a member of some subclass
Sli
de
4-
Prepared By Anita S R 7
Specialization (3)

Sli
de
4-
Prepared By Anita S R 8
 An entity that is member of a subclass inherits
◦ All attributes of the entity as a member of
the superclass
◦ All relationships of the entity as a member
of the superclass
 Example:
◦ In the previous slide, SECRETARY (as well as
TECHNICIAN and ENGINEER) inherit the
attributes Name, SSN, …, from EMPLOYEE
◦ Every SECRETARY entity will have values for
the inherited attributes

Sli
de
4-
Prepared By Anita S R 9
Sli
de
4-
Prepared By Anita S R 10
 Specialization is the process of defining a set of
subclasses of a superclass
 The set of subclasses is based upon some
distinguishing characteristics of the entities in the
superclass
◦ Example: {SECRETARY, ENGINEER, TECHNICIAN} is a
specialization of EMPLOYEE based upon job type.
◦ Example: MANAGER is a specialization of EMPLOYEE
based on the role the employee plays
 May have several specializations of the same
superclass

Sli
de
4-
Prepared By Anita S R 11
Specialization (3)

Sli
de
4-
Prepared By Anita S R 13
 Generalization is the reverse of the specialization
process
 Several classes with common features are generalized
into a superclass;
◦ original classes become its subclasses
 Example: CAR, TRUCK generalized into VEHICLE;
◦ both CAR, TRUCK become subclasses of the
superclass VEHICLE.
◦ We can view {CAR, TRUCK} as a specialization of
VEHICLE
◦ Alternatively, we can view VEHICLE as a generalization
of CAR and TRUCK

Sli
de
4-
Prepared By Anita S R 14
Generalization (2)

Sli
de
4-
Prepared By Anita S R 15
 Data Modeling with Specialization and
Generalization
◦ A superclass or subclass represents a
collection (or set or grouping) of entities
◦ It also represents a particular type of entity
◦ Shown in rectangles in EER diagrams (as are
entity types)
◦ We can call all entity types (and their
corresponding collections) classes, whether
they are entity types, superclasses, or
subclasses
Sli
de
4-
Prepared By Anita S R 17
 Predicate-defined ( or condition-defined) :
based on some predicate. E.g., based on value
of an attribute, say, Job-type, or Age.
 Attribute-defined: shows the name of the
attribute next to the line drawn from the
superclass toward the subclasses (see Fig. 4.1)
 User-defined: membership is defined by the
user on an entity by entity basis

Sli
de
4-
Prepared By Anita S R 18
 If all subclasses in a specialization have
membership condition on same attribute of the
superclass, specialization is called an attribute-
defined specialization
◦ Attribute is called the defining attribute of the
specialization
◦ Example: JobType is the defining attribute of the
specialization {SECRETARY, TECHNICIAN, ENGINEER} of
EMPLOYEE
 If no condition determines membership, the
subclass is called user-defined
◦ Membership in a subclass is determined by the
database users by applying an operation to add an
entity to the subclass
◦ Membership in the subclass is specified individually
for each entity in the superclass by the user
Sli
de
4-
Prepared By Anita S R 20
Sli
de
4-
Prepared By Anita S R 21
 Two basic constraints can apply to a
specialization/generalization:
◦ Disjointness Constraint:
◦ Completeness Constraint:

Sli
de
4-
Prepared By Anita S R 22
 Disjointness Constraint:
◦ Specifies that the subclasses of the specialization must
be disjoint:
 an entity can be a member of at most one of the
subclasses of the specialization
◦ Specified by d in EER diagram
◦ If not disjoint, specialization is overlapping:
 that is the same entity may be a member of more than
one subclass of the specialization
◦ Specified by o in EER diagram

Sli
de
4-
Prepared By Anita S R 23
 Completeness (Exhaustiveness) Constraint:
◦ Total specifies that every entity in the
superclass must be a member of some
subclass in the specialization/generalization
◦ Shown in EER diagrams by a double line
◦ Partial allows an entity not to belong to any
of the subclasses
◦ Shown in EER diagrams by a single line

Sli
de
4-
Prepared By Anita S R 24
 Hence, we have four types of
specialization/generalization:
◦ Disjoint, total
◦ Disjoint, partial
◦ Overlapping, total
◦ Overlapping, partial
 Note: Generalization usually is total because
the superclass is derived from the subclasses.

Sli
de
4-
Prepared By Anita S R 25
Sli
de
4-
Prepared By Anita S R 26
Example of overlapping total Specialization

Sli
de
4-
Prepared By Anita S R 27
 A subclass may itself have further subclasses
specified on it
◦ forms a hierarchy or a lattice
 Hierarchy has a constraint that every subclass
has only one superclass (called single
inheritance); this is basically a tree structure
 In a lattice, a subclass can be subclass of more
than one superclass (called multiple
inheritance)

Sli
de
4-
Prepared By Anita S R 28
Shared Subclass “Engineering_Manager”

Sli
de
4-
Prepared By Anita S R 29
 In a lattice or hierarchy, a subclass inherits attributes
not only of its direct superclass, but also of all its
predecessor superclasses
 A subclass with more than one superclass is called a
shared subclass (multiple inheritance)
 Can have:
◦ specialization hierarchies or lattices, or
◦ generalization hierarchies or lattices,
◦ depending on how they were derived
 We just use specialization (to stand for the end result of
either specialization or generalization)

Sli
de
4-
Prepared By Anita S R 30
 In specialization, start with an entity type and
then define subclasses of the entity type by
successive specialization
◦ called a top down conceptual refinement
process
 In generalization, start with many entity types
and generalize those that have common
properties
◦ Called a bottom up conceptual synthesis
process
 In practice, a combination of both processes is
usually employed
Sli
de
4-
Prepared By Anita S R 31
Sli
de
4-
Prepared By Anita S R 32
 All of the superclass/subclass relationships we
have seen thus far have a single superclass
 A shared subclass is a subclass in:
◦ more than one distinct superclass/subclass
relationships
◦ each relationships has a single superclass
◦ shared subclass leads to multiple inheritance
 In some cases, we need to model a single
superclass/subclass relationship with more
than one superclass
 Superclasses can represent different entity
types
 Such a subclass is called a category or UNION Sli
de

TYPE
4-
Prepared By Anita S R 33
 Example: In a database for vehicle registration, a vehicle
owner can be a PERSON, a BANK (holding a lien on a
vehicle) or a COMPANY.
◦ A category (UNION type) called OWNER is created to
represent a subset of the union of the three
superclasses COMPANY, BANK, and PERSON
◦ A category member must exist in at least one
(typically just one) of its superclasses
 Difference from shared subclass, which is a:
◦ subset of the intersection of its superclasses
◦ shared subclass member must exist in all of its
superclasses

Sli
de
4-
Prepared By Anita S R 34
Sli
de
4-
Prepared By Anita S R 35
 Class C:
◦ A type of entity with a corresponding set of
entities:
 could be entity type, subclass, superclass, or
category
 Note: The definition of relationship type in
ER/EER should have 'entity type' replaced with
'class‘ to allow relationships among classes in
general
 Subclass S is a class whose:
 Type inherits all the attributes and relationship of a
class C
 Set of entities must always be a subset of the set of
entities of the other class C
 S⊆C Sli

 C is called the superclass of S


de
4-

 A superclass/subclass relationship exists between S


Prepared By Anita S R 36
 Specialization Z: Z = {S1, S2,…, Sn} is a set of
subclasses with same superclass G; hence, G/Si is a
superclass relationship for i = 1, …., n.
◦ G is called a generalization of the subclasses {S1,
S2,…, Sn}
◦ Z is total if we always have:
 S1 ∪ S2 ∪ … ∪ Sn = G;
 Otherwise, Z is partial.
◦ Z is disjoint if we always have:
 Si ∩ Sj empty-set for i ≠ j;
◦ Otherwise, Z is overlapping.

Sli
de
4-
Prepared By Anita S R 37
 Subclass S of C is predicate defined if predicate
(condition) p on attributes of C is used to specify
membership in S;
◦ that is, S = C[p], where C[p] is the set of entities in C
that satisfy condition p
 A subclass not defined by a predicate is called user-
defined
 Attribute-defined specialization: if a predicate A = ci
(where A is an attribute of G and ci is a constant value
from the domain of A) is used to specify membership in
each subclass Si in Z
◦ Note: If ci ≠ cj for i ≠ j, and A is single-valued, then
the attribute-defined specialization will be disjoint.

Sli
de
4-
Prepared By Anita S R 38
 Category or UNION type T
◦ A class that is a subset of the union of n defining
superclasses
D1, D2,…Dn, n>1:
 T ⊆ (D1 ∪ D2 ∪ … ∪ Dn)
◦ Can have a predicate pi on the attributes of Di to specify
entities of Di that are members of T.
◦ If a predicate is specified on every Di: T = (D1[p1] ∪ D2[p2]
∪…∪ Dn[pn])

Sli
de
4-
Prepared By Anita S R 39
 ER/EER diagrams are a specific notation for displaying the
concepts of the model diagrammatically
 DB design tools use many alternative notations for the same
or similar concepts
 One popular alternative notation uses UML class diagrams
 see next slides for UML class diagrams and other alternative
notations

Sli
de
4-
Prepared By Anita S R 40
Sli
de
4-
Prepared By Anita S R 41
Sli
de
4-
Prepared By Anita S R 42
 Introduced the EER model concepts
◦ Class/subclass relationships
◦ Specialization and generalization
◦ Inheritance
 Constraints on EER schemas
 These augment the basic ER model concepts
introduced in Chapter 3
 EER diagrams and alternative notations were
presented
 Knowledge Representation and Ontologies were
introduced and compared with Data Modeling
Sli
de
4-
Prepared By Anita S R 43

You might also like