Re: Nearest Common Ancestor Report (XDb1's $1000 Challenge)

From: Neo <neo55592_at_hotmail.com>
Date: 19 May 2004 21:56:15 -0700
Message-ID: <4b45d3ad.0405192056.6dfe48fc_at_posting.google.com>


> > But the implemenation is generating [report] from unnormalized data
> 
> Here are Date's formal definitions for the five
> (actually six, BCNF never got it's own number) normal forms, copied and
> pasted from http://www.databasedesign-resource.com/normal-forms.html

Ok, so Date has defined 5 or 6 normal forms. And normal forms are the result of normalization. In his book, Date says normalization is "the sucessive reduction of a given collection of relations to some more desireable form". The problem with such definitions and normal forms is that they are RM specific. XDb1 does not have relation-like structures and the normal forms don't apply. At the begining of the same chapter, Date gives a more general meaning of normalization which relates to removing redundancy. In XDb1, nomalization is the process of replacing duplicate things with a reference to the original thing. In the most general sense, normalization is the elmination of redundancy. The data in your tables, like the one replicated below, have redundancy, they are not normalized.

    Table hierarchies
thing otherThing hierarchy
--------- ---------- ---------
'army' 'god' 'leader'
'trinity' 'god' 'leader'
'john' 'army' 'leader'
'mary' 'army' 'leader'
'mary' 'trinity' 'leader'
'luke' 'trinity' 'leader'
'laptop1' 'john' 'leader'
'laptop1' 'mary' 'leader'
'fido' 'john' 'leader'
'fido' 'mary' 'leader'
'fido' 'luke' 'leader'

Also consider what will happen if the first person's name is 'john' and the dog's name is also 'john'. Received on Thu May 20 2004 - 06:56:15 CEST

Original text of this message