Re: General semantics

From: Mr. Scott <do_not_reply_at_noone.com>
Date: Tue, 25 May 2010 17:04:54 -0400
Message-ID: <ZaednYdIPp7qpmHWnZ2dnUVZ_jOdnZ2d_at_giganews.com>


"paul c" <toledobythesea_at_oohay.ac> wrote in message news:YodKn.4587$Z6.2983_at_edtnps82...
> Mr. Scott wrote:
> ...
>> Contrary to the consensus of the D&D evangelists here on c.d.t., OIDs are
>> not always evil. There are instances when their use is clearly
>> indicated. It certainly makes more sense to store the OIDs from an
>> established application in a relation rather than spend thousands of
>> man-hours rewriting the app. Anyone who argues otherwise is a fool and
>> should be ignored.
>>
>>
>>
>
> I believe D&D say an OID is a pointer. If that's what those amount to in
> the magical OO world, then you are arguing that relations should be
> allowed to store pointers. This would contradict the Information
> Principle and I'd say the whole relational idea would start to crumble.

It is my understanding that an OID is a system-generated name that is assigned to an object, and that each OID is assigned to only one object. In the OO world, OIDs are only assigned to instances of reference types. Maybe that's why D&D erroneously call them pointers.

Suppose that you have a relation that records what you have in the cupboard, {item, quantity}.
What is the difference between the following relations (assuming the closed world assumption of course)?

{{item:"can of dog food", qty:3},{item:"can of cat food", qty:0}}

{{item:"can of dog food", qty:3}}

Both indicate that there are three cans of dog food, but does the second indicate that there is no such thing as a can of cat food, or is it synonymous with the first? Assuming that "can of dog food" and "can of cat food" are members of the domain for attribute "item," they appear to be synonymous, but how can that be? Under the closed world assumption, the proposition that is the result of substituting the values "can of cat food" and 0 for the variables in the predicate for the second relation is supposed to be false because the tuple doesn't appear in the relation! And since the propositions for every other possible "qty" are also false, one is forced to conclude that there is no such thing as a can of cat food.

With object identifiers, each can of dog or cat food would have unique name, like so:

{{id:23,item:"can of dog food"}{id:25,item:"can of dog food"}{id:34,item:"can of dog food"}}

One can then determine the quantity by counting tuples. The question of whether or not there is such a thing as cat food is answered by "can of cat food" being in the domain for attribute "item."

>
> Maybe you mean something else. Eg., I don't think D&D object to a system
> that saves us effort by generating values so that we don't have to make
> them up, but those would be generated values, not pointers. I certainly
> would like that feature when trying to record a third-greatfather about
> whom I might know only a non-unique surname.
>
>
> It would be more accurate to distinguish the tag 'D&D' from the 'D or D'
> writings. When it comes to their perhaps most referenced joint writing,
> ie., TTM, the smaller part is about relational implementation, not theory
> per se, then there are optional parts about 'OO' concepts. The smaller
> part would be even smaller were it not for all the warnings about what not
> to implement.
Received on Tue May 25 2010 - 23:04:54 CEST

Original text of this message