Re: Restricting input depending on output

   [Saied Tazari]
   I am working on a user-centric broker agent in the context of a national 
   research project in Germany (see the extended abstract submitted to KIMAS'03 
   for a summary of our ideas about the broker agent under 
   http://www.zgdv.de/departments/z3/Z3Staff/stazari/index_html_en).

   I have a problem regarding the flow control in composite processes (more 
   precisely in a simple sequence without any preconditions and effects):  How 
   can I specify that one of the inputs of an atomic process must be a subset 
   of one of the outputs of the preceeding atomic process?

   Consider the following example:
   
   ...

   How can I formulate that a concrete value given for selectedLocationList_In 
   within a concrete sequence of these two processes must be a subset of the 
   concrete value delivered for availableLocationList_Out?

We have a technique in DAML-S for indicating that the two values must
be identical:

   <rdf:Description rdf:about="...whole process id...">
      <process:sameValues rdf:parsetype="daml:collection">
         <process:ValueOf 
            process:atClass="#GetPostitCompositionPrerequisites"
            process:theProperty="#availableLocationList_Out"/>
         <process:ValueOf 
            process:atClass="#StickPostit"
            process:theProperty="#selectedLocationList_In"/>
      </process:sameValues>
   </rdf:Description>

However, what you want is slightly different.  Why not introduce a
"select" step that picks one from a list?  Then you could have a sequence

    GetPostitCompositionPrerequisites
      
      >out>  availableLocationList_Out
            =availableLocationList_In
             >in>

               PickOne

                 >out>  selectedLocationList_Out
                       =selectedLocationList_In

                          >=> 

                              StickPostit

You would need two 'sameValues' declarations to make this work.

                                             -- Drew McDermott

Received on Tuesday, 11 March 2003 19:26:51 UTC