Table of Contents

Search

  1. Preface
  2. Welcome to Informatica Process Developer
  3. Using Guide Developer for the First Time
  4. Getting Started with Informatica Process Developer
  5. About Interfaces Service References and Local WSDL
  6. Planning Your BPEL Process
  7. Participants
  8. Implementing a BPMN Task or Event in BPEL
  9. Implementing a BPMN Gateway or Control Flow
  10. Using Variables
  11. Attachments
  12. Using Links
  13. Data Manipulation
  14. Compensation
  15. Correlation
  16. What is Correlation
  17. What is a Correlation Set
  18. Creating Message Properties and Property Aliases
  19. Adding a Correlation Set
  20. Deleting a Correlation Set
  21. Adding Correlations to an Activity
  22. Rules for Declaring and Using Correlation Sets
  23. Correlation Sets and Engine-Managed Correlation
  24. Event Handling
  25. Fault Handling
  26. Simulating and Debugging
  27. Deploying Your Processes
  28. BPEL Unit Testing
  29. Creating POJO and XQuery Custom Functions
  30. Custom Service Interactions
  31. Process Exception Management
  32. Creating Reports for Process Server and Central
  33. Business Event Processing
  34. Process Central Forms and Configuration
  35. Building a Process with a System Service
  36. Human Tasks
  37. BPEL Faults and Reports

2. Designer

2. Designer

What is Correlation

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 if it should create either a process instance or 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 coordinate event handler activities for this purpose.
To use correlation, consider the following:
  • Determine what activities need to be correlated. These activities should share one or more pieces of common data.
  • Define one property that identifies the piece of common data.
  • Define property aliases, a different one for each piece of common data in each activity that needs to be correlated.
  • Create a correlation set that contains the property and property aliases.
  • Add the correlation set to the activities being correlated.
As an example, for each correlation set, create a data property, such as
customerId
. For each message being correlated, 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.


Updated March 30, 2020