Saxonica Comments on XProc last-call draft, sections 1 and 2

1. Technical (but non-normative). Fig 1 Example. Since the example is trying
to illustrate that a pipeline takes XML documents as input, it would be
better if the input consisted of "schema documents" rather than "schemas".
(A schema document is an XML document, a schema is not). 

2. Nomenclature. "validate-xml-schema" is a misleading name for a step that
validates an instance.

3. Clarification. It becomes clear later, but it's confusing to read in the
first para of section 2 that a pipeline contains no loops, and in the fourth
para of 2.1 that a compound step may contain (or "reconstruct") an iterator.

4. Clarification. In 2.1 it's hard to reconcile the definition [Definition:
The steps (and the connections between them) within a compound step form a
subpipeline.] with the next sentence "A compound step can contain one or
more subpipelines". If the steps form one subpipeline then how can the
compound step contain many subpipelines? Are we talking about transitive
containment here?

5. Clarification. At the end of 2.1, "A step can have zero parameter input
ports, and each parameter port can have zero parameters passed on it." it
might be clearer to say "A step can have zero, one, or many parameter input
ports, and each parameter port can have zero or one parameters passed on
it.".

6. Clarification. In 2.2, I don't understand this: "Within a compound step,
the declared outputs of the step can be connected to: * The output port of
some contained step. * A fixed, inline document or sequence of documents. *
A document read from a URI." How can an output of a step be a document read
from a URI?

7. Technical. In 2.5, Parameters, it seems unnecessarily constraining to
require that the value of a parameter be a string. In XSLT, for example, it
is common for a parameter to have a document as its value.

8. Technical. By the time I get to 2.6, I'm wondering what precisely the
spec means by an "XML Document". An Infoset? A PSVI?

9. Technical. In 2.7, the Environment is defined as containing static
information. And it includes options. But I don't think it's true that the
values of the options are known statically, is it?

10. Typo. In 2.8 para 4, "step step".

11. Technical 2.8.1. Making the default context node an "empty document
node" is probably a mistake; you would want to make the decision differently
with XPath 2.0, and it will be hard to change later.

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

Received on Saturday, 22 September 2007 09:25:35 UTC