RE: overloading definition in p:pipeline

I think that only the first pipeline is a valid XProc pipeline. The other two will be rejected because you can't change the properties of the default input ("source") and output ("result") ports. The properties of the default input/output ports are primary="true" and sequence="false". 
...but a strange thing is that I can't find any relevant text about this in the spec even though I thought there was some text about it in section 4.1 (p:pipeline). And as I am thinking about it now, I am also not sure now whether you can specify <p:input port="source"/> or <p:input port="source" primary="true"/> in p:pipeline *at all*.
I had a similar question in the past (1/25/2008, Comments on Editor's Draft 9 January 2008). This was the reply:
| 5.Section 4.1 (p:pipeline): "All p:pipeline pipelines have an implicit
| primary input port named "source' and an implicit primary output port
| named "result". Any input or output ports that the p:pipeline declares
| explicitly are in addition to those ports and may not be declared
| primary."
| So, is it allowed to explicitly specify the implicit input/output ports
| inside p:pipeline? If so, is it possible to redefine their properties
| (primary, sequence)? Is the following permitted?
| <p:pipeline>
|   <p:input port="source" sequence="false"/>
|   <p:output port="result" primary="false"/>
|   <p:output port="result2" primary="true"/>
|   ...
| </p:pipeline>
No. The implicit declarations of source/result cannot be repeated or
changed. Of course, you can use p:declare-step if you want to have
different values.
So it seems to me that this requirement (plus also the properties of the implicit "source" and "result" ports) didn't make it to the spec. Or perhaps I just can't find it right now...


 From: [] On Behalf Of Innovimax SARL
 Sent: Monday, July 14, 2008 1:03 PM
 To: XProc WG
 Subject: overloading definition in p:pipeline
 What should be the behaviour of the XProc processor vis-à-vis the following pipeline ?
 <p:pipeline name="pipeline" xmlns:p="">
   <p:input port="source" primary="true"/>
   <p:input port="schemas" sequence="true"/>
 and vis-à-vis the following one ?
 <p:pipeline name="pipeline" xmlns:p="">
   <p:input port="source" primary="true" sequence="true"/>
   <p:input port="schemas" sequence="true"/>
 and lastly vis-à-vis the following one ?
 <p:pipeline name="pipeline" xmlns:p="">
   <p:input port="source" primary="false" sequence="true"/>
   <p:input port="schemas" sequence="true"/>
 Innovimax SARL
 Consulting, Training & XML Development
 9, impasse des Orteaux
 75020 Paris
 Tel : +33 9 52 475787
 Fax : +33 1 4356 1746

 RCS Paris 488.018.631
 SARL au capital de 10.000 € 

Received on Monday, 14 July 2008 11:44:29 UTC