You are previewing Information Modeling and Relational Databases, 2nd Edition.
O'Reilly logo
Information Modeling and Relational Databases, 2nd Edition

Book Description

Information Modeling and Relational Databases, second edition, provides an introduction to ORM (Object-Role Modeling)and much more. In fact, it is the only book to go beyond introductory coverage and provide all of the in-depth instruction you need to transform knowledge from domain experts into a sound database design. This book is intended for anyone with a stake in the accuracy and efficacy of databases: systems analysts, information modelers, database designers and administrators, and programmers.

Terry Halpin, a pioneer in the development of ORM, blends conceptual information with practical instruction that will let you begin using ORM effectively as soon as possible. Supported by examples, exercises, and useful background information, his step-by-step approach teaches you to develop a natural-language-based ORM model, and then, where needed, abstract ER and UML models from it. This book will quickly make you proficient in the modeling technique that is proving vital to the development of accurate and efficient databases that best meet real business objectives.

*Presents the most indepth coverage of Object-Role Modeling available anywhere, including a thorough update of the book for ORM2, as well as UML2 and E-R (Entity-Relationship) modeling.

*Includes clear coverage of relational database concepts, and the latest developments in SQL and XML, including a new chapter on the impact of XML on information modeling, exchange and transformation.

* New and improved case studies and exercises are provided for many topics.

* The book's associated web site provides answers to exercises, appendices, advanced SQL queries, and links to downloadable ORM tools.

Table of Contents

  1. Copyright
    1. Dedication
  2. Foreword
  3. Foreword
  4. Foreword
  5. Preface
    1. Online Resources
    2. ORM Software
    3. Acknowledgments
  6. Introduction
    1. Information Modeling
    2. Modeling Approaches
    3. Some Historical Background
    4. The Relevant Skills
    5. Summary
    6. Chapter Notes
  7. Information Levels and Frameworks
    1. Four Information Levels
    2. The Conceptual Level
    3. Database Design Example
    4. Development Frameworks
    5. Summary
    6. Chapter Notes
  8. Conceptual Modeling: First Steps
    1. Conceptual Modeling Language Criteria
    2. Conceptual Schema Design Procedure
    3. CSDP Step 1: From Examples to Elementary Facts
    4. CSDP Step 2: Draw Fact Types and Populate
    5. CSDP Step 3: Trim Schema; Note Basic Derivations
    6. Summary
    7. Chapter Notes
  9. Uniqueness Constraints
    1. Introduction to CSDP Step 4
    2. Uniqueness Constraints on Unaries and Binaries
    3. Uniqueness Constraints on Longer Fact Types
    4. External Uniqueness Constraints
    5. Key Length Check
    6. Projections and Joins
    7. Summary
    8. Chapter Notes
  10. Mandatory Roles
    1. Introduction to CSDP Step 5
    2. Mandatory and Optional Roles
    3. Reference Schemes
    4. Case Study: A Compact Disc Retailer
    5. Logical Derivation Check
    6. Summary
    7. Chapter Notes
  11. Value, Set-Comparison, and Subtype Constraints
    1. Introduction to CSDP Step 6
    2. Basic Set Theory
    3. Value Constraints and Independent Types
    4. Subset, Equality, and Exclusion Constraints
    5. Subtyping
    6. Generalization of Object Types
    7. Summary
    8. Chapter Notes
  12. Other Constraints and Final Checks
    1. Introduction to CSDP Step 7
    2. Occurrence Frequencies
    3. Ring Constraints
    4. Other Constraints and Rules
    5. Final Checks
    6. Summary
    7. Chapter Notes
  13. Entity Relationship Modeling
    1. Overview of ER
    2. Barker Notation
    3. Information Engineering Notation
    4. IDEF1X
    5. Mapping from ORM to ER
    6. Summary
    7. Chapter Notes
  14. Data Modeling in UML
    1. Introduction
    2. Object-Orientation
    3. Attributes
    4. Associations
    5. Set-Comparison Constraints
    6. Subtyping
    7. Other Constraints and Derivation Rules
    8. Mapping from ORM to UML
    9. Summary
    10. Chapter Notes
  15. Advanced Modeling Issues
    1. Join Constraints
    2. Deontic Rules
    3. Temporality
    4. Collection Types
    5. Nominalization and Objectification
    6. Open/Closed World Semantics
    7. Higher-Order Types
    8. Summary
    9. Chapter Notes
  16. Relational Mapping
    1. Implementing a Conceptual Schema
    2. Relational Schemas
    3. Relational Mapping Procedure
    4. Advanced Mapping Aspects
    5. Summary
    6. Chapter Notes
  17. Relational Languages
    1. SQL: Relational Algebra
    2. Relational Database Systems
    3. SQL: Historical and Structural Overview
    4. SQL: Identifiers and Data Types
    5. SQL: Choosing Columns, Rows, and Order
    6. SQL: Joins
    7. SQL: in, between, like, and is null Operators
    8. SQL: Union and Simple Subqueries
    9. SQL: Scalar Operators and Bag Functions
    10. SQL: Grouping
    11. SQL: Correlated and Existential Subqueries
    12. SQL: Recursive Queries
    13. SQL: Updating Table Populations
    14. Summary
    15. Chapter Notes
  18. Other Database Features
    1. SQL: The Bigger Picture
    2. SQL: Defining Tables
    3. SQL: Views
    4. SQL: Triggers
    5. SQL: Routines
    6. More Database Objects
    7. Transactions and Concurrency
    8. Security and Metadata
    9. Exploiting XML
    10. Summary
    11. Chapter Notes
  19. Schema Transformations
    1. Schema Equivalence and Optimization
    2. Predicate Specialization and Generalization
    3. Nesting, Coreferencing, and Flattening
    4. Other Transformations
    5. Conceptual Schema Optimization
    6. Normalization
    7. Denormalization and Low Level Optimization
    8. Reengineering
    9. Data Migration and Query Transformation
    10. Summary
    11. Chapter Notes
  20. Process and State Modeling
    1. Modeling Dynamic Behavior
    2. Processes and Workflow
    3. State Models
    4. Foundations for Process Theory
    5. Modeling Information Dynamics in UML
    6. Business Process Standards Initiatives
    7. Standard process patterns
    8. Summary
    9. Chapter Notes
  21. Other Modeling Aspects and Trends
    1. Introduction
    2. Data Warehousing and OLAP
    3. Conceptual Query Languages
    4. Schema Abstraction Mechanisms
    5. Further Design Aspects
    6. Ontologies and the Semantic Web
    7. Postrelational Databases
    8. Metamodeling
    9. Summary
    10. Chapter Notes
  22. ORM Glossary
  23. ER Glossary
  24. UML Glossary
  25. Useful Web Sites
    1. Fact-Oriented Modeling (General)
    2. Fact-Oriented Modeling Tools
    3. Business Rules and Architecture Frameworks
    4. SQL, XML, RDF, and OWL
    5. UML, OCL, MDA, and SBVR
    6. Workflow Modeling
    7. Information Modeling Organizations
  26. Bibliography
  27. About the Authors