xsl-list
[Top] [All Lists]

Re: [xsl] Appending to existing file

2007-07-17 07:55:19
Michael Kay wrote:
According to the spec, you're not allowed to execute two xsl:result-document
instructions using the same URI. This is because of the theory that
everything in XSLT is done in an undefined order, perhaps even in parallel.

However, there's nothing that stops you writing to different URIs and then
capturing the output and sending it all to the same file. In the Saxon API
you can set an OutputURIResolver, and it's this that determines where the
data ends up. There's nothing to stop you for example writing to URIs
file:///c:/temp.xml#1, file:///c:/temp.xml#2 and so on, and having all the
data end up in c:/temp.xml.

Michael, I would find that a tempting approach, however, in your first paragraph, you state that everything can be executed in an undefined order. I assume that means, in theory *and* in practice, that the order in which the OutputURIResolver is called is undefined and hence, the order of the snippets that you are writing to the same target.

Obviously, by collecting the data before writing it, you can order it by means of some sort of identifier of course.

-- Abel

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