Process Model having multiple receive steps with correlations and complex subscription filters


something to think about:

I have a Process Model consisting of a dozen of receive steps where most of them have a correlation service and a subscription filter assigned.

At least one these steps has a subscription filter defined as “A and B or C”.
The step is being joined by documents matching “A and B” or documents matching “C”.
I know that this technically correct, but this is not what was intended.
Intended was “A and (B or C)”, so that documents matching either “A and B” or “A and C” are joining this step.
Unfornuately Designer/PE/PRT 9.5 SP1 is not supporting parenthesis at this point to force this behaviour.

A workaround might be to split this step into 2 with the subscriptions “A and B” and “A and C” and merge the processing with an XOR/OR-Join-Gateway, as there have been taken actions to ensure that only one of the conditions is being matched.

For me this looks like that subscription filters for Process Models should only consist of either “and” or “or” conditions but not a mix of both.

Any ideas?
Might this have eventually already changed in a newer version?

Anyway I will open an idea/feature request at brainstorm for this to see what turns out of that.



one option might be to write the subscription filter as “A and B or A and C”.
By doing so it will either evaluate “A and B” or “A and C”.

Found something similar in an old email from our migration from wM 7.1 to wM 9.5.


1 Like

Hi Holder,

It will be a good feature to have parenthesis as part of filtering.
SAG should consider adding this in future releases.

Adding another option for implementing the same would be to use service implementation of subscription step.

Hi Bari,

this wont work as the subscription filter determines at which subscription step the data will join the process.

For the parenthesis I have already opened a feature request on Brainstorm you can vote for it if you like.

We did some investigation meanwhile and found out that “A and B or A and C” will not work without parenthesis support.

As a workaround we have changed the affected subscription filter to “B or C and A” which evaluates as needed but is not correct from algebraic point of view.


Hi Holger,

Agree, i amused its one document with properties getting filtered.

Hi Bari,

in fact it is one doctype which can occur with different values for certain propeerties.

These values control which step is to be checked if the specific document belong to a running instance or not.

Another property is then evaluated in the correlation service to find the exact instance.

There are about 20 steps where this doctype can be joining having 3 different correlation services (depending on step).

Some of them are having quite simple subscriptions consisting only of one condition or just two conditions combined with either and or or.
But some very few are having a bit more complex condition with mixed and and or condition parts.