- From: Drew McDermott <drew.mcdermott@yale.edu>
- Date: Mon, 19 Apr 2004 15:14:00 -0400 (EDT)
- To: public-sws-ig@w3.org
> [Charlie Abela] > So can someone explain what an effect actually refers to and how will users > (possibly not technical enough to understand the difference) know what an > effect represents and which effect to attach to some WS description? > Cause as described in OWL-S up to now it is still unclear how this thing can > be handled. An effect looks a lot like a proposition. The simplest case is something like ecom:own(me:me, art:Mona-Lisa): if an action is taken that has this effect, then after that action I will own the Mona Lisa. The surface notation will look exactly like that. The deep notation will look more like this: <drs:Atomic_Formula> <rdf:subject rdf:resource="&me;me"/> <rdf:predicate rdf:resource="&ecom;own"/> <rdf:object rdf:resource="http://www.louvre.org/works#Mona-Lisa"/> </drs:Atomic_Formula> or maybe this: <swrl:PropertyAtom> <swrl:Object rdf:resource="&me;me"/> <swrl:Property rdf:resource="&ecom;own"/> <swrl:Value rdf:resource="http://www.louvre.org/works#Mona-Lisa"/> </drs:Atomic_Formula> (The SWRL site is down right, now, so I'm guessing about the details here). There is an issue about the ontological status of expressions like this. In OWL-S-Full, we can be fairly casual about such things, but in OWL-S-DL we would probably wrap the effect in an "XML Literal" package, thus allowing us to hide non-DL stuff. (The terms OWL-S-Full and OWL-S-DL I just made up, but I wouldn't be surprised if we wound up with two different dialects.) Effects differ from conditions in various ways: * Effects are not true or false; they are _imposed_ or not imposed. An ordinary atomic formula is imposed by making it true in (that is, adding it to) the db representing the next situation. * The expression (not p) means "Delete p," or "Erase p from my db," or "Make p false." * The expression (when p q) means, "If p is true before the action with this effect, q is imposed after." * The expression (increase f a) means, "Increase fluent f by amount a," as in (increase (money-flow me barnes&noble) (dollars 35)). Similarly for 'decrease' and 'assign'. * The expression (forall (x) (when p[x] q[x])) means, "For every object x you can think of satisfying p[x] before the action is taken, impose q[x] after." * A disjunction in an effect is interpreted as nondeterminism. It's not clear how existential quantifiers are to be understood. There probably should be a new quantifier: (new (x) p[x]) means, "A new object satisfying p comes into existence." An ordinary existential could then be interpreted nondeterministically. This is probably irrelevant to what we really need to know, which is how the effects of web services are to be expressed. Here we have notions such as "The effect is that the agent knows something it didn't know before," or "The effect is that the agent owns three dozen more donuts then it did before." Representing these things opens up some interesting new KR challenges. -- Drew -- -- Drew McDermott Yale University CS Dept.
Received on Monday, 19 April 2004 15:14:05 UTC