Re: Proposal: 6NF
Date: Sat, 7 Oct 2006 12:45:57 +0300
Message-ID: <Pine.SOL.4.62.0610061114300.10457_at_kruuna.helsinki.fi>
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?
> 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".
-- Sampo Syreeni, aka decoy - mailto:decoy_at_iki.fi, tel:+358-50-5756111 student/math+cs/helsinki university, http://www.iki.fi/~decoy/front openpgp: 050985C2/025E D175 ABE5 027C 9494 EEB0 E090 8BA9 0509 85C2Received on Sat Oct 07 2006 - 11:45:57 CEST