Re: The wisdom of the object mentors (Was: Searching OO Associations with RDBMS Persistence Models)

From: David Cressey <dcressey_at_verizon.net>
Date: Tue, 30 May 2006 21:08:14 GMT
Message-ID: <2v2fg.8$Eo3.0_at_trndny02>


"Cimode" <cimode_at_hotmail.com> wrote in message news:1149017607.537595.320820_at_i40g2000cwc.googlegroups.com...
> Sorry the subject is "Possible bridges between OO programming
> proponents and relational model" .
>

OK, back to the topic...

So far, I've seen several attempts to project the world of objects onto the world of (persistent) relations. A table row contains the "shadow" of an object, projected onto the world of data.

This sounds like the easy way to go, because the problem of producing a decent DBMS based on the relational model has been extensively studied, and according to some, actually implemented.

But I think it's upside down.

I think you have to solve the problem of defining a meaningful and useful OODBMS without reference to the relational model. You have to have the things you would want in a DBMS, like backups, transactions, concurrency management, etc. You might even be able to acheive a certain measure of physical data independence. Logical data independence is probably too ambitious a goal, without reference to the RM.

Once you have a decent OODBMS, where you can maintain and share persistent "value objects", whatever those are, now you've got a platform to build on. You define a persistent table as a certain class of persistent value objects, and define the methods that work on tables. Hell, you can even throw in indexes, if you're in the mood.

Now you've almost everything you need for an interface between an "object world" and a system of shared and persistent tables that represent data in a form consistent with the RM.

I did say, "almost", didn't I?

The one thing that's missing is a communications bridge between those who understand the information in their own "object world", but do not not how to map that understanding to a system of tables, and those who know how to turn a system of table into information, but don't understand the object world. That's where I'm stumped. I don't think you can formalize this to the point where you can automate it. But I can be proven wrong. Received on Tue May 30 2006 - 23:08:14 CEST

Original text of this message