Subject:XSLT Mapper - Two way xslt mapping? Author:Nick Grealy Date:15 Jan 2013 08:06 PM
Hi,
I'm currently trialing Stylus Studio X15, I love the XSLT Mapper.
I'm just wondering:
1) Is it possible to do a Two-Way mapping? i.e. generate Two XSLT documents from One mapping. One for source->target conversion, and the second for target-source conversion. (I do a lot of conversions backwards and forwards between documents, it'd be great if I didn't have to re-map all these fields, just to map the inverse transformation.)
2) Is it possible to "auto-map" fields? i.e. based on a matching element in the target and source documents (possibly case insensitive?). (For a lot of my transformations, the target and source documents have very similarly named element structures. Currently I have to do a drag and drop for every field...).
The website mentioned Two-way mapping, but I think that's only referring to the link between the XSLT Mapper source code and the XSLT Mapper diagram(?) - http://www.stylusstudio.com/xslt_mapper.html
Subject:XSLT Mapper - Two way xslt mapping? Author:Ivan Pedruzzi Date:15 Jan 2013 09:15 PM
Hi Nick
Thank you for the kind words.
1) Stylus Studio currently does not provide a way to generate the reversed mapping. This is something it may surface on one of the next major releases.
You are correct the two-way editing terminology indicates its unique capability to allow editing from the visual mapping or from the underline code and automatically synchronize the other.
2) Version X15 introduced the Auto-link feature, simply right click on any element on the left tree then click "Auto-link". This works with a single element or attribute or an entire sub tree.
Auto-Link scans the target tree for the best match using, the following criteria, the target which have higher score gets linked
- XPath location
- Exact match case sensitive and same namespace
- Match ignoring case and same namespace
- Exact match local name only
- Match ignoring case local name only
Give it a tray using books.xml and catalog.xml from the example\simpleMappings project