Professional Documents
Culture Documents
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
a.
b.
c.
d.
e.
f.
g.
h.
i.
j.
k.
Domain
Entity
Relationship
Entity set
One-to-many
relationship
Relationship set
Attribute
Minimum
cardinality
Weak entity
Maximum
cardinality
Many-to-many
relationship
Slide 4-1
Enhanced/Extended
Relationship-Diagram
The main reference of this presentation is the textbook and
PPT from : Elmasri & Navathe, Fundamental of Database
Systems, 4th edition, 2004, Chapter 4
Additional resources: presentation prepared by Prof Steven
A. Demurjian, Sr
(http://www.engr.uconn.edu/~steve/courses.html)
Outline
Superclass/Subclass Relationship
Specialization/Generalization
Type
Inheritance/Constraints/Updates
Categorization
Higher-Degree Relationships
Slide 4-3
Subclass
Entity type describes:
Type of entity
The entity set
Example: EMPLOYEE
Employee can be sub-grouped into:
Secretary
Engineer
Technician
Manager
Super-class
EMPLOYEE entity type is the super class of
engineer, secretary & technician class.
Subclass represent the same mini-world
entity of the superclass, but in a distinct
specific role.
Entity in a subclass must be a member of a
superclass, but not vice-versa! Example?
Slide 4-6
SuperClass/SubClass
Relationship
Superclass/subclass relationship
is the relationship between a
superclass and any one of its
subclass or it simply
class/subclass relationship
Employee/Secretary,
Employee/Technician
Type inheritance
An entity that is member of a subclass
inherits all attributes of the entity as a
member of the superclass
It also inherits all relationships
Slide 4-8
Specialization
Is a process of defining a set of subclasses
of an entity type (the superclass)
On the basis of some distinguishing
characteristic of the entity in the
superclass
May have several specialization based on
different characteristics
SECRETARY, ENGINEERS, & TECHNICIAN are
specialization of EMPLOYEE based on job
type attribute
SALARIED_EMPLOYEE, HOURLY_EMPLOYEE
are specialization of EMPLOYEE based on
the method of pay
Slide 4-9
Fig 4.2
Slide 4-10
Benefit of Specialization
Define a set of subclasses of an
entity type
Establish additional specific
attributes with each subclass
Establish additional specific
relationship types between each
subclass and other entity types or
other subclasses
Refer to the EER diagram!
Slide 4-12
Fig 4.1
Slide 4-13
Generalization
Identify common features
(attributes), and generalize into a
superclass
Example: truck & car can be
generalized into VEHICLE
Inverse of the specialization process
Slide 4-14
Slide 4-15
Generalization and
Specialization
Diagrammatic notation sometimes used to distinguish
between generalization and specialization
Arrow pointing to the generalized superclass represents a
generalization
Arrows pointing to the specialized subclasses represent a
specialization
We do not use this notation because it is often subjective
as to which process is more appropriate for a particular
situation
We advocate not drawing any arrows in these situations
Data Modeling with Specialization and Generalization
A superclass or subclass represents a set of entities
Shown in rectangles in EER diagrams (as are entity types)
Sometimes, all entity sets are simply called classes,
whether they are entity types, superclasses, or subclasses
Slide 4-16
User-defined Subclass
Predicate condition
Predicate-defined
subclass
Slide 4-18
Constraints on Specialization
and Generalization
Two other conditions apply to a
specialization/generalization:
Disjointness Constraint:
Specifies that the subclasses of the specialization must be
disjointed (an entity can be a member of at most one of the
subclasses of the specialization)
Specified by d in EER diagram
If not disjointed, overlap; that is the same entity may be a
member of more than one subclass of the specialization
Specified by o in EER diagram
Completeness 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
Slide 4-19
Constraints on Specialization
and Generalization (2)
Hence, we have four types of
specialization/generalization:
Disjoint, total
Disjoint, partial
Overlapping, total
Overlapping, partial
Slide 4-20
Disjointness constraints
Subclasses of a specialization
must be disjoint
An entity can only be at most one
of the subclass
Look at the previous EER diagram
Use (d)
Slide 4-21
Overlap
The same entity may be a member of
more than one subclass of the
specialization
Use the (o)
Example, a person can be:
A student
A faculty member
An alumni
Slide 4-22
Slide 4-23
Completeness constraints
Total specialization:
Every entity in the superclass must be a
member of some subclass
Example, the Salaried_Employee and
Hourly_Employee
Shown using double line
Slide 4-24
Partial specialization:
Allows an entity not to belong to any
subclass
Example:
Manager
Job type
Slide 4-25
Rules
Deleting entity from a superclass
deletes it also from the subclasses
Inserting in a superclass, when
attribute defined is filled must
insert to the proper subclass as well
Inserting in superclass of total
specialization must insert into at
least one subclass
Slide 4-26
Slide 4-28
Figure 4.7
Slide 4-29
Multiple inheritance:
Student_assistant
But the Person attribute is only inherited
once
Slide 4-30
Slide 4-31
Figure 4.8
Slide 4-32
Explanation
A category OWNER is a union
subclass of COMPANY, BANK and
PERSON
Use the (U) symbol
Registered_Vehicle is a union
subclass of Car & Truck
Slide 4-33
The difference?
Engineering_Manager must exist in
all three superclass: Manager,
Engineer, Salaried_Employee
Owner, must exist in only one
superclasses
Engineering_Manager: inherited all
superclasses attributes
Owner, selective attribute
inheritance, depending on the
superclass
Slide 4-34
Partial Category
Partial
category, may
or may not
participate in
the relation
Slide 4-35
Total Category
Must be one of the
superclasses
Example: A building and a
lot must be a member of
PROPERTY
May be represented as a
generalization (d),
especially when the
similarity is numerous
Slide 4-36
Fig 4.10
Slide 4-37
CAN_SUPPLY (SUPPLIER:PART)
SUPPLIES (SUPPLIER:PROJECT)
USES (PROJECT:PART)
Slide 4-38
Slide 4-39
Slide 4-40
Slide 4-41
Slide 4-42
Ternary Relationship as
Identifying Relationship Type
Slide 4-43
Slide 4-44
Displaying attributes
Various (min,
max) notations
Displaying
cardinality ratios
Slide 4-47