D a t a b a s e E x p l o r a t
i o n s
C o n t e n t s
Preface xv
PART I FOUNDATIONS 1
Chapter 1 The Third Manifesto 3
Chapter 2 What's a Predicate? 17
Chapter 3 The Naming of Types 31
Chapter
4 Setting the Record
Straight
(Part 1 of 6): The Two Great Blunders 39
Chapter
5 Setting the Record
Straight
(Part 2 of 6): Treating Operators as Relations 43
Chapter 6 Setting
the Record Straight
(Part 3 of 6): “Semantic Compositionality” 53
Chapter 7 Setting
the Record Straight
(Part 4 of 6): Integrity and Assignment 59
Chapter
8 Setting the Record
Straight
(Part 5 of 6): Relation Valued Attributes 63
Chapter
9 Setting the Record
Straight
(Part 6 of 6): Nulls and Three-Valued Logic 77
Chapter 10 How to Update Views 85
PART II LANGUAGE DESIGN 125
Chapter 11 Tutorial D 127
Chapter 12 A Brief History of the Relational Divide Operator 169
Chapter 13 Inclusion Dependencies and Foreign Keys 199
Chapter 14 Image Relations 237
Chapter 15 N-adic vs. Dyadic Operators: An Investigation 273
Chapter 16 Toward an Industrial Strength Dialect of Tutorial D 285
Chapter 17 A Remark on Prenex Normal Form 297
Chapter 18 Orthogonal Language Design: How Not to Do It 305
PART III TYPE INHERITANCE 309
Chapter 19 The Inheritance Model 311
Chapter 20 The Inheritance Model: What Was Changed and Why 319
Chapter 21 Extending Tutorial D to Support the Inheritance Model 347
Chapter 22 Toward a Better Understanding of Numeric Data Types 357
PART IV MISSING INFORMATION 373
Chapter 23 The Decomposition Approach 375
Chapter 24 The Multirelational Approach 391
Chapter 25 An Inheritance Approach 431
Chapter 26 An Approach Using Relation Valued Attributes 445
Chapter 27 Is SQL’s Three-Valued Logic Truth Functionally Complete? 457
Chapter
28 A Critique of Nulls,
Three-Valued Logic, and Ambiguity in SQL:
Critiquing Date's Critique
481
Chapter 29 Nothing to Worry About 485
PART V MISCELLANEOUS TOPICS 487
Chapter
30 Some
Normalization Issues:
An Attempt at Clarification 489
Chapter
31 Professionals
or Practitioners?
Some Reflections on the State of the Database Industry 505
Index 515