Demo: Normalizing Every Thing

From: Neo <neo55592_at_hotmail.com>
Date: 8 Nov 2004 14:12:02 -0800
Message-ID: <4b45d3ad.0411081412.f3cb8_at_posting.google.com>



XDb2 is an experimental db based on the Thing Model(TM). It represents a "real" thing with a thing within the db. When a db is first created, each symbols (a, b, c...) is represented by creating a thing. When a string or words is represented, it does not replicate any symbols, but instead refers to the symbols created earlier. Thus the symbol b is referenced by the strings "bill" and "bob". When a 2nd person with the same name is created, his name references the same string created earlier. Assuming person1 and person2 are both named bob, their names refer to the one and only string "bob" (which refers two times to the one and only symbol b).

www.xdb2.com/Basic/Name.asp shows a person whose name refers to the string bob which refers the symbol b. No matter how many words spelled with b are represented, they all refer to the one and only symbol b
(ID 1749).

www.xdb2.com/Example/ThingsNamedBrown.asp represents a person named brown who lives on brown street, drives a brown car, has brown hair, wears a brown suit, and has one brown and one blue eye. Even though there are many things named brown, there is only one string 'brown'
(ID 2842).

www.xdb2.com/Example/BoxProperties.asp represents a box whose thickness is 1 cm, weight is 1 kg and cost is 1 $. Notice that each property references the same quantity 1 (ID 3AF1). Also note that the quantity 1 is named by the symbol 1 (ID 1E38). In the third image, parentheses in each node's label indicate the number of references to original symbol or string.

Some people have conjectured that XDb2 purports to normalized bits 0/1 at the hardware level. Other have conjectured XDb2 purports to normalize things in the scripts used to create a db. XDb2 does not purport either. XDb2 only purports to normalize things within the db at the logical level. See OTs by Bob Badour explaining the distinction between logical/physical layers of a db.

Some people have conjectured that XDb2 requires NULLs like RM dbs do. XDb2 doesn't because its data model doesn't require new things to fit/conform to any pre-determined shape or structure (ie a table).

For a more in depth discussion, see OT titled "A Normalization Question" in comp.database.theory Received on Mon Nov 08 2004 - 23:12:02 CET

Original text of this message