Content-based filtering using ESQL

IBM® MQ supports message selection based on Root.MQMD and message properties; IBM Integration Bus provides extra options.

Content based filters in IBM Integration Bus extend IBM MQ message selectors to allow the use of ESQL expressions to filter on the entire message.

You can use the following items:
Correlation names
In content based filters, the message can be accessed using the Root, Body, and Properties correlation names.
Any other correlation name is interpreted as a IBM MQ message property, apart from the following list of excluded reserved names:
  • Database
  • DestinationList
  • Environment
  • LocalEnvironment
  • ExceptionList
  • LocalEnvironment

Any other top level identifier is assumed to be a IBM MQ message property, and is accepted.

The content based filtering engine does not update the message tree. It accesses the message tree as read-only. Any statements that attempt to modify the tree are rejected.

By supporting ESQL, content based filtering in IBM Integration Bus supports fully-qualified Namespaces, as documented in ESQL reference.

ESQL expressions
Content based filtering accepts any ESQL expression, with the exclusion of database access, that returns a Boolean value.