Re: Another view on analysis and ER

From: JOG <jog_at_cs.nott.ac.uk>
Date: Sat, 8 Dec 2007 19:04:05 -0800 (PST)
Message-ID: <1f39097a-8f64-45b9-b1fe-3097687d074a_at_r60g2000hsc.googlegroups.com>


On Dec 9, 1:32 am, Jan Hidders <hidd..._at_gmail.com> wrote:
> On 8 dec, 21:37, JOG <j..._at_cs.nott.ac.uk> wrote:
>
>
>
> > My question is when should one choose to represent (in FOL if one so
> > desires) something as a thing, as in Exists x, or as a predicate, X().
> > So if I have my previous example "John from London married Jane from
> > Manchester in a Church", do I have:
>
> > 1) Married(Husband:John, Wife:Jane, Instituion:Church)
> > 2) EXISTS! x E marriages [ Husband(x, John) ^ Wife(x, Jane) ^
> > Institution(x, Church) ]
>
> > First one is marriage as a predicate, the second one the marriage as a
> > thing, x. Which to choose, and when.
>
> The most simple one that allows you to model your UoD properly. In the
> context of FOL this would usually be 1) except if you also have
> predicates in your UoD in which a marriage plays a role as an entity.
> In the latter case you should probably use 2) but it could also be
> that you have to expand even more and also objectify the relationship
> between marriage and husband. Obviously this can repeat itself in
> theory an arbitrary number of times, and each time you replace a
> relationship with an new entity type and a few new relationships that
> represent the roles. In a very real sense you can compare it to
> zooming in on a fractal. The design principle can then be formulated
> as zooming in as much as is needed to place all the predicates you
> have to model, but no more.
>
> Note that in an ER dialect that allows objectification, such as ORM,
> zooming in one time can often be dealt with by objectification and
> keep the basic structure of the model the same, but the second time it
> will change it.
>
> -- Jan Hidders

Ok, thanks for the feedback. I have certainly advanced my understanding or ERM via these discussions, which I don't often get the opportunity to do.

But now we're finally on the same page, let me offer my final argument as to why (at least in data modelling) relationships and entities are the same things. In my example, where a single proposition could be written as either,

  1. x = Married(Husband:John, Wife:Jane, Instituiton:Church)
  2. EXISTS! x E marriages [ Husband(x, John) ^ Wife(x, Jane) ^ Institution(x, Church) ]

I'm sure you noted I tweaked FOL - the predicate instantiated in (1) is unordered in that it includes attribute names rather than being positional (which I think we'd all accede is in data modelling, where attribute names are a vital part of the information being modelled).

Okay so my proposition in predicate form is a set of (attribute, value) pairs. Now in ontology, it is generally accepted that an object, or entity, is nothing more than a compressence of a collection of properties - i.e. (attribute, value) pairs.

Ergo, in both (1) and (2) the marriage x can be described by exactly the same construct... a set of (attribute, value) pairs! This is the representation that underpins both, and I could infer / either/ conceptual model, (1) or (2) from that underlying representation. If I stick to that denotation I never have to fractally dig down, reobjectify, reify, etc. We have one single representation of the shared data from which someone may infer their own particular perspective of the universe of discourse, objectifying their hearts content to fit their particular application.

Entities and relationships. 2 subjective conceptual views of the same underlying representation - a set of ordered pairs.

Surely QED? ... I await the rebuttals with interest ;-) Received on Sun Dec 09 2007 - 04:04:05 CET

Original text of this message