Yaron,
Can you explain what is a non-initial start activity?
The proposal says:
A "start activity" is an initial activity that has a
createInstance="yes" attribute defined on it.
Hence, a start activity must be always initial.
Do you mean
non-initial start activity
= an initial activity that has not been run first
(because one of other initial activies has run first)?
Yuzo Fujishima
NEC Corporation
Yaron Y. Goland wrote:
> Given the resolution of issue 168 I propose the following as a
> resolution for issue 81:
>
> Summary: Make it legal to have initial activities that are not start
> activities. After the initial start activity completes execution then
> (as per issue 168) all initial activities begin executing, this includes
> both non-initial start activities and non-start initial activities.
>
> Section 6.5
>
> Change: To be instantiated, each business process must contain at least
> one such "start activity." This must be an initial activity in the sense
> that there is no basic activity that logically precedes it in the
> behavior of the process.
>
> To: To be instantiated, each business process must contain at least one
> such "start activity." That is, a receive/pick activity annotated with a
> createInstance="yes" attribute. See section 11.4 for more details on
> start activities.
>
> Change: If exactly one start activity is expected to instantiate the
> process, the use of correlation sets is unconstrained.
>
> To: If a process contains exactly one start activity then the use of
> correlation sets is unconstrained.
>
> Section 11.4
>
> Change: A receive activity annotated in this way MUST be an initial
> activity in the process, that is, the only other basic activities may
> potentially be performed prior to or simultaneously with such a receive
> activity MUST be similarly annotated receive activities.
>
> To: A receive/pick activity annotated in this way MUST be a "start
> activity". A "start activity" is an initial activity that has a
> createInstance="yes" attribute defined on it. An initial activity is a
> receive/pick activity where no other activities but scope, flow,
> sequence and empty activities occur before it in the process's execution
> path. While all start activities must be initial activities not all
> initial activities are required to be start activities. If an initial
> activity is not a start activity then the initial activity will only
> become active after the chosen start activity, called the initial start
> activity, has completed execution.
>
> Change: It is permissible to have the createInstance attribute set
> to"yes" for a set of concurrent initial activities.
>
> To: It is permissible to have multiple start activities. As specified in
> section 6.5 the initial start activity must complete execution before
> any other start activities, now treated as initial activities, are
> allowed to execute.
>
> Change: All such receive activities MUST use the same correlation sets
> (see Correlation).
>
> To: If a process has multiple start activities then all the start
> activities MUST use the same correlation sets and the pattern for all
> the correlation sets MUST be sent to "rendezvous" (see Correlation).
>
> To unsubscribe from this mailing list (and be removed from the roster of
> the OASIS TC), go to
> http://www.oasis-open.org/apps/org/workgroup/wsbpel/members/leave_workgroup.php.