The following paragraph is described in BPEL 2.0 spec. It find it ambiguous... Can you give me an example that illustrate DPE ? I am not sure to understand what should happen if the activity that must not be performed (due to its joinCondition) has many children that could be complex too (sequence having a flow which has a flow too...)
When a target activity is not performed due to the value of the (implicit or explicit) being false, its outgoing links MUST be assigned a false status according to the rules of section 11.6.2. Link Semantics. This has the effect of propagating false link status transitively along entire paths formed by successive links until a join condition is reached that evaluates to true. This approach is called Dead-Path Elimination (DPE).