Re: Clean Object Class Design -- What is it?

From: Steve Wart <swart_at_deadspam.com>
Date: Fri, 20 Jul 2001 16:00:50 GMT
Message-ID: <SAY57.582$GR.12972_at_news1.rdc1.bc.home.com>


"Steve Wart" <swart_at_deadspam.com> wrote in message news:5AP57.16656$h8.249768_at_news1.rdc1.bc.home.com...

[...]

>
> I have some reservations about the relational model because relations do
 not
> support the concept of a relationship;

This is of course incorrect. I think I was a bit tired when I wrote it. At any rate, I think my concern was that the semantics of tuple values (e.g. what is its domain? is it part of a key?) is not expressed outside of the database, but after sleeping on this I think it is an implementation issue.

For example, I don't think the relational model per se requires you to specify the structure of a relation except in a query. However any implementation of a query language would need a metamodel of the database, which could obviously be implemented in the relational model.

So I am now convinced that the relational model is sufficiently expressive to support an object model, given that relation-valued domains are permitted.

However, is it necessary to have all three constructs (relations, tuples and domains) that the relational model provides? For example, the Lisp model provides two (atoms and lists) and the Smalltalk object model gets by with one (objects). If we apply Occam's razor, why choose a model that provides three different primitive constructs when you can demonstrably get by with two or even one?

--
Cheers,
Steve (steve at wart dot ca ICQ 50919689)
Received on Fri Jul 20 2001 - 18:00:50 CEST

Original text of this message