Re: Question about DAML-S Execution

Hi Sheila,


On Thu, 26 Jul 2001, Sheila McIlraith wrote:

> Hi Anupriya
> 
> 
> > Hello all,                                  
> >                           
> > In trying to understand the semantics of the process model constructs, I
> > came up against the following question:
> >
> > If I have a process
> >
> > A -> B -> C
> >
> > that is a Sequence [A, B, C] with 
> >
> > B: Split+Join [B1, B2, B3]
> >
> > Do the three processes B1, B2, B3 join back at A, the process which
> > "called" them or at C, the next process? Assuming it is C, which seems
> > more correct, is the join condition at C an AND condition, such that all
> > Bi processes must successfully finish execution, for C to begin
> > execution? 
> 
> They join back at C.
> 
And to confirm, all the sub-processes need to complete successfully before
C can begin? One can also imagine a condition to express which
subsets of sub-processes need to necessarily complete before C can begin.
I (tentatively, this time :-) mention the join condition of WSFL, as an
example. 

> >
> > I am wondering, in particular, what happens when an exception or a failure
> > occurs in one of the Bi and it does not return or it returns an error? 
> > Would the entire process stop there and return the error? In WSFL, the
> > flow execution repeats the process giving the error until it completes
> > successfully. I am not sure this is a good idea. It would probably be
> > better to catch the error and leave it up to the specifier to decide how
> > to handle it. The process model, at the moment, does not have an explicit
> > way to catch an error. Perhaps this is something we need? 
> 
> 
> The process model only describes the control flow and data flow of the
> composite process.  It does not talk about execution.  This is what we
> envisaged being present in the process execution model (building on
> the concepts in the process model and with some info from the service
> grounding model), which we have not created yet.
> 
> I know this doesn't solve your problem, but I hope it clarifies
> DAML-S.

Thanks for the clarification. However, I may be a little confused here,
because I still do not see how exception-handling does not also come in
the domain of the process model. When a sub-process returns an exception
or a fault message, the handling of this exceptional case does involve
both control flow and data flow, which can be (and I think needs to be) 
described within the process model. I am thinking of something like ... 

Process model of a service S:
S: A -> (B: error1 -> D) -> C
D: E -> F

General process execution model:
If errorX, then [activity that generated error] disabled,
[error-handling activity] active

Is the above (rough) example correct or have I missed something?


Many thanks,
Anupriya.

Received on Friday, 27 July 2001 07:28:16 UTC