xsl-list
[Top] [All Lists]

RE: Splitting multiple node occurrences into separate xmls

2005-04-28 13:58:47
Vishwajit, parsing a string containing XML into XML elements is functionality provided by some parsers; see eval() functions. Generating multiple outdocuments from a single input is also extended functionality provided by some processors.

If you don't want to use the multiple-document extension, and don't care about processing efficiency (though from prior posts you do seem to want to keep tabs on that metric), one approach to splitting a single input document ius as follows:

--apply a transform to the input that produces as its output a command file (shell script, ant build file, etc), with as many command [lines] as you want output files --each command [line] indicates an XSL transform of the original input file; it is provided enough metadata so that it outputs just the nodes you want in that file

The idea is that you repeatedly transform the input file, each time selecting just a subset of its nodes for output. Inefficient, but convenient.

Regards,

--A

From: "Vishwajit Pantvaidya" <pantvaidya(_at_)hotmail(_dot_)com>
Reply-To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Splitting multiple node occurrences into separate xmls
Date: Thu, 28 Apr 2005 12:58:01 -0700

I need to do a transformation that will take an input xml string in a format that is something like
...<a>1</a><a>2</a><a>3</a><a>4</a>...
and apart from transforming it, will split the multiple node occurrences for "a" into different xml's i.e.
xml[1]=<a>1</a>
xml[2]=<a>2</a>...

I was thnking that if xsl offers some kind of looping facility, that may help. But then xsl transformation presumably being single-input, single-output process, just an xsl maynot by itself suffice. Is there a possibility that somehow I can have a java loop pass a looping variable into the xsl-sheet, so that the first transformation gives me the first occurrence of "a", and so on.

Another approach could be to let the xsl transformation return a single xml that has the multiple "a" occurrences and then subsequently seperate them out by carrying out XPath/DOM operations on the transformed xml.

_________________________________________________________________
Don?t just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/


--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--