Re: Nulls, integrity, the closed world assumption and events

From: David <davidbl_at_iinet.net.au>
Date: 9 Jan 2007 16:53:36 -0800
Message-ID: <1168390415.964551.175490_at_p59g2000hsd.googlegroups.com>


JOG wrote:
> Bob Badour wrote:
> > JOG wrote:
> > > Bob Badour wrote:
> > >
> > >>Marshall wrote:
> > >>
> > >>>On Jan 8, 4:44 am, "David" <davi..._at_iinet.net.au> wrote:
> > >>>
> > >>>>My point is that the following six conditions can't all be satisfied at
> > >>>>once
> > >>>> C1. use person(P,M,F) relation
> > >>>> C2. don't allow nulls in M,F
> > >>>> C3. enforce referential integrity on M,F
> > >>>> C4. only allow finite number of persons in the domain
> > >>>> C5. there are no cycles in the family tree
> > >>>> C6. there is at least one person
> > >>>>
> > >>>>Obviously we must have C4, C5 and allow C6. I suggest that C2,C3 are
> > >>>>important and therefore C1 should be dropped. ie the person(P,M,F)
> > >>>>relation itself is "bad". Do you agree?
> > >>>
> > >>>This analysis looks right to me.
> > >>
> > >>Huh? Your solution basically achieves all of the above with the
> > >>inconsequential difference that you used a different name for the
> > >>relation in C1.
> > >>
> > >>Nowhere above does it mention the very consequential difference in
> > >>referential integrity constraints, which is in fact the straw in the man.
> > >
> > > Hi Bob, if you were referring to my post then your last statement isn't
> > > true. I emphasized the change in referential integrity constraints as
> > > being important:
> >
> > You emphasized it and then David ignored it in his reply. If you look
> > carefully, I think you will agree what you wrote appears "nowhere above"
> > where I wrote "nowhere above".
> >
> >
> > > JOG wrote
> > >
> > >>where P is the candidate key of _parentage_, but where P, M and F have
> > >>enforced referential integrity (with a check constraint on sex) back to
> > >>the _person_ relation
> > >
> > > Either I've missed your point or you had a heavy new years celebration
> > > this year!
> >
> > You missed the point that David constructed a straw man by ignoring your
> > point entirely.
>
> Gotcha. All is clear. Happy new year.

You understand what Bob is saying!

My discussion about C1-C6 was in reply to Cimode and had nothing to do with your post.

I agree with everything in your post(s). In fact I thought it basically reiterated my original post that suggested we should choose relations that avoid nulls. Your parentage relation and my mother and father relations were similar. I admit I failed to state explicitly the important fact that referential integrity was back to the second person relation that I defined after *removing* the (foreign key) parent attributes - I assumed that was obvious. After all, what else could I possibly have intended when I claimed that nulls were bad, referential integrity was important, and therefore dropped person(P,M,F) in favour of the following predicates

    person(P) :- P is a person
    mother(M,C) :- M is the mother of child C
    father(F,C) :- F is the father of child C

Bob is confused when he says I ignored your point or constructed a straw man. This is my theory of what actually happened...

Bob has a practice of using an email filter so his reading of a thread is very fragmented. Evidently he was unaware of my exchange with Cimode and when Marshall agreed with my statements about C1-C6, Bob assumed this indicated I disagreed with you!!! I find it pathetic, ridiculous and ultimately amusing that he tries to engage in a thread for which he has no understanding of the structure. Received on Wed Jan 10 2007 - 01:53:36 CET

Original text of this message