[Fwd: Re: Conditionals :revisited]

-------- Original Message --------
Subject: Re: Conditionals :revisited
Date: Wed, 27 Aug 2003 07:54:34 -0400
From: Bijan Parsia <bparsia@isr.umd.edu>
To: Sheila McIlraith <sam@ksl.stanford.edu>
CC: daml-process@bbn.com, terry <terry@acm.org>



On Wednesday, August 27, 2003, at 04:18 AM, Sheila McIlraith wrote:

[snip]
>> In ExpressCongoBuy we have two output properties:
>> 1.congoOrderShippedOutput - condition :BookInStock
>> 2. congoOutOfStockOutput - condition :BookOutStock
>>
>> It is intutive that only one of these two would be true, however,
>> nowhere is it specified that only one of these two would be outputted 
>> by
>> service.  Should we not have something like this:
>>
>> 
>>     
>>     
>>   
>
> Yes.  I agree.
>
>
>>
>> Further, I am wondering why do we have two conditions, when we 
>> actually
>> just need one. Is it possible to reduce this to something like :
>>
>> if(BookInStock)
>>     congoOrderShippedOutput
>> else
>>     congoOutOfStockOutput
>>
>> (I am not too sure about the current scenario however when we do 
>> express
>> conditions as logical formalism this can be a possibility )
>
> You're correct that this is a succinct way to express it, but this
> isn't the way conditional IOPEs are expressed in DAML-S, and since
> we don't have a logical language to express negation, two conditions
> are necessary, I believe.  (Perhaps you see a way around this.  We
> are open to suggestions.)

Perhaps I'm missing something, but in DAML+OIL and OWL DL we most 
certainly have logical negation on arbitrary class expresses, so  
BookOutOfStock equivalentClass complementOf(BookInStock). We don't have 
direct negation on relations, but sometimes you can get the right 
effect via restrictions. I don't have the ontologies before me, but one 
might be able to reduce the above to something like
	unionOf(intersectionOf(complementOf(BookInStock),
					            congoOutOfStockOutput),
		      congoOrderShippedOut)

I.e.,
	(~BookInStock & congoOutOfStockOutput) v congoOrderShippedOutput

If the Outputs are properties, then this puts us in OWL full (which 
I've not considered exaclty how the wackiness of classes as properties 
as individuals interacts with its negation, in general). We could 
perhaps get what we needed, as I said, with some restrictions:

	(~BookInStock & Restriciton(onProperty=congoOutOfStockOutput, card=1) 
v....

To me more specific, we could add a conjunct to each disjunct 
restricting the complimentary output proprety to 0

[snip]

Shouldn't this discussion appear on www-ws, now that it's back up?

Cheers,
Bijan.

--
[To unsubscribe to this list send an email to "majdart@bbn.com"
with the following text in the BODY of the message "unsubscribe daml-process"]



-- 
**>><<**>><<**>><<**>><<**>><<**>><<**>><<**
Monika Solanki
Software Technology Research Laboratory(STRL)
De Montfort University
Hawthorn building, H00.18
The Gateway
Leicester LE1 9BH, UK

phone: +44 (0)116 250 6170 intern: 6170
email: monika@dmu.ac.uk
web: http://www.cse.dmu.ac.uk/~monika
**>><<**>><<**>><<**>><<**>><<**>><<**>><<**

Received on Wednesday, 27 August 2003 08:17:20 UTC