OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsbpel-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: [wsbpel-comment] wording for conflictingReceive andambiguousReceive


I think that replacing "two or more receive activities" with "two or 
more instances of receive activities" could suitably clarify this.

Marlon Dumas wrote:
> The following statement may need to be clarified in the spec: "If during
> the execution of a business process instance, two or more receive
> activities for the same partnerLink, operation and correlationSet(s) are
> simultaneously enabled, then the standard fault bpel:conflictingReceive
> MUST be thrown."
>
> In this constraint, "two or more receive activities" should not be
> interpreted as meaning "two or more instances of the same receive
> activity", but instead: "two or more instances of different receive
> activities". Indeed, it is possible that the same "receive activity"
> within a scope nested in an event handler or parallel foreach, is
> "enabled" multiple times simultaneously, possibly once for each instance
> of the scope. In such cases, I am assuming that "conflictingReceive"
> should not be thrown (otherwise, most "receive activities" appearing 
> in a parallel foreach or event handler would unavoidably lead to faults).
> Consider the following example:
> <foreach ... parallel="yes" ...>
>  <scope>
>    <partnerLinks>
>       <partnerLink name="PL1" ... />
>    </partnerLinks>
>    <correlationSets>
>       <correlationSet name="S1" ... />+
>    </correlationSets>
>    <invoke name="RA1" partnerLink="PL1" ... operation="OP1"
> inputVariable="...">
>      <correlation set="S1" initiate="yes"/>
>    </invoke>
>    <receive name="RA" partnerLink="PL1" ... operation="OP1" ...>
>      <correlation set="S1" initiate="no"/>
>    </receive>
>  </scope>
> </foreach>
>
> In this example, it is likely that multiple instances of the IMA "RA"
> may be enabled simultaneously. But no "conflictingReceive" would be 
> thrown.
>
> On the other hand, the following example may lead to a
> "conflictingReceive", as one instance of activity "RA1" may be enabled
> at the same time as one instance of "RA2".
> <flow>
>   <receive name="RA1" partnerLink="PL1" portType="PT1" operation="OP1" 
> ...>
>     <correlation set="S1" .../>
>   </receive>
>   <receive name="RA2" partnerLink="PL1" portType="PT1" operation="OP1">
>     <correlation set="S1" .../>
>   </receive>
> </flow>
>
> The first example discussed above also illustrates that the wording in
> the definition of "ambiguousReceive" in Appendix A warrants some
> clarification. The current definition says: "Thrown when a business
> process instance simultaneously enables two or more IMAs for the same
> partnerLink, portType, operation but different correlationSets, and the
> correlations of multiple of these activities match an incoming
> request message." The above is an example where two enabled instances of
> the same IMA may match the same incoming message.
>
> Kind regards
>
> Marlon Dumas
>
>
>
>
> This publicly archived list offers a means to provide input to the
> OASIS Web Services Business Process Execution Language (WSBPEL) TC.
>
> In order to verify user consent to the Feedback License terms and
> to minimize spam in the list archive, subscription is required
> before posting.
>
> Subscribe: wsbpel-comment-subscribe@lists.oasis-open.org
> Unsubscribe: wsbpel-comment-unsubscribe@lists.oasis-open.org
> List help: wsbpel-comment-help@lists.oasis-open.org
> List archive: http://lists.oasis-open.org/archives/wsbpel-comment/
> Feedback License: http://www.oasis-open.org/who/ipr/feedback_license.pdf
> List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
> Committee: 
> http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel
>


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]