- •Contents
- •Data Modeling Concepts
- •Benefits of Data Modeling
- •Methods
- •Typographical Conventions
- •Introduction
- •Data Modeling
- •Data Modeling Sessions
- •Session Roles
- •Sample IDEF1X Modeling Methodology
- •Modeling Architecture
- •Logical Models
- •Entity Relationship Diagram
- •Key-Based Model
- •Fully-Attributed Model
- •Physical Models
- •Transformation Model
- •DBMS Model
- •How to Construct a Logical Model
- •Entity Relationship Diagram
- •Entities and Attributes Defined
- •Logical Relationships
- •Many-to-Many Relationships
- •Logical Model Design Validation
- •Data Model Example
- •Key-Based Data Model
- •Key Types
- •Entity and Non-Key Areas
- •Primary Key Selection
- •Alternate Key Attributes
- •Inversion Entry Attributes
- •Relationships and Foreign Key Attributes
- •Dependent and Independent Entities
- •Identifying Relationships
- •Non-Identifying Relationships
- •Rolenames
- •Overview
- •Entity and Attribute Names
- •Synonyms, Homonyms, and Aliases
- •Entity Definitions
- •Descriptions
- •Business Examples
- •Comments
- •Definition References and Circularity
- •Business Glossary Construction
- •Attribute Definitions
- •Validation Rules
- •Rolenames
- •Definitions and Business Rules
- •Relationships
- •Relationship Cardinality
- •Cardinality in Non-Identifying Relationships
- •Referential Integrity
- •Referential Integrity Options
- •RI, Cardinality, and Identifying Relationships
- •RI, Cardinality, and Non-Identifying Relationships
- •Additional Relationship Types
- •Many-to-Many Relationships
- •N-ary Relationships
- •Recursive Relationships
- •Subtype Relationships
- •Complete Compared to Incomplete Subtype Structures
- •Inclusive and Exclusive Relationships
- •IDEF1X and IE Subtype Notation
- •When to Create a Subtype Relationship
- •Normalization
- •Overview of the Normal Forms
- •Common Design Problems
- •Repeating Data Groups
- •Multiple Use of the Same Attribute
- •Multiple Occurrences of the Same Fact
- •Conflicting Facts
- •Derived Attributes
- •Missing Information
- •Unification
- •How Much Normalization Is Enough
- •Support for Normalization
- •First Normal Form Support
- •Second and Third Normal Form Support
- •Objective
- •Support for the Roles of the Physical Model
- •Summary of Logical and Physical Model Components
- •Denormalization
- •Classification of Dependent Entities
- •Glossary
- •Index
Chapter 6: Model Relationships
This section contains the following topics:
Relationships (see page 47)
Relationship Cardinality (see page 48)
Referential Integrity (see page 51)
Additional Relationship Types (see page 56)
Relationships
Relationships are a bit more complex than they might seem at first. They carry a lot of information. Some might say that they are the heart of the data model, since, to a great extent, they describe the rules of the business and the constraints on creating, modifying, and deleting instances. For example, you can use cardinality to define exactly how many instances are involved in both the child and parent entities in the relationship. You can further specify how you want to handle database actions such as INSERT, UPDATE, and DELETE using referential integrity rules.
Data modeling also supports highly complex relationship types that enable you to construct a logical model of your data that is understandable to both business and systems experts.
Chapter 6: Model Relationships 47
