IBM Support

Conditional mapping restriction in WebSphere Integration Developer XML Map

Troubleshooting


Problem

In WebSphere Integration Developer (WID) when you add a condition to a transform in an XML Map you are subject to a restriction.

Symptom

Validation errors appear in the problems view when a mapping limitation is violated.

Cause

The problem exists in a scenario where you have a sequence of sibling elements, for example a,b,c,d,e,f,g, and you use a conditional mapping group (if/else) to target some of those siblings. You cannot use other transforms outside the if/else group to target siblings between the first and last targets of the if/else group.

For example, if the transform containing the 'if' targets c and the 'else' targets f, then transforms targeting the following elements outside the group would be valid (because they are not between c and f):

a,b,g

but the following would be invalid (because they are between c and f):

d,e

To work around this limitation you could choose to create two separate conditional transforms instead of using an if/else combination.

Diagnosing The Problem

This problem causes the following message to appear in the problems view:


The Move transformation exists outside the output scope of the conditional transformations, which is not valid. Place the Move transformation within one of the conditional transformations.

Resolving The Problem

If you need to assign to elements between those targeted by a conditional transform you must break the conditional transform into two (or more) transforms.

[{"Product":{"code":"SSQQFK","label":"WebSphere Integration Developer"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"XML Mapping Editor","Platform":[{"code":"PF033","label":"Windows"},{"code":"PF016","label":"Linux"}],"Version":"7.0.0.5;7.0.0.4;7.0.0.3;7.0.0.2;7.0.0.1;7.0","Edition":"All Editions","Line of Business":{"code":"LOB45","label":"Automation"}}]

Document Information

Modified date:
15 June 2018

UID

swg21601180