Page Numbers: No   X: 530   Y: 10.5"Columns: 1   Edge Margin: .6"   Between Columns: .4"Margins:   Top: 1.3"   Bottom: 1"Line Numbers: No   Modulus: 5   Page-relativeqk40(635)\gDesign and Implementation of aRelationship-Entity-Datum Data Modely700x6\f9bgR. G. G. Cattellz18697e24(0,5152)\f6bgCSL-83-4            April 1983            [P83-00004]z18697e24(0,65535)\f7bg42B11bc Copyright Xerox Corporation 1983.  All rights reserved.z18697e24(635)\f3g1f7Abstract: The Model level of the Cypress Database Management System, built upon the earlier Cedar DBMS, provides data description and access capabilities at a higher level of abstraction than the existing system and other conventional DBMS's.  In this report we describe the design of the Cypress data model and discuss issues in the efficient implementation of such a model.  Cypress incorporates features motivated by experience with local database applications.  It may be viewed as an integration of a number of existing data models; we present the criteria that led to this choice.  The Cypress primitives include simple data values such as strings or integers, entities representing real or abstract objects, and relationships among entities and/or simple data values.  We also provide mechanisms for a hierarchy of types, relational keys, and segmentation of databases into independent files.  Cypress allows a conventional relational query language.  We argue that our extensions to simpler data models allow a more powerful and efficient implementation, and we describe the optimizations Cypress performs.  We also discuss some preliminary experience with user tools and applications developed in conjunction with Cypress.z18697x6e40j(0,5152)\f6bg10BCR categories: H.2.1, H.2.2, H.4.1z18697x6e40j\f6bg14BKey words and phrases: Cedar, Cypress, database systems, semantic model, data modelz18697x6e40j\f6bg22B1f0 60f6XEROXz18697y151(635)\f2g5f7bXerox CorporationPalo Alto Research Center3333 Coyote Hill RoadPalo Alto, California 94304l10795y148(2116)\f6gTABLE OF CONTENTSz18697e12ck40(635)\bg2f51.	Introduction	1z18697l6304e6k40(0,7040)(1,14400)\bg1.1	Data modelling1.2	Cypress and Cedar1.3	Design criteria and motivationz18697l7574e6k40(0,8480)\bg2.	Cypress data model concepts	5z18697l6304e6k40(0,7040)\bg2.1	Data independence2.2	Basic primitives2.3	Names and keys2.4	Basic operations2.5	Aggregate operations2.6	Convenience operations2.7	Normalization2.8	Segments2.9	Augments2.10	Views2.11	Summaryz18697l7574e6k40(0,8480)\bg3.	Model level interface	27z18697l6304e6k40(0,7040)\bg3.1	Types3.2	Transactions and segments3.3	Data schema definition3.4	Basic operations3.5	Query operations3.6	System domains and relations3.7	Errorsz18697l7574e6k40(0,8480)\bg4.  Application example	47z18697l6304e6k40(0,7040)\bg4.1	A database application4.2	Schema design4.3	Example programz18697l7574e6k40(0,8288)\bg5.  Data model design issues	57z18697l6304e6k40(0,7040)\bg5.1	Relations and attributes5.2	Entities and domains5.3	Entities as relationships5.4	Relationships as entities5.5	Lists and sets5.6	Entity names5.7	Keys, normalization, and dependencies5.8	Generalization and type hierarchies5.9	Access primitives5.10	Views, segments, and augments5.11	Summaryz18697l7574e6k40(0,8480)\bgz18697l6304e6k40(0,16046)\bg6.	Data model implementation issues	73z18697l6304e6k40(0,7040)\bg6.1	Storage level structures6.2	Entities and relationships6.3	Values6.4	Caching the data schema6.5	Links and colocation6.6	Surrogate relations6.7	Basic operations6.8	Aggregate operations6.9	Summaryz18697l7574e6k40(0,8480)\bg7.	Database environment and applications	87z18697l6304e6k40(0,7040)\bg7.1	Database environment7.2	Database tools7.3	Database applications7.4	Summaryz18697l7574e6k40(0,8480)\bg8.	Status and conclusions	101z18697l6304e6k40(0,7040)\bg8.1	Summary8.2	Some results8.3	Status and plans8.4	Summaryz18697l7574e6k40(0,8480)\bg9.	Annotated bibliography	105z18697l6304e6k40(0,7040)\bg10.	Appendix and index	113z18697l6304e6k40\bg