Re: Does Codd's view of a relational database differ from that of Date & Darwin? [M.Gittens]
Date: Thu, 09 Jun 2005 11:38:05 +0200
Message-ID: <42a80e10$1_at_news.fhg.de>
mountain man schrieb:
> "Ged Byrne" <ged.byrne_at_gmail.com> wrote in message
> news:1118233809.640856.266410_at_z14g2000cwz.googlegroups.com...
>
>>NULLs in the real world? Where, I don't see any?
>
>
> So you have you ever noticed
> an absence of something?
Interesting question.
The answer is that things exist in multidimensional (and hierarchical) space. This means that they may have a concrete coordinate along one dimension and be absent along another dimension. There is normally a reference which allows us to see things independent of their presence in any dimension (we can define a model without references but it is not very practically useful but interesting theoretically).
Example 1.
HOUSES (id, area)
1, 130
2, 95
CARS (id, power)
3, 120
4, 150
We have actually 4 things (facts, rows, records, objects etc.) in our database but they show themselves in different dimensions with no intersection (such domains are said to be independent or perpendecular in concept-oriented model).
An equivalent canonical or primitive semantics of this database is written as follows
Example 2.
HOUSES_CARS (id, area, power)
1, 130, null 2, 95, null 3, null, 120 4, null 150
Here we explicitly see that things 1 and 2 are absent along dimension power. If we project everything onto this dimension then we will see only two objects 3 and 4. But we still can see things 1 and 2 along dimension area where they exist and by means of their references. (By "we" I meant our database and its aggregation functions, join operation and other functions.)
By the way, if we write unknown instead of null in this example then we will have 4 objects present in all 4 dimensions (but some values will be unknown).
-- alex http://conceptoriented.comReceived on Thu Jun 09 2005 - 11:38:05 CEST