Re: So let me get this right: (Was: NFNF vs 1NF ...)

From: David Cressey <david.cressey_at_earthlink.net>
Date: Thu, 10 Feb 2005 20:39:51 GMT
Message-ID: <rEPOd.7226$oO.4480_at_newsread2.news.atl.earthlink.net>


"DBMS_Plumber" <paul_geoffrey_brown_at_yahoo.com> wrote in message news:1108060146.585699.115260_at_c13g2000cwb.googlegroups.com...
> Alfredo Asks:
>
> >> "Where Codd said that relational valued attributes are not [OK]"
>
> >From [1]
>
> "The term relation is used here in its accepted mathematical sense.
> Given sets S1, S2, ... Sn (not necessarily distinct), R is a relation
> on these n sets of it is a set of n-tuples each of which has its first
> element from S1, its second from S2, and so on. {FN1}"
>
> {FN1} "More concisely, R is a subset of the Cartesian product S1 x S2 x
> ... x Sn."
>

> [1] Codd, E. "A Relational Model of Data for Large Shared Data Banks"
> Communications of the ACM 13(6): 1970.
>

I don't quite agree. Here's an excerpt from the on-line copy of [1]:

http://www.acm.org/classics/nov95/

"A relation whose domains are all simple can be represented in storage by a two-dimensional column-homogeneous array of the kind discussed above. Some more complicated data structure is necessary for a relation with one or more nonsimple domains. For this reason (and others to be cited below) the possibility of eliminating nonsimple domains appears worth investigating. [see note 4] There is, in fact, a very simple elimination procedure, which we shall call normalization."

From the above, and from the text that follows in the paper, we can reasonably infer several things:

  1. There are such things relations with nonsimple domains.
  2. Codd is not ruling them out of the RDM at this time, but is raising the question as to whether they should be ruled out as a matter of practice, and perhaps even as a matter of theory.
  3. The elimination process referenced above and outlined later in the paper proves that this elimination doe not reduce the expressive power of the reulting normalized collection of relations.
  4. Codd is DEFINING "normalization" in this context. (emphasis mine).

As far as Alfredo's recurring refrain that "Codd's original definition has been shown to be incorrect." or words to that effect, this is just a continuing idee fixe on Alfredo's part. No amount of argument or example will ever convince Alfredo that definitions are not "correct" or "incorrect" but only "fruitful" or "unfruitful".

It seems clear to me, from the rest of the paper that Codd opened the door (intentionally) on the possibility of an implementation of a DBMS that followed the RDM, but that disallowed complex domains. Disregarding their other merits or demerits, it seems clear to me that early versions of Oracle and DB2 met this criterion. Received on Thu Feb 10 2005 - 21:39:51 CET

Original text of this message