This topic applies only to the IBM Business Automation Workflow Advanced
configuration.

Mediation flows overview

Draft comment:
This topic only applies to BAW, and is located in the BAW repository. Last updated on 2025-03-13 12:15
Mediation flows intercept and modify messages that are passed between existing services (providers) and clients (requesters) that want to use those services. They are most commonly used for transforming data and accessing header information, such as JMS, MQ or SOAP headers.

Mediation modules can be deployed on the IBM® Workflow Server .

In service-oriented architecture (SOA), services represent business functions that can be reused and combined in an ad hoc manner to create responsive business systems. These services have loosely coupled connections, rather than being connected directly to each other.

Introducing mediation flows between services enables you to process the messages that are being passed between these services. A message is a communication sent from one application or service to another application or service. Mediation flows provide the logic that processes the messages. For example, mediation flows can be used to find services with specific characteristics that a requester is seeking and to resolve interface differences between requesters and providers. For complex interactions, mediation primitives can be linked sequentially. Typical mediations include:
  • Transforming a message from one format to another so that the receiving service can accept the message
  • Conditionally routing a message to one or more target services based on the contents of the message
  • Augmenting a message by adding data from a data source

Stock Quote example: building a mediation flow

To illustrate a mediation flow, we will use an example of a simple mediation flow that provides stock prices. A client application provides a query containing a stock symbol and customer ID to the mediation flow, which processes the query. The customer's subscription level is determined, and depending on the level of subscription, the query is routed to the appropriate service provider. The quote that is returned from the service provider is converted into the customer's preferred currency before it is returned to the client application.

We are using a mediation flow because we want to use different interfaces from two external service providers, and expose a single interface to the client application. We need to build the service quickly, with the ability to change the application on demand, and without modeling a business process. We also want the ability to change the service provider without disrupting the service.

The following picture shows the complete mediation: