From: Hugo Kornelis <>
Date: Fri, 28 Dec 2007 23:43:23 +0100
Message-ID: <>

On Thu, 27 Dec 2007 15:57:37 -0800 (PST), David BL wrote:

>On Dec 28, 8:31 am, Hugo Kornelis
><> wrote:
>> On Wed, 26 Dec 2007 23:17:52 -0400, Bob Badour wrote:
>> > Codd pointed out that a single NULL marker did not suffice and
>> >suggested 2 markers. Date pointed out that one can apply the same
>> >argument to 2 markers leading to an infinite progression once one heads
>> >down that path, which suggests the path was never a productive one to
>> >head down in the first place.
>> Hi Bob,
>> Unfortunately, both Codd and Date forgot that the NULL marker in (for
>> instance) the age column should represent only that the age is not on
>> file and not try to represent a reason for this as well.
>> Codd's suggestions to use two markers (for "not applicable" and
>> "unknown", IIRC) assumes that we want to store both the age of a person
>> (if on file), and the reason why an age is not on file (if it isn't).
>> That can of course be necessary - but in that case, we have two
>> attributes that should be stored in two seperate columns.
>> Attempting to store both the age and the reason why an age is unknown in
>> a single column violates first normal form.
>> Best, Hugo
>This is Zaniolo's "missing information" definition of NULL which I
>agree doesn't suffer from the problems with associating NULL with a
>reason for the missing information (such as "exists but value
>unknown", "inapplicable" etc).

Hi David,

Ah, thanks for providing me with a name. I've done some googling and found this paper: The parts I understood match exactly what I try to say. The parts I don't understand ... well, I'll just have to assume that they don't contradict the other parts :-)

Best, Hugo Received on Fri Dec 28 2007 - 23:43:23 CET

Original text of this message