- From: Drew McDermott <drew.mcdermott@yale.edu>
- Date: Fri, 1 Oct 2004 03:00:54 +0000 (GMT)
- To: public-sws-ig@w3.org
> [Daniela CLARO] > >- Concerning the service Profile .... I read that the service profile > permits agents or other programs to check unambiguously the matching > >between a requested WS and a advertised WS, only with input and output > (I > don't really understand how the condition and effect works) >... But > imagine you can found 2 services that have the input / output, but don't > do > the same thing ... like this example : You have 2 > >inputs, 2 Numbers and 1 output, also a number. The service A do input1 > > input2 while the service B do input1 - input2. How a matching >algorithm > can > make a difference between this 2 services (because they have the same > input/output) ? Let's go back to your comment "I don't really understand how the condition and effect works." Conditions and effects contain the answer to your question. Suppose we represent service A thus: Action: (request-to-A ?input1 ?input2 - (Literal Integer) Value: (?res - (Literal Integer)) Effect: (know-val (+ ?input1 ?input2) ?res) and B thus: Action: (request-to-B ?input1 ?input2 - (Literal Integer)) Value: (?res - (Literal Integer)) Effect: (know-val (- ?input2 ?input1) ?res) [Some mail-reader interference has made it unclear exactly how your example went, but I trust this version is more or less what you wanted.] In other words: service A sends back a number such that the recipient then knows it is the sum input1 + input2, whereas B sends back a number such that the recipient knows it is the difference of input1 and input2. The challenge is for an agent in possession of this model to use it to figure out that it should send a request to A when it wants to add two numbers. -- Drew -- -- Drew McDermott Yale CS Department
Received on Friday, 1 October 2004 03:01:25 UTC