Choice = If-Then-Else with conditions in Result?

Hello!

 

I wonder what the exact semantics of the Choice control structure is? Is it
that an invoker of the web service may invoke any one (and only one) of the
components in the corresponding bag? 

 

If so, I think that the Choice structure is not very useful when the output
of the process is conditionally decided in the Results. For when the output
of the process is decided based on the conditions in the Results, this very
output might not have been produced by the component chosen from the
Choice-bag. Consider the composite process SignInAlternatives in the
FullCongoBuyExample: if an account already exists, the output is bound to
the output of SignInSequence, otherwise it is bound to the output of
CreateAcctSequence. Both of these processes are in the Choice-bag of
SignInAlternatives. But how do we know that the correct component in the
Choice-bag has been executed? For a machine that automatically interprets
the description of SignInAlternatives to know this, it must first inspect
the conditions of all the Results of SignInAlternatives, before it chooses a
component from the Choice-bag and executes it. I think this makes Choice
(implicitly) equal to the If-Then-Else control structure, but more diffuse.
So to conclude, the Choice control structure is only safe to use when no
conditions are present in the Result descriptions of the process.

 

Please tell me what you think of this.

 

Best regards

 

Martin Gülich

 

Martin Gülich, M.Sc.

Research Engineer

Swedish Defence Research Agency, FOI

Dept. of Systems Modelling

Phone: +46855503691

Company web site: www.foi.se

 

 

Received on Thursday, 10 March 2005 12:07:45 UTC