Find a copy in the library
Finding libraries that hold this item...
|All Authors / Contributors:||
Christopher John Date; Hugh Darwen
|Description:||xxiii, 547 s. : ill. ; 24 cm. ( pbk.)|
|Contents:||Preface. I. PRELIMINARIES. 1. Background and Overview. What is The Third Manifesto? Why Did We Write It? Back to the Relational Future. Some Guiding Principles. Some Crucial Logical Differences. Topics Deliberately Omitted. The Third Manifesto: A Summary. 2. Objects and Relations. Introduction. What Problem are we Trying to Solve? Relations vs. Relvars. Domains vs. Object Classes. Relvars vs. Object Classes. A Note on Inheritance. Concluding Remarks. II. FORMAL SPECIFICATIONS. 3. The Third Manifesto. RM Prescriptions. RM Proscriptions. OO Prescriptions. OO Proscriptions. RM Very Strong Suggestions. OO Very Strong Suggestions. 4. A New Relational Algebra. Introduction. Motivation and Justification. <REMOVE, <RENAME, and <COMPOSE. Treating Operators as Relations. Formal Definitions. Transitive Closure. 5. Tutorial D. Introduction. Types and Expressions. Scalar Definitions. Tuple Definitions. Relational Definitions. Scalar Operations. Tuple Operations. Relational Operations. Relations and Arrays. Statements. Syntax Summary. Mapping the Relational Operations. III. INFORMAL DISCUSSIONS AND EXPLANATIONS. 6. RM Prescriptions. RM Prescription 1: Scalar Types. RM Prescription 2: Scalar Values are Typed. RM Prescription 3: Scalar Operators. RM Prescription 4: Actual vs. Possible Representations. RM Prescription 5: Expose Possible Representations. RM Prescription 6: Type Generator TUPLE. RM Prescription 7: Type Generator RELATION. RM Prescription 8: Equality. RM Prescription 9: Tuples. RM Prescription 10: Relations. RM Prescription 11: Scalar Variables. RM Prescription 12: Tuple Variables. RM Prescription 13: Relation Variables (relvars). RM Prescription 14: Real vs. Virtual relvars. RM Prescription 15: Candidate Keys. RM Prescription 16: Databases. RM Prescription 17: Transactions. RM Prescription 18: Relational Algebra. RM Prescription 19: Relvar Names, Relation Selectors, and Recursion. RM Prescription 20: Relation-valued Operators. RM Prescription 21: Assignments. RM Prescription 22: Comparisons. RM Prescription 23: Integrity Constraints. RM Prescription 24: Relvar and Database Predicates. RM Prescription 25: Catalog. RM Prescription 26: Language Design. 7. RM Proscriptions. RM Proscription 1: No Attribute Ordering. RM Proscription 2: No Tuple Ordering. RM Proscription 3: No Duplicate Tuples. RM Proscription 4: No Nulls. RM Proscription 5: No Nullological Mistakes. RM Proscription 6: No Internal-level Constructs. RM Proscription 7: No Tuple-level Operations. RM Proscription 8: No Composite Attributes. RM Proscription 9: No Domain Check Override. RM Proscription 10: Not SQL. 8. OO Prescriptions. OO Prescription 1: Compile-time Type Checking. OO Prescription 2: Type Inheritance (conditional). OO Prescription 3: Computational Completeness. OO Prescription 4: Explicit Transaction Boundaries. OO Prescription 5: Nested Transactions. OO Prescription 6: Aggregate Operators and Empty Sets. 9. OO Proscriptions. OO Proscription 1: Relvars Are not Domains. OO Proscription 2: No Object IDs. 10. RM Very Strong Suggestions. RM Very Strong Suggestion 1: System keys. RM Very Strong Suggestion 2: Foreign keys. RM Very Strong Suggestion 3: Candidate Key Inference. RM Very Strong Suggestion 4: Transition Constraints. RM Very Strong Suggestion 5: Quota Queries. RM Very Strong Suggestion 6: Generalized Transitive Closure. RM Very Strong Suggestion 7: User-defined Generic Operators. RM Very Strong Suggestion 8: Special ("default") Values. RM Very Strong Suggestion 9: SQL Migration. 11. OO Very Strong Suggestions. OO Very Strong Suggestion 1: Type Inheritance. OO Very Strong Suggestion 2: Types and Operators Unbundled. OO Very Strong Suggestion 3: Collection Type Generators. OO Very Strong Suggestion 4: Conversion to/from Relations. OO Very Strong Suggestion 5: Single-level Store. IV. SUBTYPING AND INHERITANCE. 12. Preliminaries. Introduction. Toward a Type Inheritance Model. Single vs. Multiple Inheritance. Scalars, Tuples, and Relations. Summary. 13. The Inheritance Model. Introduction. IM Prescriptions. 14. Single Inheritance with Scalar Types. Introduction. IM Prescription 1: Types are Sets. IM Prescription 2: Subtypes are Subsets. IM Prescription 3: "Subtype of" is Reflexive. IM Prescription 4: Proper Subtypes. IM Prescription 5: "Subtype of" is Transitive. IM Prescription 6: Immediate Subtypes. IM Prescription 7: Types Disjoint Unless one a Subtype of the Other. IM Prescription 8: Scalar Values with Inheritance. IM Prescription 9: Scalar Variables with Inheritance. IM Prescription 10: Specialization by Constraint. IM Prescription 11: Assignment with Inheritance. IM Prescription 12: Equality etc. with Inheritance. IM Prescription 13: Join etc. with Inheritance. IM Prescription 14: TREAT DOWN. IM Prescription 15: Type Testing. IM Prescription 16: Read-only Operator Inheritance and Value Substitutability. IM Prescription 17: Operator Signatures. IM Prescription 18: Read-only Parameters to Update Operators. IM Prescription 19: Update Operator Inheritance and Variable Substitutability. IM Prescription 20: Union, dummy, and Maximal and Minimal Types. 15. Multiple Inheritance with Scalar Types. Introduction. The Running Example. IM Prescriptions 1-20 Revisited. Least Specific Types Unique. Most Specific Types Unique. Type Testing with Multiple Inheritance. Remarks on Operator Inheritance. 16. Inheritance with Tuple and Relation Types. Introduction. IM Prescription 21: Tuple/relation Subtypes and Supertypes. IM Prescriptions 1-20 Still Apply. IM Prescription 22: Tuple/relation Values with Inheritance. IM Prescription 23: Maximal and Minimal tuple/relation Types. IM Prescription 24: Tuple/relation most Specific Types. IM Prescription 25: Tuple/relation Variables with Inheritance. Specialization by Constraint. Tuple/relation Assignment with Inheritance. Tuple/relation Equality etc. with Inheritance. Tuple/relation TREAT DOWN. Tuple/relation Type Testing. The Additional Prescriptions Summarized. APPENDIXES. Appendix A. A Relational Calculus Version of Tutorial D. Introduction. Boolean Expressions. Builtin Relation Operator Invocations. Free and Bound Range Variable References. Relation UPDATE and DELETE Operators. Examples. Appendix B. The Two Great Blunders. Introduction. The First Great Blunder. The Second Great Blunder. Appendix D. A Design Dilemma? Introduction. Encapsulation. Discussion. Further Considerations. Appendix D. Types and Units. Introduction. Type definition. Selectors. THE_ operators. Computational Operators. Display Operators. Type Constraints. A More Complex Example. Appendix E. Subtables and Supertables. Introduction. Some General Observations. The Terminology is Extremely Bad. The Concept is not Type Inheritance. Why? Appendix F. More on Changing Semantics and Related Matters. Introduction. Analysis. A Solution. Another Example. Appendix G. Specialization by Constraint and Related Matters. Introduction. The 3 out of 4 "Rule". What Does Inheritance Really Mean? Benefits of S by C. Is a Colored Circle a Circle? Object IDs Undermine Inheritance. Why the Problem does not Arise with Foreign Keys. Appendix H. A Comparison with SQL. Introduction. RM Prescriptions. RM Proscriptions. OO Prescriptions. OO Proscriptions. RM Very Strong Suggestions. OO Very Strong Suggestions. IM Prescriptions. History of the Wrong Equation in SQL. Appendix I. A Comparison with ODMG. Introduction. Overview. RM Prescriptions. RM Proscriptions. OO Prescriptions. OO Proscriptions. RM Very Strong Suggestions. OO Very Strong Suggestions. IM Prescriptions. Appendix J. The Next 25 Years of the Relational Model? Remarks on Republication. Introduction. Background. The Third Manifesto and SQL. Technical Content. More on SQL. Miscellaneous Questions. Appendix K. References and Bibliography. Index. 0201709287T04062001|
|Responsibility:||C.J. Date and Hugh Darwen|