Re: Demo: Modelling Cost of Travel Paths Between Towns

From: Neo <neo55592_at_hotmail.com>
Date: 16 Nov 2004 22:57:04 -0800
Message-ID: <4b45d3ad.0411162257.3db731b0_at_posting.google.com>


Summarization
Neo: a thing is redundant if modifying it [can] corrupts data.

Hugo: In the example below, the two John's are not redundant because changing

      1st John to Paul (since Mary now likes Paul) doesn't corrupt data.

     Mary likes John   --->   Mary likes Paul
     Paula likes John

Neo: In the above example, a relation involving John was modified, not John itself. To corrupt data, assume after entering data, it was realized John is really spelled Johnn. Modifying the 1st John to Johnn corrupts. The problem would not occur if John had been normalized as follows:

    John                  ---->    Johnn
    Mary likes ->John              Mary likes ->Johnn 
    Paula likes ->John             Paula likes ->Johnn

The reason data does not corrupt after normalization is because there is only one John to change. The two sentences will always get the correct name since they refer to the one and only original.

Hugo: ANY time a change is not entered correctly, the data will become corrupt.

Neo: And you can't guarantee that when you have redundant data because your refs are data-dependent. You can only guarantee that, if a thing is represented once and there after is referred to by data-independent refs. Data-dependent refs always leave open the possibility of failure/inflexibility under some cases. If one uses data-dependent ref like the string 'John' what happens, if there are two Johns. What happens if there are two John Smiths. What happens if there are two John Smiths with same SS# (gov messed up) and on and on forever. You can't guarantee protection from corruption/inflexibility if data is redundant, which is synonomous with data-dependent refs. Normalization results in a thing being represented only once and the refs becoming data-independent. Data-independent ref are the key to guaranteeing freedom from corruption and affording flexibility. Your example lacks data-independent refs because data is redundant.

> > In your example, you stored john (a fact) twice.
>
> You call 'john' a fact?????

Yes, 'john' is a fact. In fact, a, b, c ... are facts. You may want to read OT "A Normalization Question". Feel free to provide arguments to the contrary. Received on Wed Nov 17 2004 - 07:57:04 CET

Original text of this message