Re: Objects and Relations

From: JOG <jog_at_cs.nott.ac.uk>
Date: 6 Feb 2007 02:26:11 -0800
Message-ID: <1170757571.200609.52240_at_j27g2000cwj.googlegroups.com>


On Feb 6, 5:26 am, "David BL" <davi..._at_iinet.net.au> wrote:
> On Feb 6, 12:29 am, "JOG" <j..._at_cs.nott.ac.uk> wrote:
>
> > On Feb 5, 1:25 pm, "David BL" <davi..._at_iinet.net.au> wrote:

Discussion of OID's snipped because it appears we are in fact largely agreeing that all labels are attributes - and consequently that identity should not depend on a pointer or memory address, which is obviously not part of the real world data.

>
> > > I agree that E/R modelling should be "consigned to being an
> > > organizational tool", but again for different reasons. Unlike you I
> > > see no problem with saying entities have identity.
>
> > I have never said that. What I have argued is that they are identified
> > by their attributes and not some imaginary hidden barcode.
>
> I agree with that but don't see how that explains why E/R diagrams can
> be problematic.

This was an argument against OID's not E/R diagrams.

The argument against E/R diagrams is trying to define what an entity / is/. For example, if bob is married to shiela, is married_to a relationship or an entity? And if it is an associative entity, why are all relationships not then just entities? Or to put it a different way (and the way much of modern philosophy views knowledge) should all entities not just be viewed as n-ary relationships themselves? Once you arrive at this premise, by whatever route, whether it be data analysis, reductionism, etc, you are left with something that starts to look incredibly like NIAM/ORM, which in turn has a natural translation to relational modelling.

> The claim that entities are illusionary or abstract
> doesn't appeal to me.

Fair enough. You are incorrect, but that would be a philosophical debate, and largely tangential to the practical issues at hand. However it is worth noting that your standpoint is that of essentialism, which carries little weight in modern epistimology. So, perhaps instead you could clarify what you mean by an 'entity' and define exactly what it is, as a starter to convincing me that it is not in fact an abstract notion. (and please try and avoid using the word 'thing' in any such a definition).

>
> As I see it RM makes no attempt to provide complete models of the
> external entities, and in a way that's what the closed world
> assumption is all about. The idea that an entity is completely
> characterised by the (currently modeled) attributes doesn't ring true
> to me.
> I would rather say that the model only tries to store a subset
> of all possible facts that could be made about the external entities.
>
>
>
> > > An E/R diagram is
> > > similar in principle to a UML class diagram, in the sense that it
> > > implicitly tries to *classify* entities - ie in terms of what
> > > attributes or relations they are allowed to have or form with other
> > > entities. This is where the evil begins.
>
> > > It is interesting that relations are based on "allow anything except
> > > what we prohibit", whereas E/R diagrams are based on "allow nothing
> > > except what we permit". Consider the relation
>
> > > father(F,C) :- F is father of C.
>
> > > As it stands this would allow any two entities in the DB to have a
> > > father-child relationship. We use foreign key constraints to a
> > > person(P) relation to specify that F,C must be human.
>
> > > Contrast this with an E/R diagram: for a given entity type, only the
> > > attributes or relationships depicted on the diagram are permitted.
>
> > I am not a big fan of E/R. I have to teach it and I find it causes far
> > more confusion than good when it comes to learning the principles of
> > how to build an unbiased database.
>
> Agreed.
Received on Tue Feb 06 2007 - 11:26:11 CET

Original text of this message