- From: Erik Bruchez <ebruchez@orbeon.com>
- Date: Tue, 10 Jan 2006 19:43:28 +0100
- To: public-xml-processing-model-wg@w3.org
Norman Walsh wrote:
> / Jeni Tennison <jeni@jenitennison.com> was heard to say:
> | I think that one of the requirements for the XML Processing
> | Model/Language is that it needs to support passing XML documents in
> | the forms of serialised XML, infosets *and* augmented infosets, as
> | appropriate, between processes in a pipeline. Other thoughts?
>
> To the extent possible, I'd like the exact representation passed
> between processes to be an implementation detail. On the one hand, I
> think we'll get a lot of pushback if an implmentation that passes SAX
> events between components can't be conformant to our spec. On the
> other, implementations built around XPath2/XSLT2/XQuery are obviously
> going to want to pass XDM instances around and I want those to be
> conformant too.
I agree with this approach. A few comments on this:
o SAX. An implementation should be able to use SAX if it wishes so,
but I do not think we should mean by this that it should be possible
to stream *every* possible pipeline. SAX streaming should be
possible in simple, reasonable cases. We all know for example that
most XSLT implementations will buffer SAX events into an internal
representation. We should also realize that if supporting
content-based (XPath-based, for example) conditionals, buffering of
SAX events may be necessary to evaluate test conditions. However, a
straight pipeline with custom tranformations components could
absolutely be streamed.
The main point I am making here is that I do not think we should
consider the inclusion of features such as conditionals or multiple
inputs and outputs based on a "streaming" requirement.
o PSVI: an implementation should be able to pass PSVI information
between components, but a non-PSVI-aware implementation should also
be conformant, as mandatory PSVI support can be quite contentious a
requirement (based on reactions to schema-aware XSLT 2.0's PSVI
requirement, in particular).
o We should make a distinction between the underlying technology used
(DOM, SAX, etc.) and the information content being passed. It seems
to me that it is important that we discuss the latter, while the
former should probably be outside the scope of the spec.
o To follow-up on Norm's "to the extent possible", the WG should
determine whether there is a *minimal* set of information content
that every conformant implementation is required to support. As
suggestions, such content could be:
o the XML infoset
o the information set passed on a SAX ContentHandler (which is a
subset of the XML infoset)
Determining such a minimal information content, along with support
for a "core library" of components (XSLT, XInclude, as suggested
above) would be a step toward ensuring that there is an actual set
of use cases that all conformant implementations will be able to
actually run.
-Erik
Received on Tuesday, 10 January 2006 18:43:38 UTC