Re: A Logical Model for Lists as Relations
Date: Thu, 11 May 2006 15:02:48 GMT
Message-ID: <smI8g.6309$A26.161708_at_ursa-nb00s0.nbnet.nb.ca>
JOG wrote:
> Bob Badour wrote: >
>>JOG wrote:
>>
>>
>>>Bob Badour wrote:
>>>
>>>
>>>>Jay Dee wrote:
>>>>
>>>>
>>>>>Bob Badour wrote:
>>>>>
>>>>>>Since it is relatively easy to write a query that extends a relation
>>>>>>with a rank per any explicit order, I am not even sure the ordinal
>>>>>>attribute is required.
>>>>>
>>>>>True. I wasn't exactly sure what MS wanted to happen, for example,
>>>>>to the fourth element in a list when the second element is elided.
>>>>>Does it become the third? If so, your proposal is a good
>>>>>solution. But...
>>>>>
>>>>>What if he envisions a list in which duplication of elements is
>>>>>significant?
>>>>
>>>>If one has a numeric index that differs for each tuple, one never has
>>>>duplication. If one has duplication, one wonders how to refer to the
>>>>duplicates. As Codd observed long ago, once one has said a thing is
>>>>true, what does saying it again achieve?
>>>
>>>
>>>Wise words from the Codd. However, I think people confuse (and by
>>>people I essentially mean myself) trying to encode statements such as:
>>>
>>>There is a person called Ernie who likes beer.
>>>There is another person called Ernie who also likes beer.
>>>
>>>Ex likes(x, Ernie, beer) &&
>>>Ey likes(y, Ernie, beer) &&
>>>x != y
>>>
>>>The two Ernies are obviously different people but I don't have enough
>>>information to harness liebniz equality and so distinguish them, I just
>>>have the fluff of 'another' saying that those distinctions do exist. So
>>>I obviously use a surrogate to represent the missing information.
>>>Something seems sliiightly artificial about this though - I just can't
>>>put my finger on what at the moment. (perhaps in terms of logic I
>>>should just be encoding "There are 2 people called Ernie who like
>>>Beer"?).
>>
>>If there are two Ernies in real life, there is some way to distinguish them.
> > Yup, but what if we're just lumped with the statements supplied and > don't have access to those distinctions, even though we know they > exist? Surrogates right?
If that is the case, how do you even know you have two Ernies?
>>The problem you describe is not a flaw of the logical data model
>>but an incomplete analysis and design.
> > Now, is it therefore correct to say that RM assumes complete > information?
No logical data model has anything to say about information lying beyond the universe of discourse.
I personally fell this outlook is generally for the good -
> but others' beefs with the model seems to centre around the fact that > this may not be a realistic assumption in some real_world(tm) > situations.
As I already spelled out, the flaw is not with the logical data model. All you have done is identify a (rather artificial) situation calling for a schema change. The situation would call for a schema change no matter what logical data model you used.
>>The same problems arose when recording information with pen and paper
>>before computers were ever built.
> > A good point. > > And I'd warrant there are posters on cdt who can recall those very > days...
What? The days of pen and paper? Like today? Received on Thu May 11 2006 - 17:02:48 CEST