Database Management Systems|Enhanced Entity Relationship and Object Modeling
6.0 Enhanced Entity Relationship and Object Modeling

6.1 Super Classes/ SubClasses
• Entity type represents
o Type of Entity
o Entity Set (collection of entities of that type that exist in the database)
• Entity type may have many subgroups
o Sub groups need to be represented explicitly (due to the significance to
the database)
• Each sub group is called a Sub Class
• Main entity type, which belongs the subgroups is called Super Class
• Member entity of sub class represents the same real world entity as some entity of the super class
• At the same time, that particular entity of sub class plays a distinct specific role, by which the specialty is identified
• Each member of sub class is a member of its super class
• Super Class – Sub Class relationship is called an IS-A relationship
Eg:

6.2 Type Inheritance
• Member of the sub class
o Inherits all the attributes and the relationships of the super class
o In addition, it has its own specific attributes and relationships
• Sub Class with these inherited and specific attributes and relationships is
considered as an individual entity type
6.3 Specialization/Generalization
6.3.1 Specialization
• Process of
o Defining a set of sub classes of an entity type
o Establish additional attributes with each sub class
o Establish additional specific relationships between each sub class and
other entity types
• Based on some distinguishing characteristics of the entities in the super class
• The specific attributes (those apply only to entities of a particular sub class) are called specific attributes or local attributes
• ⊂: class/subclass relationship
• EngType: specific or local attribute
• Manage: specific relationship to “Manager”
6.3.2 Generalization
• Process of
o Minimizing the differences between entities by identifying common
features.
o Generalizing them into a typical superclass
o Defining a generalized entity type from given entity types
• Suppress the differences among different entity types
• Functionally, the inverse of specialization
• Original entity types are special subclasses

• Identify common features
• Group them to form a superclass

6.4 Characteristics and Constraints of Specialization and Generalization

6.4.1 Predicate-Defined Sub Classes
• Also called Condition-Defined sub class
• Determine the sub class to which an entity is belong to, by applying a
condition on the value of a given attribute of the super class
• Condition is called defining predicate
• Defining Predicate is the constraint which specifies the entity with which
value of the particular attribute should go the given sub-class
• Attribute –Defined Specialization
• All the sub classes have their specialization, depending on the conditions
formed on the same attribute, of the super class
• Such attribute is called defining attribute of the specialization
6.4.2 User-Defined Sub Classes
• Membership to the sub class is specified by the database users at the time of operation
• Membership is specified individually for each entity by the user
• No conditions are used to evaluate the entities automatically
6.4.3 Disjointness Constraint
• An entity can be a member of at most one sub class
• Attribute defined specialization implies the Disjointness, if defining attribute is a single valued
• In EER diagram, disjointness is denoted by a letter d in a circle
6.4.4 Overlapping Specialization

6.4.5 Completeness Constraint
• Partial Specialization
o Allows an entity not to belong to any sub class
o Denoted by a single line connecting the super class to the circle
6.4.6 Insertion and Deletion Rules
• Deleting an Entity from super class automatically deletes the entity from all the sub classes to which it belongs
• Inserting an entity in a super class implies that the entity is mandatorily inserted to the predicate-defined sub classes, if the entity satisfies the defining predicate
• Inserting an entity in a super class of total specialization implies that the entity is mandatorily inserted in at least one sub class
6.4.7 Union Types
• Considered with multiple inheritance
• Used to represent sub classes which inherit from more than one disjoint super classes
• The domain for sub class entity is the UNION of all its distinct super class entity types
• Such sub class is called a Union Type or a Category
• Super classes of the category may have different key attributes
• Total Category
o Holds union of all entities in its super class
o Represented by a double line connecting the category and the circle
• Partial Category
o Can hold a subset of union
o Represented by a single line connecting the category and the circle
6.4.8 Specialization Vs Categorization
• If the categorization is total, it may also be alternatively represented as Total Specialization
• Use Specialization if the two classes
o represent the same set of entities
o Share many attributes including the same key attribute
• Otherwise, categorization (Union Type) is more appropriate
6.4.9 Specialization Lattice
• Occurs when a sub class has more than one parent classes (multiple inheritance)
• If its parent class is also a subclass of another super class, the level 2 sub class inherits from both:
o Direct super class
o Predecessor super class


Comments
There are no comments for this story
Be the first to respond and start the conversation.