| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> comp.databases.theory -> Re: more closed-world chatter
Jon Heggland wrote:
> paul c wrote:
>
>>Bob Badour wrote:
>> ...
>>>>Ie., is it a logical mistake to allow the query in the first place?
>>>
>>>No, it is not a logical mistake. Equality evaluates to false for
>>>values of disjoint types. Because 3 is not in your type, the
>>>comparison evaluates to false.
>>
>>Thanks, I feel better now. Still, I'd like to know I could paraphrase
>>that query a little more formally, say using D&D <AND>. But the
>>stipulation "It is required that if <A,T1> is in Hr1 and <A,T2> is in
>>Hr2, then T1 = T2" stymies me, eg., if pricedomain={1,2} and
>>anotherdomain={3}, it seems that <AND> isn't defined.
My reason is that I would like, at least on paper, to separate the aspects of an engine that strictly reflect the formal definition of say, D&D Appendix A, from the aspects that reflect taste or preference.
I can see that one layer, if you will, of an implementation, whether compiler or interpreter, could show a notion of exceptions and many users would find the result not "all that different" from one that produced the equivalent of "false". Probably this just reflects a phobia of mine that I think of as "exception creep". Whereas a slightly different interpreter might let the query ride and pass it as is to an engine.
This is perhaps not very clear, but the best I can do at the moment.
>
>>(I realize I could get the "false" answer suggested if only one side of >>the <AND> used the "Items" attribute
Sorry, I should have said the Price attribute ...
(Aside - it appears to me that you and Bob B are more or less on the "same page" when it comes to the advantage of sub-typing in dealing with my question. I don't mean to sound as if I'm rejecting that, just questioning whether I am forced to either implement it or to embed elementary exceptions in an engine, ie., forced to implement at least one of them. Also, for some reason I can't explain very well, I seem to view types or domains in a very mechanical way meaning that if a user can define a type that user could also re-define a type which might invalidate all of an existing db's "propositions". Logical limits seem quite important to me and I find both your comments helpful.)
p
p Received on Fri May 04 2007 - 09:25:19 CDT
![]() |
![]() |