This is an IBM Automation portal for Integration products. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).
We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:
Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,
Post an idea.
Get feedback from the IBM team and other customers to refine your idea.
Follow the idea through the IBM Ideas process.
Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.
IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.
ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.
Idea / RFE Review. Apologies for the length of time this suggestion has been in status Uncommitted Candidate / Future Consideration. Through this time the product's mapping capabilities have significantly evolved. Unfortunately I no longer have access to the original PMR which generated this request, but I have been able to investigate the behaviours of the current ACE graphical mapper and it seems to me that this scenario is now catered for by the tool. Consider the following schema, which describes both an inputmessage and outputmessage for the source and target of the graphical map respectively:
<?xml version="1.0" encoding="UTF-8"?><xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:element name="inputmessage">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="field1" type="xsd:string" minOccurs="0"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="outputmessage">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="parent" minOccurs="0">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="fieldA" type="xsd:string" minOccurs="0"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="fieldB" type="xsd:string"></xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:schema>
In the graphical map I created, I added a mapping between field1 and parent/fieldA which had an associated condition of fn:boolean( $field1) ... this condition coupled with the fact that parent and fieldA are both optional as defined in the above schema, the results of the mapping are as follows:
input data:
<inputmessage><field1>copied through</field1></inputmessage>
produces output data:
<?xml version="1.0" encoding="UTF-8"?><outputmessage><parent><fieldA>copied through</fieldA></parent><fieldB>hardcoded</fieldB></outputmessage>
input data:
<inputmessage></inputmessage>
produces output data:
<?xml version="1.0" encoding="UTF-8"?><outputmessage><fieldB>hardcoded</fieldB></outputmessage>
So ... in circumstances where the optional input field is not present, there is no need for the surrounding "parent" nor "fieldA" to be included in the output message as these fields are optional and the map does not create the parent regardless of the child not being there.
Status of the idea is closed as delivered.
Due to processing by IBM, this request was reassigned to have the following updated attributes:
Brand - WebSphere
Product family - Integration
Product - IBM Integration Bus (WebSphere Message Broker) - IIB
For recording keeping, the previous attributes were:
Brand - WebSphere
Product family - Connectivity and Integration
Product - IBM Integration Bus (WebSphere Message Broker) - IIB
Thanks for raising this requirement. We are aiming for feature parity between the pre-V8 mapper and the new GDM, and your input here is most welcomed. We'll look to implement this in a follow-on release or fixpack.