ActiveVOS Designer User’s Guide

What is Correlation?

Correlation is a construct for keeping track of a group of messages that belong together in one particular business partner interaction. Correlation matches messages and interactions with the business process instances they are intended for.

When a BPEL engine receives a message, it determines whether to create a process instance or to match an already-running process. The data within a correlation set is the signature that lets the engine match the message to the process expecting that message. You can add correlation to receive, pick, reply, invoke, and event handler activities for this purpose.

To use correlation, consider the following:

As an example, for each correlation set, you create a data property, such as customerId. For each message to be correlated, you create a property alias for a message part, such as a receive’s message part named CustID, an invoke’s input message part named customerNum, and so on.

Alternately, you can use an engine-managed correlation policy assertion, described in Engine-Managed Correlation.

The steps for adding correlation to a process are shown in the following illustration.

Steps to implement correlation, with callouts

Select a link for details about each step

1

Creating Message Properties and Property Aliases

2

What is a Correlation Set? and Adding a Correlation Set

3

Initiating and Setting Patterns for Correlation

4

Adding Correlations to an Activity