SOME DATABASE PRINCIPLES

In Chapter 1, I said I was interested in principles, not products, and we’ve encountered several principles at various points in the book. Here I collect them together for ease of reference.

  • The Information Principle (also known as The Principle of Uniform Representation or The Principle of Uniformity of Representation): The database contains nothing but relvars; equivalently, the entire information content of the database at any given time is represented in one and only one way—namely, as explicit values in attribute positions in tuples in relations.[184]

  • The Closed World Assumption: Let relation r correspond to predicate P. If tuple t appears in r, then the proposition p corresponding to t is assumed to be true. Conversely, if tuple t plausibly could appear in r but doesn’t in fact appear, then the proposition p corresponding to t is assumed to be false. Note: In Chapter 5 I explained The Closed World Assumption in terms of relvars, not relations, but the definition just given is slightly more general. Note that it applies to relations that are the current values of relvars in particular, but it isn’t limited to such relations.

  • The Principle of Interchangeability: There must be no arbitrary and unnecessary distinctions between base and virtual relvars.

  • The Assignment Principle: After assignment of the value v to the variable V, the comparison V = v must evaluate to TRUE.

  • The Golden Rule: No update operation must ever cause the database constraint for any database to evaluate to FALSE.

  • The Principle of Identity of Indiscernibles: Let a and b be any two things (any two “entities,” if you prefer); then, if there’s no way whatsoever of distinguishing between a and b, there aren’t two things but only one.[185] Note: I didn’t mention this principle earlier in the book, but I appealed to it tacitly on many occasions. It can alternatively be stated thus: Every entity has its own unique identity. In the relational model, such identities are represented in the same way as everything else—namely, by means of attribute values (see The Information Principle above)—and numerous benefits accrue from this simple fact.



[184] The concept of essentiality is closely related to The Information Principle. To elaborate briefly: Let DM be a data model in the first sense of that term (see Chapter 1) and let DS be a data structure provided by DM. Let dm be a data model in the second sense of that term (again, see Chapter 1), created using the facilities of DM, and let dm include an occurrence ds of DS. Let db be a database conforming to dm. If removal from db of the data corresponding to ds would cause a loss of information from db, then ds is essential in dm (and, loosely, DS is essential in DM). Clearly, then, relational systems provide just one essential data construct, viz., the relation itself. By contrast, nonrelational systems provide numerous different ways of representing information essentially, including (e.g.) pointers, record ordering, repeating groups, and so forth.

[185] So here we have another reason—a somewhat philosophical reason, perhaps—for rejecting the notion of duplicates.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.45.136