cancel
Showing results for 
Search instead for 
Did you mean: 

Conditional Sequence Flows

hheckel
Champ in-the-making
Champ in-the-making
Hello,

just wondering, if multiple Conditional Sequence Flows can only be attached to a (Exclusive) Gateway or also directly to a Subprocess as in the following scenario?


<subProcess id="subprocess001" name="Subprocess 001">
   … do something …
</subProcess>

<sequenceFlow id="sequenceflow001" sourceRef="subprocess001" targetRef="subprocess002">
   <conditionExpression xsi:type="tFormalExpression">${_destination == 'something else'}</conditionExpression>
</sequenceFlow>

<sequenceFlow id="sequenceflow002" sourceRef="subprocess001" targetRef="subprocess003">
   <conditionExpression xsi:type="tFormalExpression">${_destination == 'something completely different'}</conditionExpression>
</sequenceFlow>

<subProcess id="subprocess002" name="Subprocess 002">
   … do something else …
</subProcess>

<subProcess id="subprocess003" name="Subprocess 003">
   … do something completely different…
</subProcess>


Thanks for your help!
Holger.
3 REPLIES 3

lars_b
Champ in-the-making
Champ in-the-making
multiple conditional sequence flows don´t have to be exclusive, if you want to make them exclusive you have to take care that in no time more than one condition of one sequenceflow can be true.
If you want to make them exclusive, just use the exclusive gateway.

hheckel
Champ in-the-making
Champ in-the-making
So to clarify: by BPMN definition and following the previous comment, it IS possible to attach multiple Conditional Sequence Flows to a Subprocess (or also to a UserTask) vs. attaching them to a Gateway?

Thanks!

ronald_van_kuij
Champ on-the-rise
Champ on-the-rise
That is indeed how I understood your question. The emphasis was on the 'other then (exclusive) gateways', not about the multipliciti of sequencewflows and the conditions being mutually exclusive or not.

I have no spec at hand, but my impression was that multiple sequenceflows out of service tasks should behave as a parallel gateway, with the addition that I am not sure if the conditions should be taken into account or not… There are situations where they should be ignored iirc, but that could also be the 'default' property of sequenceflows.