Re: Views for denomalizing

From: Dawn M. Wolthuis <dwolt_at_tincat-group.comREMOVE>
Date: Thu, 10 Feb 2005 07:19:09 -0600
Message-ID: <cufn0o$fk1$1_at_news.netins.net>


"Alfredo Novoa" <alfredo_novoa_at_hotmail.com> wrote in message news:25870418.0502100158.3ac7ea65_at_posting.google.com...
> "Dawn M. Wolthuis" <dwolt_at_tincat-group.comREMOVE> wrote in message
> news:<cuegd9$tvc$1_at_news.netins.net>...
>
>> I didn't think they were relational either until I read Codd's 1970 paper
>> and saw that his use of the term really was tied directly to an actual
>> mathematical definition of relation.
>
> And they are not relational.

What enhancements do you like to add into the mathematical definition? The exact same embellishments that Date does, or do you have your own?

>> > But when a term is not well defined it is a good thing to define it
>> > properly.
>>
>> I agree, which is why I try to keep us on track with the mathematical
>> definition of relation, which is very well defined and quite agreed upon
>> within the mathematical community as best I can tell.
>
> But 1NF has nothing to do with that.

You are correct that 1NF is a term that arose in the discipline of data modeling and not mathematics. I'm not sure what your point is. Most definitions of 1NF do include the term "relation" so I don't see why you would say that the term "1NF" has nothing to do with "relation" or am I misunderstanding your point?

>> > We always can explain what 1NF really means to the confused
>> > audience.
>>
>> I didn't understand that statement, so you I guess I'm one of the
>> "confused", eh?
>
> No, I guess that my english is very bad O:)

Your English is typically great, so nevermind ;-)

>> > Ok, but I suppose that those tools are very far from being relational,
>> > so they are irrelevant to the discussion of 1NF.
>>
>> No, again, modeling is done with mathematical functions, a subset of all
>> relations, but the same subset that many relational theorists zero in on
>> for
>> best practices or even in their def of relation sometimes (IIRC)
>
> You are terribly confused.

I was describing the modeling done when using "those tools" from your previous statement. Because I'm more confident in my expertise in the first part of the statement, I'm guessing you think the statement after the "but" is incorrect. I will use the terms "mathematical relation" and "mathematical function" in the next sentence when I am using precise, agreed upon among mathematicians, definitions and see if I can clarify:

Many, or even most, relational theorists either suggest or require relations with a designated candidate key. Mathematical relations that have a candidate key are called mathematical functions. They map values in the candidate key (whether single attribute or compound) to values in the remainder of the tuple. If we name such a function "Person", for example, then we could write one a single element in this relation as

Person("12345") = ("John", "Doe", "728-33-9283")

Using mathematical functions to model data is using mathematical relations to model data (but one could model data with mathematical relations that are not mathematical functions).

> With such products the modeling is not done with mathematical
> functions in any way, and a relational DBMS is not anything that uses
> functions.
>
> The Relational Model has a concrete formulation you can find in Date's
> books for instance.
>
>>They lack other features and add in other
>> features not present in most RDBMS's, but those are not part of the
>> definition of "relational" in its original and mathematically correct
>> form.
>
> They lack and violate many prescriptions of the Relational Model.
>
>> > > If you know a bit about relational theory you always opt to buy into
>> > it.
>>
>> Oh really? I know a bit about relational theory.
>
> What you wrote above shows the contrary.

Ah, but I also know a little mathematics ;-) AND I like precise definitions, preferably ones that can be largely agreed upon. When Date or others want to have new terms, I would sure prefer, and the industry would be better served, if they would not take existing terms and redefine them unless the previous understanding of the term is not still in use by others (especially when used broadly).

I'm trying to discuss a (seemingly) relatively simple topic of modeling data with elements in a mathematical relation whose domain is a set of tuples. This is worth discussing because most data modeling professionals, particularly those who have been through higher ed in the past couple of decades or grew up on SQL, believe they ought not model data this way. However, with data for XML documents, OO applications, and many "old" products it can be a very helpful way to model data. Informally this is easily understood as embedded lists, multivalues, or other similar terms. Formally, however, there are many embellished definitions of "relation" and now a significant difference also in defnitions of 1NF that make it difficult to even discuss the topic. I find that very frustrating! Do you understand that?

cheers! --dawn

>> Or perhaps they know about it, but the wealth of experience from
>> employees
>> and customers of IBM might have lead them to some other conclusions.
>
> Impossible, because IBM never tried the Relational Model with the
> exception of Darwen's BS12.
>
>
> Regards
Received on Thu Feb 10 2005 - 14:19:09 CET

Original text of this message