ActiveVOS Designer User’s Guide

ActiveVOS Extension for Links

According to the WS-BPEL 2.0 execution rules for links, a link cannot create a control cycle by linking to a completed activity. In addition, a link cannot cross the boundary of a structured activity, such as a while activity, However, ActiveVOS includes an extension that allows these behaviors under certain conditions.

The following illustration shows two cases of using loop-back links to a completed activity. On the left is an example of a valid use of a loop-back link. On the right is a case that will cause an error in static analysis because it violates the fork join restriction described below.

ActiveVOS extension to links

By default, the link extension is turned on, allowing you to use loop-back links. You can turn off the extension on a process-by-process basis by setting the Links are Transitions property in the All tab of a process.

Execution Rules for Extension to Links

The basic execution rules for ActiveVOS extension to links are the following.

Usage Restriction for Activities in Parallel Execution

If two or more activities execute in parallel, and you want to create a link that loops back to before the parallelism, then the parallelism must be encapsulated within a fork join container. This restriction ensures that there will not be concurrent execution of looping activities, since the fork join ensures that all activities on parallel paths complete and join together before the next execution of the loop.

Best Practice

We recommend that you use mutually exclusive links as the source links of a gateway activity that is an exclusive type. Drawing links out of an exclusive gateway clarifies the intended behavior of outbound links.

Note that using ActiveVOS extension links as loop-back links is similar to using a while or repeat until activity, which is already structured for you.

ActiveVOS Extension Namespace for Links

You may notice that your processes include the ActiveVOS extension for links in the Extensions node of the Outline. For details on extensions, see ActiveVOS Extensions to WS-BPEL 2.0.