Re: A question for Mr. Celko

From: Marshall Spight <mspight_at_dnai.com>
Date: Sun, 18 Jul 2004 04:49:21 GMT
Message-ID: <ljnKc.119131$XM6.105560_at_attbi_s53>


"--CELKO--" <jcelko212_at_earthlink.net> wrote in message news:18c7b3c2.0407171730.6f10388f_at_posting.google.com...
> >> 1NF doesn't seem to do anything but get in the way of things like
> relation-valued or list-valued attributes. <<
>
> EXACTLY!
I can't tell if the "EXACTLY!" is strong agreement or strong disagreement with my position against 1NF.

> This means that I can use characteristic functions on
> columns, and therefore on rows, and therefore on table. No recursion,
> no self-references, no indeterminable sets, etc. Get a slightly
> advanced book on sets and look all the weird sets that are defined so
> that you are not sure what the elements are.

RVAs and LVAs are hugely useful even in the absence of types that are self-referentially defined. If it's necessary to explicitly ban recursion (not hard) then that still leaves a huge amount of value.

If 1NF was really useful, we wouldn't need or have varchar. Why do we allow lists of strings but not lists of anything else? Why would we allow list-of-characters but not set-of-characters? If the reason is "it's too hard to implement" that would be one thing, but some interpretations of 1NF assert that there is a logical reason to do so, which is bogus.

I'm with Date on this one.

Marshall Received on Sun Jul 18 2004 - 06:49:21 CEST

Original text of this message