primary ports and automatic connections

from:  2:3 Primary Inputs and Outputs

łThe special significance of primary input and output ports is that they are
connected automatically by the processor if no explicit binding is given.˛

Is it valid to assume then that if an input port is not a primary port, it
is not automatically connected by the processor?

I ask because when I run this pipeline in Calabash 0.6.0:

<p:declare-step xmlns:p="http://www.w3.org/ns/xproc">
    <p:input port="source">
        <p:inline><foo>bar</foo></p:inline>
    </p:input>
    <p:output port="result"/>
    <p:identity/>
</p:declare-step>

I get this output:

<foo xmlns:p="http://www.w3.org/ns/xproc">bar</foo>

This puzzles me, because identity has no primary ports:

<p:declare-step type="p:identity">
     <p:input port="source" sequence="true"/>
     <p:output port="result" sequence="true"/>
</p:declare-step>

I expected either no output or an error message.

Do I misunderstand primary ports?  Or is Calabash automatically connecting
something it should not?  Or am I overlooking something?

I appreciate any insight,

James Garriss
http://garriss.blogspot.com

Received on Wednesday, 17 September 2008 23:30:54 UTC