xsl-list
[Top] [All Lists]

Re: (newby) extraction of CDATA nodes to different XML files

2005-04-01 04:47:20
On Apr 1, 2005 1:31 PM, Michael Kay <mike(_at_)saxonica(_dot_)com> wrote:
     Maybe all the guy wants to do is copy the contents of the cdata
sections to individual files.

Yes, perhaps, I was waiting for further clarification of the requirement.

Yes, that's part of my problem. As you've already clarified I cannot
select exactly wat I desire from the CDATA (that was the other part of
the problem) thus waht remains is to save the contents of CDATA
sections outside.


As one of the solutions mentioned,
if the 3 nodes containing cdata sections were

<foo><![CDATA[   .....snip.....   ]]></foo>
<bar><![CDATA[   .....snip.....   ]]></bar>
<foobar><![CDATA[   .....snip.....   ]]></foobar>

All he needs is 3 templates and the logic to write the content out to
individual files can be nested in those templates.

As for writing to multiple files, I remember reading
somewhere XSLT is not good at this sort of thing.

In XSLT 2.0 you can write multiple files using xsl:result-document.

it sounds interesting, I will take a look around to learn more about that tag.
 
However, logically you do it the same way in 1.0: you run three passes over
the input, one to produce each output file. The only difference in 2.0 is
that these three passes can be done in the same transformation.

Well, actually this is the approach I was thinking about, but tryng to
figure out how to develop such a multi-pass transformation, I got into
the following problem: how can a template recognize that it has being
applied multiple times and thus, how can it decide which CDATA section
to process, among the three?
I suppose I should at first (1) define an XPath pattern to match
elements that are at the same level in the tree (the elements that
contain the CDATA sections), then (2) I would have to implement a kind
of recursive template call mechanism.

Sounds it correct? 
Have you any ideas about the two points?

Thanks for the help.

Livio
 
Michael Kay
http://www.saxonica.com/

--~------------------------------------------------------------------
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>
--~--



--~------------------------------------------------------------------
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>
--~--