Re: Objects and Relations

From: Roy Hann <specially_at_processed.almost.meat>
Date: Wed, 14 Feb 2007 22:43:13 -0000
Message-ID: <>

"Cimode" <> wrote in message On 14 fév, 21:39, "Roy Hann" <specia..._at_processed.almost.meat> wrote:
>>"Cimode" <> wrote in message
> >On 14 fév, 17:41, "Roy Hann" <specia..._at_processed.almost.meat> wrote:

>> I am inclined to regard the data as the testimony of the users about the
> >real world.
> I understand your point. If you don't mind, I propose to replace
> *testimony* by *description* a term that more domain neutral and that
> seems safer candidate for generalization of reasonning.

I am afraid I still prefer the concept of testimony. We are used to the idea of people giving testimony; we know it is a description of *their* perception, not a description of reality. Testimony can be recorded faithfully without conceding that it is accurate. Since a database system cannot warrant accuracy (only, at most, consistency) we should remind ourselves that what we find in a database is only provisionally true.

>> The keys that exist about which the users can say things are
>> ultimately synthetic as you say, but they are pre-existing in the real
>> world.
> I am curious about that last sentence. Would you mind telling me
> which *pre existing keys* are you thinking of ? And most of all what
>constitutes the criteria which makes it pre existing ?

As I went on to say in the next paragraph, a pre-existing key is a key whose value is known before the application software invents one. It already exists with respect to some enterprise of interest. Examples would be your name or mine. Those are synthetic because our parents invented them, but to our employers they are pre-existing. My credit card number is synthetic because the credit card company invented it, but to Amazon it is pre-existing. I took this to be precisely what you meant when you said all keys are surrogates.

>>The surrogates that we generate in the software during the process
>> of recording the testimony are surrogates that spring into existence
>> *after*
>> the user assesses the real world and forms his testimony. Therefore they
>> cannot have anything to do with the real world. They *are* different, if
>> no
>> more synthetic, and they are not strictly necessary--merely convenient.
> I understand. Thank you for this description.

>>> In my perspective,
>>> a natural key is nothing but a socially accepted surrogate key.

>> I agree, but a basic reason it is capable of being socially accepted is
>> that
>> it is pre-existing in the real world of interest.
> Mmm...I am not convinced that the acceptance necessarily implies
> preexistence of some natural key. For instance, practicality of use
> and/or familiarity are sufficient self sustaining causes for
> explaining acceptance.

I'm not sure I was making a useful point so let's park that discussion.

> > Such process may explain the
> > individual unease feeling when associating a thing with the
> > designation that is assigned to it.

>> My unease is twofold: to generate surrogates that don't have unintended
>> and
>> unacceptable implementation consequences requires a lot of quite clever
>> machinery the expense of which cannot always be justified, and second,
>> "surrogates" are often introduced in the absence of a reliable natural
>> key
>> rather than as a surrogate for a naturual (socially accepted) key,
>> masking
>> possible contradictions and errors behind spurious uniqueness.
> I undesrtand the nature of your dilemna but I believe such dilemna
> comes from the fact that your reasonning assumes the preceding
> existence of some natural key.

Yes, but let me be clear: I agree there are no fundamentally natural keys. There are at most keys whose nature and value is decided outside our enterprise of interest but used within it, and these I call "natural". I do fully understand that they must be synthetic/surrogate in some other enterprise of interest.

> I do believe on the contrary that such
> precedence can not be established for a simple reason: there is no
> such thing as a natural key in nature (none that I have found in a
> fundamental perspective).

Given my explanation of what I understand by the term "natural key" above, would you be willing to consider that precedence can indeed be established?

Roy Received on Wed Feb 14 2007 - 23:43:13 CET

Original text of this message