Hey all,
We've introduced some pretty exciting updates to the ION Mapper in recent releases that introduce a number of big enhancements:
- New XSLT generation engine
Until recent ION Mapper releases, the ION Mapping XSLT engine auto-generated a comprehensive stylesheet that mapped all source & target elements regardless of whether any changes, UDFs, or data conversions were defined. This meant quite a lot of XSLT code and, at scale, less optimal performance.
Our new XSLT v2 generator now intelligently optimizes code-generation resulting in a significant reduction in stylesheet code for direct mappings between source and target documents. Net result? A >90% reduction of XSLT code and up to 99% improved mapping times!
All new mappings you create now use the new XSLT engine but you're always able to revert back to "Compatibility Mode" in the configuration tab, if needed.
Check out the example below to see the enormous improvements made with a Sync.SalesOrder mapping using our previous XSLT engine on the left and the new one on the right.

- Support for multiple function containers beginning with constants and UDFs
- Improved constant value handling against target nodes with existing source node mappings.
Previously, content outputs from the mappings would generate duplicate parent nodes in the document.
- Improved complex hierarchy mappings
In previous versions, mapping elements from various levels of a source document to a single target element would result in duplicate target hierarchies and other unexpected behaviors. This could be handled with custom UDF code dictating desire outputs but was tricky and complex for novice users.
- Mapping multiple elements (0..1) with parent node (0..∞) to one element (0..∞ ) with no connection to its parent node (1..∞ )
In some scenarios, mapping content to a target document's nested tree elements resulted in XSD rule violations. The Mapper now improves analysis and behaviors around XSD element definitions to better honor generated XML expectations.
Give it a shot, tell us what you think, and let us know what new features you'd like to see in the Mapper!