Re: 3vl 2vl and NULL

From: Marshall Spight <marshall.spight_at_gmail.com>
Date: 18 Feb 2006 09:39:04 -0800
Message-ID: <1140284344.049753.181230_at_g47g2000cwa.googlegroups.com>


David Cressey wrote:

>

> The problem, in this case, is that current terminology with regard to 1NF is
> divided, among data modellers, on precisely the point that Dawn wishes to
> discuss: the elimination of repeating groups as a first step in normalizing
> a schema or relations.

Yeah, I hear that. I guess at least part of what I'm responding to is that she completely threw me off when she used the term that way.

> According to the way many of us (I include myself) use the terminology,
> putting a relation into 1NF implies decomposing, when necessary, in order to
> express repeating groups as sets of tuples, in separate relations.

Sure. But there are several ways out of the repeating groups problem

  1. decomposing relations, aka "classical" 1NF
  2. higher-than-1 cardinality attributes: lists or sets
  3. Fully nested relations.

Actually, 2) was something I hadn't really thought of before: add *one* level of nesting. This idea is interesting but less appealing than 3, because it is less regular. I tend to prefer orthogonal designs; they have fewer arbitrary limitations.

The thing that I can't help but feel, though, is that the whole thing is a false dichotomy. If you can really always do the composition/decomposition, then it would appear that the choice between nested structure or not could be expressed simply as a view. How come no one ever talks about that idea?

> There is a large body of other professionals, who use the term 1NF
> differently, and would claim that a schema of relations is already in 1NF,
> even if there are repeating groups. If I'm not greatly mistaken, the quote
> cited from Date's introduction defines 1NF precisely this way.

Yes, that is Date's position as I understand it.  

Marshall Received on Sat Feb 18 2006 - 18:39:04 CET

Original text of this message