Re: Proposal: 6NF

From: David Cressey <dcressey_at_verizon.net>
Date: Thu, 19 Oct 2006 11:25:45 GMT
Message-ID: <ZgJZg.6177$IW6.2933_at_trndny01>


"Jan Hidders" <hidders_at_gmail.com> wrote in message news:1161173869.561696.198150_at_e3g2000cwe.googlegroups.com...
>
> David Cressey wrote:
> > "Jan Hidders" <hidders_at_gmail.com> wrote in message
> > news:1161162871.923080.229180_at_i3g2000cwc.googlegroups.com...
> > >
> > > This is very relevant in the context of database theory because this
is
> > > what one would do when presenting a formal model that describes the
> > > context of a database model: you define several sets that are your
> > > domains (Strings, Booleans, Integers, Rationals, Floats) and in
> > > addition you define operations over them (+, *, length, ...). Note
> > > that these function are often cross-domain (e.g. length: String ->
> > > Integer) and cannot be really said to belong to one domain or another.
> > >
> > > Does that make sense to you?
> >
> > Yes, except for one thing. I'm having trouble reconciling the word
"domain"
> > as you used it above, with the usage I'm accustomed to, as in "CREATE
> > DOMAIN" from SQL.
>
> Theoretically there is no reason to make a distinction between type and
> domain and as far as I know it is mainly there for historical reasons.
> I'm not a member of the SQL-is-evil club, but in this case I think it
> is fair to say that it uses two concepts where only one would have
> sufficed.

Fair enough. I'll admit that the use of the word "DOMAIN" in SQL seemed odd to me, where Pascal used the keyword
"type" for the same purppose.

My earliest exposure to the word "domain" was in high school, in the definition of the "domain of a function" as distinct from it's "range".

My next exposure was in the language "Datatrieve" which used the word "DOMAIN" in a rather different way. A datatrieve domain binds to together a domain name, which can be used in Datatrieve code, a record definition, and a source (sink) of records, which can be in a file, a database, or an external system. Datatrieve was my transition between structured programming and relational joins, and a predecessor of DEC Rdb/VMS.

Last but not least, I've been exposed to the phrase "domain of a relation" here in this newsgroup.

There is a common theme to all these usages, but using the same word slops the concepts together in a way that might not be precise enough.

I'm not exactly a member of the SQL-is-good club, but I guess I have to admit that I have been a member of the
SQL-is-good-enough-for-the-project-at-hand club. If there's any place where the defects of SQL should be discussed, it's a forum dedicated to database theory. I don't get offended when SQL's defects, real or imagined, are pointed out.

When I do get offended is when some participants (not you, Jan) claim that people who have used SQL extensively are thereby brain damaged. We've had more than a few Pickies claim such a thing in here, and quite a few relational purists do the same. To me, that's just a howler monkey flinging feces. Received on Thu Oct 19 2006 - 13:25:45 CEST

Original text of this message