144 Most of these extensions, like aggregation, are also a part of object-oriented data modeling, which is explained in Chapter 14, on the book Web site. E-R diagrams can become large and complex, including hundreds of entities. Many users and managers do not need to see all the entities, relationships, and attributes to understand the part of the database with which they are most interested. Entity clustering is a way to turn a part of an entity-relationship data model into a more macro-level view of the same data. An entity cluster is a set of one or more entity types and associated relationships grouped into a single abstract entity type. Several entity clusters and associated relationships can be further grouped into even a higher entity cluster, so entity clustering is a hierarchical decomposition technique. By grouping entities and relationships, you can lay out an E-R diagram to allow you to give attention to the details of the model that matter most in a given data modeling task. Packaged data models, so called universal and industry-specific data models, extensively utilize EER features. These generalizable data models often use multiple level supertype/subtype hierarchies and associative entities. Subjects and the roles subjects play are separated, creating many entity types; this complexity can be simplified when customized for a given organization, and entity clusters can be used to present simpler views of the data model to different audiences. The use of packaged data models can save considerable time and cost in data modeling. The skills required for a data modeling project with a packaged data model are quite advanced and are built on the data modeling principles covered in this text. You have to consider not only current needs but also future requirements to customize the general-purpose package. Data elements must be renamed to local terms, and current data need to be mapped to the target database design. This mapping can be challenging due to various forms of mismatches between the data in current databases with those found in the best-practices purchased database model. Fortunately, having actual data models “right out of the box” helps structure the customization process for completeness and ease of communication with subject matter experts. Overloaded columns, poor metadata, and abuses of the structure of current databases can make the customization and migration processes challenging. Data profiling can be used to understand the current data and uncover hidden meanings and business rules in data for your organization. Chapter Review Key Terms Attribute inheritance 118 Completeness constraint 122 Disjoint rule 123 Disjointness constraint 123 Enhanced entityrelationship (EER) model 114 Entity cluster 131 Generalization 119 Overlap rule 124 Partial specialization rule 122 Specialization 120 Subtype 115 Subtype discriminator 124 Supertype 115 Supertype/subtype hierarchy 126 Total specialization rule 122 Universal data model 135 Review Questions 3-1. Define each of the following terms: a. supertype b. subtype c. specialization d. entity cluster e. completeness constraint f. enhanced entity-relationship (EER) model g. subtype discriminator h. total specialization rule i. generalization j. disjoint rule k. overlap rule l. partial specialization rule m. universal data model 3-2. Match the following terms and definitions: supertype a. subset of supertype entity cluster b. entity belongs to two subtypes subtype c. subtype gets supertype attributes specialization d. generalized entity type subtype e. creating subtypes for an entity discriminator type attribute f. a group of associated entity types inheritance and relationships overlap rule g. locates target subtype for an entity 3-3. Contrast the following terms: a. supertype; subtype b. generalization; specialization c. disjoint rule; overlap rule 145 3-4. 3-5. 3-6. 3-7. 3-8. 3-9. d. total specialization rule; partial specialization rule e. PARTY; PARTY ROLE f. entity; entity cluster State two conditions that indicate when a database designer should consider using supertype/subtype relationships. State the reason for entity clustering. Give an example (other than those discussed in the chapter) of a supertype/subtype relationship. What is attribute inheritance? Why is it important? Give an example of each of the following: a. a supertype/subtype relationship where the disjoint rule applies b. a supertype/subtype relationship where the overlap rule applies What types of business rules are normally captured in an EER diagram? 3-10. What is the purpose of a subtype discriminator? 3-11. When would a packaged data model be useful? 3-12. In what ways is starting a data modeling project with a packaged data model different from starting a data modeling project with a clean sheet of paper? 3-13. How can data profiling be used during a data modeling project, especially one using a packaged data model? 3-14. Does a data modeling project using a packaged data model require less or greater skill than a project not using a packaged data model? Why or why not? 3-15. What do you purchase when you acquire a packaged