Re: object algebra

From: Eric Kaun <ekaun_at_yahoo.com>
Date: Tue, 24 Feb 2004 21:49:04 GMT
Message-ID: <kFP_b.17511$Pr4.17431_at_newssvr31.news.prodigy.com>


"Neo" <neo55592_at_hotmail.com> wrote in message news:4b45d3ad.0402241230.1365e6a5_at_posting.google.com... [...]
> A relation (table) by definition is "rectangularish". Per Date, a
> relation consists of 1) a heading of a fixed set of attributes 2) a
> body consisting of tuples (rows), each containing of values related to
> the heading.
>
> You don't see anything "rectangularish" in the above ???

No - and seeing has nothing to do with it. The visual representation, for display on screen and paper, is "rectangularish." But it's certainly no more "rectangularish" than the XDb example - that can easily be represented as relations, and hence as "rectangles."

I guess I don't object to the characterization - just to the implication that "rectangles" are inferior to... something else.

> Because the fundamental building block in RDM is "rectangularish",
> dealing with missing data, trees, and complex structure is more
> difficult and sometimes impractical, although not impossible, since
> you have to use more smaller blocks to get the desired shape or
> eliminate NULLs.

I don't agree with its impracticality. When missing values are involved you find yourself saying things you never intended, and not saying things you need to say. The meaning of your relations is undermined.

> It is not that you cant represent 4-th dimensional, trees and complex
> data structures using the "rectangularish" building block provided by
> RDM, it's just more difficult and sometimes impractical.

I disagree that it's more difficult. Trees are easy. What other "complex data structures" does XDb handle better?

> Reality doesn't always provide data that fits "rectangularish"
> relations.
> And when it doesn't, RDM needs NULLs, as Codd has correctly
> recognized.

Codd believed that incorrectly, as Date implies. You can find many writings on the web concerning the danger of missing values. Look on dbdebunk.com for starters.

> Because the basic representational block in RDM is "rectangularish",
> to represent 10 persons each with different properties without NULLs,
> one has to resort to additional tables. The need to "subtype
> attributes" in this case is artifical and brought on by NULLs, which
> RDM creates, not reality.

Reality is what it is; we're trying to model and reason about it. That says precisely nothing about the "need" to somehow correlate the "shape" of our data with the "shape" of reality. My fingers are cringing just typing this, it's so silly. We shape things according to our need to reason about them. Whatever the "shapes" of data in XDb, I have yet to see a coherent explanation, or to understand how its "shape" makes it easier to reason about.

Nulls are not created, for example, if you have domains with special values (e.g. UNKNOWN). Its semantics are then clear, and this avoids many issues with nulls. With proper domain support, this is trivial.

  • erk
Received on Tue Feb 24 2004 - 22:49:04 CET

Original text of this message