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

From: Alexandr Savinov <savinov_at_host.com>
Date: Mon, 04 Jul 2005 11:06:15 +0200
Message-ID: <42c8fc19$1_at_news.fhg.de>


Marshall Spight schrieb:
> Alexandr Savinov wrote:
>

>>Yes, there should be multiple layers where lower layers implement the
>>mechanism of representation and acces for higher levels. But in the RM
>>there is no such a separation we have to keep absolutely different
>>things (object representation/access vs. their semantics) in one box.

>
>
> RM has the best such separation of any model I've encountered.

I cannot understand where do you see the separation of (i) how objects are represented, and (ii) how they are semantically characterized by other objects in the RM? This separation does not exist at the level of the RM but it can be and should be implemented manually. I mean that we are given some mechanisms like primary keys which we can use for object identification purposes - but we need to do it ourselves. In other words, primary keys and other possible types of columns are still normal columns at one and the same and the only layer of the model.

Compare it with the OO approach. Here these concerns are clearly separated because you do not need to think on how objects are represented. It is the task of the underlying environment. Your task then is reduced to prcisely what you need to do - modeling (data or functionality).

The following concept-oriented pattern is very good in this sense:

If you model data semantics then forget about object representation (identification) and vice versa, if you model representation and access mechansim then forget about semantics.

These two concerns must be clearly separated in any good model. In the concept-oriented model we have the physical structure which defines how elements are represented and accessed and the logical structure where we define the elements are characterized by other elements.

> This is one of Codd's original 12 rules. Rule 8 in fact.

Here it is:

Rule 8 : Physical data independence.

"Application programs and terminal activities remain logically unimpaired whenever any changes are made in either storage representations or access methods."

The user should not be aware of where or upon which media data-files are stored

I do not see here how the RM separates two layers: - object representation and access layer, and - object logical characterization layer. In the RM we have only columns which are still normal columns independent of their role as object ids or meaninful properties. That is a minus.

Another problem is that in the rule 8 it is declared the independence from physical layer. However, the solution consists in complete isolation. In the RM we do not have any means to deal with lower layers. Note very subtle difference: I do not say that we need to work with lower layers - I say that we need to be able to ignore them when we do not want to work with them and we need to be able to model them when we want to do it.

-- 
http://conceptoriented.com
Received on Mon Jul 04 2005 - 11:06:15 CEST

Original text of this message