Re: Does Codd's view of a relational database differ from that ofDate&Darwin?[M.Gittens]

From: Jan Hidders <>
Date: Fri, 01 Jul 2005 20:43:20 GMT
Message-ID: <IVhxe.135039$>

Jon Heggland wrote:
> In article <dSCwe.133254$>,
> says...

>>Who needs rows? We only have objects (or identities) and binary 
>>relationship between objects and values (attributes, like between a user 
>>and an e-mail address) and between objects and objects (relationships, 
>>like between a person and person-details). [...] 

> So a person has some "identity" that is independent of the values of
> his/her properties/details. It is the same idea as row ids, even if no
> "rows" as such are involved.

Yes, correct.

>>>>Yes, that is at the core of my suggestion: a decent theoretical
>>>>foundation for opaque keys, abstract identifiers, or whatever you want
>>>>to call them.

> A surrogate key (that you don't show anyone) fulfills the same purpose.

In some sense, but it would be a bit like saying that references fulfill the purpose of pointers you don't do pointer-arithmetic with. That's true, but it misses the essence. Opaque keys would come with a formalization that better captures what they mean and how they should be treated. It's the difference between informally stating that certain fields are surrogate keys and waving your hands a bit, and coming up with a precise formal theory of what that exactly means.

> [...] Perhaps I am skeptical to
> your proposals because from my point of view, identity separate from
> value makes thing more complicated, not simpler. And/or because looking
> at everything as objects/entities and relationships is a too restrictive
> worldview for me. I guess I would be happier if this was presented as a
> layer on top of the RM instead of as a replacement.

Well, if that makes you happier then by all means let us present it as such. :-) So where do you get the feeling hat this worldview would be somehow restrictive? What do you think that becomes more difficult to model?

> Anyway, there is one thing that is bugging me when I read articles about
> object data models like Calvanese/Lenzerini and Van den Bussche /
> Paredaens. If objects are just identity points, and the properties of
> objects are other objects, where do actual data values enter into the
> picture?

Data values are special objects that have one or more representations associated with them by which they are identified. Like LOTs and NOLOTs in NIAM.

  • Jan Hidders
Received on Fri Jul 01 2005 - 22:43:20 CEST

Original text of this message