W3C home > Mailing lists > Public > www-ws@w3.org > June 2004

Re: OWL-S process preconditions

From: Austin Tate <a.tate@ed.ac.uk>
Date: Fri, 18 Jun 2004 16:18:08 +0100
Message-Id: <5.2.0.9.2.20040618155941.01a9e9a0@mail.inf.ed.ac.uk:993>
To: Dónal Murtagh <domurtag@cs.tcd.ie>, <www-ws@w3.org>
Cc: <public-sws-ig@w3.org>

At 15:00 18/06/2004 +0100, Dónal Murtagh wrote:
>My understanding is that OWL-S does not currently mandate any language for
>expressing preconditions, although the current frontrunner is SWRL. My own
>view of preconditions is that they amount to a test which evaluates to
>either true or false.
...
>The first two could be characterised as 'external' in that they are provided
>by the user/agent invoking the process via the input parameter
>CreditCardDetails. Is it true to say that all such external information
>required to test a precondition must be obtained from the process' inputs,
>or can one assume that other information sources are available?


I see such "world state constraints" as I prefer to think of them as things 
that must hold (so they do indeed evaluate to true or false in some sense) 
at the begin end time point of the activity/process.

So something like
      (light-00321 on) = true
is a direct boolean... but
      (colour car-00123) = red
ought also to be valid... where the value is unique for the given pattern 
(attribute object) in this instance.

I see no reason why such constraints cannot be information gathering 
conditions as well as things that pass via attributes of the input 
objects.  This is quite common in AI planning where for decades the value 
of different "types" of preconditions/world state constraints have been 
recognised in the different ways in which they constrain the search space 
of solutions. typical types in AI planning are:

** filter conditions (only checked to see if the constrain holds already to 
select different relevant activities)

** achieve conditions (may be actively satisfied if not already true by 
adding new activities into the process if necessary)

** query conditions (only used to bind variables which it is expected such 
a constraint has in it... e.g. for data base lookup of all the options that 
can match, etc).

There are others used in practical AI planners but that gives a flavour I hope.

Cheers, Austin
Received on Friday, 18 June 2004 11:17:37 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 3 July 2007 12:25:45 GMT