Re: One-To-One Relationships

From: David Cressey <>
Date: Sun, 02 Dec 2007 18:46:38 GMT
Message-ID: <i4D4j.2799$Uy.1137_at_trndny07>

"JOG" <> wrote in message
> On Dec 1, 11:08 am, "David Cressey" <> wrote:
> > "paul c" <> wrote in message
> >
> > news:et24j.80277$cD.13174_at_pd7urf2no...
> >
> > > JOG wrote:
> > > ...
> > > > Why don't you first define the term entity, as opposed to just
> > > > assuming their existence as axiomatic. I look forward to there being
> > > > absolutely no room for debate or disagreement! Look, you get a lot
> > > > respect on this forum, particularly off myself, but this does not
> > > > excuse arrogance, so now we are all ears.
> > > > ...
> >
> > > PMFJI but this is just too much fun not to have a go: Something that
> > > exists?
> >
> > Anything that has been reified, and whose instances display haeccity.
> >
> > Sorry, I couldn't resist.


> And not a mention of quiddity. tut!

> Although I have no doubt over-reacted to Jan's dig at the discussion
> (ah, the cold light of day), let me give an example as to why I find
> the breakdown into entities and relationships deleterious. Say I have
> two entity types staff_members and subjects, and a relationship
> teaches:

> staff_member -- teaches --> subject

> This is all good and fine until a requirement changes that we need to
> record the day the lecture is given on. To denote the is new
> information, well I now longer haver a binary relationship, but a
> ternary one, and that requires a rewrite of the E/R representation
> (given that it is a graph). I need a new lecture associative entity
> with 'day' as an attribute.
It struck me that my previous reply might not be responsive to the question you actually raised. I'm a little hazy as to what that qestion actually is.

Some dialects of ER hold that replationships can't have attributes, so the minute you are going to hang an attribute on a relationship, you have to "reify" the relationship. That's not the dialect of ER I use. Some dialects of ER hold that all relationships must be binary. That's not the dialect I use, either. If I really, really want to diagram a ternary relationship, I can use a diamond for the relationship, while using rectangles for the entities. That's my favored dialect of ER.

I'll admit that, even in my favored dialect, changing a relationship from binary to ternary involves adding a diamond, and changing one line to three lines. But that's more a feature of the diagramming language than it is of the model itself. And, as far as drawing diagrams goes, I prefer to let software do that for me.

> staff_member -- holds --> lecture <--- involves -- subject


> There is no need for such brittleness in the face of what is a
> relatively trivial schema change.

I've said this before, and I'll say it again: ER is an analysis tool, not a design tool.
A "schema" is a feature of the design, not a feature of the problem statement. Received on Sun Dec 02 2007 - 19:46:38 CET

Original text of this message