Re: Codd provided appropriate mathematics ... (was Re: Relational and MV (response to "foundations of relational theory"))

From: Dawn M. Wolthuis <dwolt_at_tincat-group.com>
Date: Thu, 26 Feb 2004 14:28:37 -0600
Message-ID: <c1lktq$b6h$1_at_news.netins.net>


"Tom Hester" <$$tom_at_metadata.com> wrote in message news:aff87$403e41e1$45033832$6812_at_msgid.meganewsservers.com...
> Both are non-1NF. Codd defines first normal form in terms of simple
> domains. That is the interpretation of a single element in a domain can
> only be an atomic element of a set. It cannot be further decomposed.

The fact that RDBMS's permit the attr1, attr2, ... approach and that these make for a mathematical relation with simple elements, leads me to suggest that this approach would not be considered multivalued. However, the fact that this is possible means that RDBMS data practitioners spend more time identifying what is different about attributes so they don't have to create new tables for elements (so you get MAJOR1, MAJOR2, MAJOR3 with justification that the second major is really considered a second major and not a third or first sometimes) rather than MAJORS[n] or an array of majors (array, list, ordered or unordered set, collection, map, ...) So, at first glance it is non-1NF, but you know some data modeling person somewhere is justifying why these are really different elements.

Spending time finding patterns of similarity, rather than differences, in data elements can lead to considerable productivity gains -- we would do well to keep ourselves in the reusable pattern business with our data implementations as well as our "code". --dawn

> "Eric Kaun" <ekaun_at_yahoo.com> wrote in message
> news:k6r%b.50112$LX2.42031_at_newssvr33.news.prodigy.com...
> > As an aside in this discussion, I've seen "multivalued" defined 2
> different
> > ways in explanations of relational (some of which are really bad).
> >
> > 1. Where attribute A can hold a list of values (type LIST)
> > 2. Where there are attributes A1, A2, A3, A4 (for example), all of the
> same
> > type and meaning. For example, ADDR1, ADDR2, etc.
> >
> > Does 1NF refer to both of these? If not, what's the proper terminology
for
> > each of these cases?
Received on Thu Feb 26 2004 - 21:28:37 CET

Original text of this message