Re: So let me get this right: (Was: NFNF vs 1NF ...)
Date: Mon, 14 Feb 2005 13:17:01 GMT
Message-ID: <hx1Qd.371$9J5.172_at_newsread2.news.atl.earthlink.net>
"Jan Hidders" <jan.hidders_at_REMOVETHIS.pandora.be> wrote in message
news:9GJPd.10844$rU2.621604_at_phobos.telenet-ops.be...
> No. No problem there. Codd was a good mathematician and the mathematics
> in the paper is trivial anyway. Which is not meant as criticism, in some
> sense this simplicity is actually one of the points of the paper. But
> when reading it one might get the impression that the proposed method
> allows you to flatten any nested relation without any problems.
Thanks.
I would have preferred the word "routine" to "trivial" in the above. Both
engineers and mathematicians use the word "trivial" in a specialized sense.
Unfortunately, each of them is unaware of the difference between the two
meanings.
Perhaps you can shed some light on this.
As I read the 1970 paper, Codd is NOT introducing the relational model of
data. He's specifically referencing some prior work on inference engines (I
forget the exact term). What is introduced in the 1970 paper is the
proposal that the RDM be used as the basis for organizing (at some level of
abstraction) a large scale shared database. That is, to use the power of
the RDM specifically for formulating queries in a way that would be better
than what existed at that time.
Let me explain my interest in the 1970 paper. What follows is an analogy:
one way to recover a database that has become FUBAR is to restore the
database to some prior well known state, and then use the logged
transactions to roll forward until the trouble is noticed. The actual
technique is less naive and more detailed, but this shold suffice for
purposes of analogy.
I also have a second reason for citing the use of the RDM in a context other
than a DBMS. It seems to be that many of the discussions in this forum
hinge on the desireability of using relational operators to transform data
into a more relevant or more useful form, and not merely as a way of making
queries on shared data. In particular, the recent discussion on "tight
integration" between the application language and the DBMS seems to suggest
to me that the RDM might be desirable in a programming language, even if
there were no DBMS for it to exploit.
I'm interested in following the development of the RDM and the RDM based
DBMSes until it reaches the point where I think some other alternative would
have been worthy of more exploration.