Different XSLT processors, including those that are XSLT 2.0 and Saxon 9 compliant, can split one XML document and write multiple XML documents. While the XSLT Transform operation uses Saxon (I am not sure which version) the DSC is not designed to output multiple results AFAIK.
You would have to use an external process or a custom script to do the split and writes.
Does each Record node contain a complete document? If so then you should be able to tell Output to create new docs on each Record node.
Thank you Steve. That's what I expected. I "bit the bullet" and wrote my own XML splitter to (a) split the XML and (b) pass a list of the resulting XML files back to the process. It would be nice if LC ES2.5 would let us do the split with the Transform / XSLT Service.
Thank you Paul, unfortunately I can't use the "Generate Multiple Streams" option. The <Record> level could be a new transaction or a "Page n of m" and I need to split on a transaction level.
You're welcome Alex.
Since this is a recurring request on the forum I put together the attached PDF. The PDF describes a technique for splitting an XML document using the XSLT service and includes the following attachments: an ES2 .lca, a sample XML document and the XSL included in the process.
If you have any questions or comments please email email@example.com.
Thank you very much for this very helpful example and your thorough explanations.
I really appreciate it!