Ch 4
Class C:
A type of entity with a corresponding set of entities: could be entity type, subclass, superclass, or category
Aggregation
Abstraction concept for building composite objects from their component objects
Semantic Web
Allow meaningful information exchange and search among machines
Association
Associate objects from several independent classes
The process of defining a set of subclasses of a superclass
Specialization
The set of subclasses is based upon some distinguishing characteristics of the entities in the superclass in
Specialization
Ontology
Specification of a conceptualization
Classification
Systematically assigning similar objects/entities to object classes/entity types
Superclasses can represent different entity types. Such a subclass is called a category or _______ ______
UNION TYPE
Main structural distinction
When an association instance is deleted participating objects may continue to exist
Display a predicate-defined subclass by writing the __________ condition next to the line attaching the subclass to its superclass
predicate
Subclass S of C is _______ defined if predicate (condition) p on attributes of C is used to specify membership in S
predicate
If we can determine exactly those entities that will become members of each subclass by a condition, the subclasses are called _______________ (or conditiondefined) subclasses
predicate-defined
A subclass not defined by a predicate is called ________________
user-defined
If no condition determines membership, the subclass is called _____________
user-defined
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])
Identification
-Abstraction proces -Classes and objects are made uniquely identifiable by means of some identifier -Needed at two levels: To distinguish among database objects and classes and, to identify database objects and to relate them to their real-world counterparts
Goal of knowledge representation (KR) techniques
-Accurately model some domain of knowledge -Create an ontology that describes the concepts of the domain and how these concepts are interrelated
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
Subclasses and Superclasses
-An entity type may have additional meaningful subgroupings of its entities EX: 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
Representing specialization and generalization in UML class diagrams
-Basic notation: Blank triangle is disjoint, filled is overlapping -Base class: Root superclass -Leaf classes: Subclasses (leaf nodes)
CONSTRAINTS
-CARDINALITY (Min and Max) -COVERAGE (Total vs. Partial, and Exclusive (Disjoint) vs. Overlapping)
TYPES OF DATA ABSTRACTIONS
-CLASSIFICATION and INSTANTIATION -AGGREGATION and ASSOCIATION (relationships) -GENERALIZATION and SPECIALIZATION -IDENTIFICATION
Two main reasons for including class/subclass relationships and specializations in a data model:
-Certain attributes may apply to some but not all entities of the superclass -Some relationship types may be participated in only by members of the subclass
The Enhanced Entity-Relationship (EER) Model
-Created to design more accurate database schemas -Reflect the data properties and constraints more precisely -More complex requirements than traditional applications -Includes all modeling concepts of basic ER: subclasses/superclasses, specialization/generalization, categories (UNION types), attribute and relationship inheritance -Knowledge Representation and Ontology Concepts
what are the four types of specialization and generalization?
-Disjoint, total -Disjoint, partial -Overlapping, total -Overlapping, partial
Two basic constraints can apply to a specialization/generalization:
-Disjointness Constraint -Completeness Constraint
Generalization
-Generalize several classes into a higher-level abstract class -Includes the objects in all these classes
Instantiation
-Inverse of classification -Generation and specific examination of distinct objects of a class
Types of Specialization
-Predicate-defined -Attribute-defined -User-defined
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
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
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 -C is called the superclass of S -A superclass/subclass relationship exists between S and C
Difference from shared subclass, which is a:
-subset of the intersection of its superclasses -shared subclass member must exist in all of its superclasses
Specialization
Classify a class of objects into more specialized subclasses
____________ is a constraint that determines subclass members
Condition
________ _________ are sometimes used to distinguish between generalization and specialization
Diagrammatic notations
_________ contain less structure than database information does
Documents
Superclass/subclass relationships and specialization can be diagrammatically represented in ___________
EER diagrams
EER stands for Enhanced ER or ________ ER
Extended
is the reverse of the specialization process is __________
Generalization
superclass/subclass relationships are also called ________ ________________
IS-A relationships
Specification
Language and vocabulary terms used to specify conceptualization
It is ___ _______ that every entity in a superclass be a member of some subclass
NOT necessary
If all subclasses in a specialization have membership condition on same attribute of the superclass, specialization is called an __________ specialization
attribute-defined
In generalization, start with many entity types and generalize those that have common properties. Called a ______ __ conceptual synthesis process
bottom up
We can call all entity types (and their corresponding collections) ________, whether they are entity types, superclasses, or subclasses
classes
A superclass or subclass represents a ___________ (or set or grouping) of entities
collection
Several classes with ________ _________ are generalized into a superclass. Original classes become its subclasses
common features
The definition of relationship type in ER/EER should have 'entity type' replaced with 'class' to allow relationships among classes in _______
general
Arrow pointing to the generalized superclass represents a ____________
generalization
In a lattice or ________, a subclass inherits attributes not only of its direct superclass, but also of all its predecessor superclasses
hierarchy
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
User-defined
membership is defined by the user on an entity by entity basis
In some cases, we need to model a single superclass/subclass relationship with _______ _____ _____ superclass
more than one
Predicate-defined
or condition-defined, based on some predicate. E.g., based on value of an attribute, say, Job-type, or Age.
If the requirements do not indicate any particular constraints, the default would generally be ________ and partial
overlapping
An entity that is member of a subclass represents the same ____________ entity as some member of the superclass
real-world
Specialization Z: Z = {S1, S2,..., Sn} is a set of subclasses with _____ superclass G; hence, G/Si is a superclass relationship for i = 1, ...., n.
same
Goals of KR are similar to those of _________ data models
semantic
A subclass with more than one superclass is called a ______ subclass (multiple inheritance)
shared
Attribute-defined
shows the name of the attribute next to the line drawn from the superclass toward the subclasses
Arrows pointing to the specialized subclasses represent a _________
specialization
Attribute is called the defining attribute of the __________
specialization
Attributes of a subclass are called _______ or local attributes.
specific
The _________ can also participate in specific relationship types
subclass
A member of the superclass can be optionally included as a member of any number of its _________
subclasses
EER diagrams extend ER diagrams to represent these additional subgroupings, called subclasses or ________
subtypes
An entity cannot exist in the database merely by being a member of a subclass; it must also be a member of the ___________________
superclass
In specialization, start with an entity type and then define subclasses of the entity type by successive specialization. Called a _____ _____ conceptual refinement process
top down
Generalization usually is _______ because the superclass is derived from the subclasses
total