Re: Proposal: 6NF

From: Bob Badour <bbadour_at_pei.sympatico.ca>
Date: Sat, 07 Oct 2006 12:22:44 GMT
Message-ID: <o_MVg.1602$cz.23912_at_ursa-nb00s0.nbnet.nb.ca>


Sampo Syreeni wrote:

> On 2006-10-05, Hugo Kornelis wrote:
>

>> In that case, you should model it as such - in a relational table, you 
>> add a column "CanLayEggs" with a domain consisting of the values Yes 
>> and No.

>
>
> After that you have a form of redundancy in the table, because only
> knowing CanLayEggs=No allows you to fully determine eggs_laid. From the
> point of view of information content, fields that are fully determined
> are not informative and they shouldn't be included. Or, from another
> point of view, you've essentially made eggs_laid optional, i.e. a
> repeating group which occurs from zero to one times. Even if that
> doesn't formally make the table non-1NF, in spirit you still have
> polymorphic records which is almost as bad.
>
> Also, how do you then enforce the constraint that camels always have
> CanLayEggs=No?

With a well-formed formula. Duh.

>> Don't try to make NULL mean "there may not be a value here" - it 
>> doesn't mean that. The *only* meaning NULL has is "value is missing".

>
> That depends on whom you ask, how many different kinds of nulls you
> think there really are, and whether you're happy with using a "value
> missing" null in a union view where the base relations couldn't have a
> value for a given field.

The idea that a single indicator can handle every case is just plain stupid, which is what ultimately undermines your whole position. Received on Sat Oct 07 2006 - 14:22:44 CEST

Original text of this message