RE: [xsl] create multiple documents

Subject: RE: [xsl] create multiple documents
From: Joerg Pietschmann <joerg.pietschmann@xxxxxx>
Date: Fri, 19 Oct 2001 16:40:14 +0200
Okok, i admit my statement was hype and restate it:
"If the posts to this list are a measurement, the numbers of
people using XSL online in a server or a browser grow faster
than the number people doing batch processing."

In fact, we started with batch processing last year. The
documentation generation was moved to online processing, while
the code generation is, for obvious reasons, still batch.

Multiple output file generation is achieved by inserting magic
strings and having an external tool doing the actual split.
I toyed with the idea of using saxon:redirect, but there was
actually some showstoppers, the the main problems being that
the splitter checks files before overwriting to keep the last
modification date if unchanged, and directory creation.

This is something i fear will be a problem: there are so much
possible parametrizations and failure modes in writing multiple
output that it is likely to be underspecified, thereby creating
portability problems.

Some issues follow. I admit a haven't read the requirements nor
a perhaps existing draft spec.
- Will non-existent directories in the URL be created automatically?
- Will a file be overwritten if it already exists?
- What happens in case of errors during writing, for example due to
  exceeded disk quotas, to other output streams? Are write errors
  in one output fatal or recoverable?
- If an output stream is reopened multiple times in the style sheet,
  will the file be kept open or may the processor close and reopen the
  file? This may introduce unexpected racing conditions.
- For the http: protocol, will the content be sent by PUT, POST or
  even GET?
There will probably be requests for additional POSIX functionality,
like locking.
Note that these issues could have been left out successfully until
now, as the environment of the processor has been in control of
the processors single output stream. But with multiple output
under control of the style sheet, this is no longer true.


Regards
J.Pietschmann

 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread