When you convert a legacy message map that includes ESQL
mapping functions, the conversion process converts some ESQL functions to equivalent XPath
2.0 functions (fn:functionName), or to cast type functions
(xs:type). A Task transform is added to
your converted map when there is no automatic conversion for an ESQL function.
Check the conversion process behavior when you convert a legacy message map to a message map that includes ESQL mapping
functions:
- When a legacy message map includes calls to
predefined ESQL mapping functions, each ESQL function call is converted to an
XPath expression, cast type function, or to a Custom
XPath transform in the converted map. For each expression,
xs:type function, or Custom
XPath transform in the converted map, complete the following
steps:
- Check that the expression, xs:type function, or
Custom XPath transform re-creates the
required behavior.
If your ESQL mapping function has optional input parameters, you must
implement conditions to handle this situation. By default, the
conversion process assumes that all input parameters are mandatory.
- For each expression, xs:type function, or
transform, check that the correct number of inputs is connected.
In earlier releases of WebSphere® Message
Broker Version 8,
the number of inputs wired to a transform and required to implement
a transformation in a legacy message map was not enforced. When the Graphical
Data Mapping editor converts a
transform that includes an ESQL mapping function, it creates an
XPath function that conforms to the XPath 2.0 specification, and
wires the input elements to the transform as defined in the legacy message map. As a result, a
converted map might have more inputs than the XPath expression
requires, or less inputs than the ones required to perform the
calculation. Consequently, the converted map will fail to run when
you deploy it.
- If there is no XPath equivalent of an ESQL mapping function, the function is
replaced with a Task transform in your converted map. You
must replace each of these Task transforms with a
Custom XPath transform, a Custom
Java transform, or a Custom ESQL
transform that re-creates the required behavior.
- Check the Documentation properties of the
transform in the converted map for more information on how the ESQL
function was implemented in your legacy message map.
The following ESQL mapping functions that you can use in a legacy message map have no XPath equivalent in
message
maps:
- Certain mathematical functions:
- ACOS
- ASIN
- ATAN
- ATAN2
- BITAND
- BITNOT
- BITOR
- BITXOR
- COS
- COSH
- COT
- DEGREES
- EXP
- LN
- LOG
- LOG10
- MOD
- POWER
- RADIANS
- RAND
- SIGN
- SIN
- SINH
- SQRT
- TAN
- TANH
- Decimal function:
- Certain String functions:
- Certain field functions:
- ABITSTREAM
- BITSTREAM
- SAMEFIELD
- Certain date time functions:
- TIMESTAMP
- CURRENT-GMTDATE
- CURRENT-GMTTIME
- CURRENT-GMTTIMESTAMP
- All INTERVAL- functions
- The ESQL LIKE function
- The ESQL FOLLOWING form of the ESQL POSITION function
- All SQL functions
- The UUIDASCHAR and UUIDASBLOB functions
Continue converting your legacy message map. For more
information, see Converting a message map from a .msgmap file to a .map file.