oh no, my result is escaping!

using Calabash 0.6.2:

I'm using the code Norm Walsh sent out earlier to determine if an xml doc is
valid or not (thank you, Norm!), and I'm getting an unexpected result.
Here's the pipeline:

<p:declare-step xmlns:p="http://www.w3.org/ns/xproc"
xmlns:px="www.garriss.org">
    <p:input port="source">
        <p:document href="BookStore.xml"/>
    </p:input>
    <p:output port="result">
        <p:empty/>                    <!-- note the empty binding -->
    </p:output>

    <p:declare-step xmlns:c="http://www.w3.org/ns/xproc-step"
        type="px:is-valid" name="is-valid">
        <p:input port="source" primary="true"/>
        <p:input port="schema" sequence="true"/>
        <p:output port="result"/>
        <p:option name="mode" select="'strict'"/>

        <p:try>
            <!-- all of Norm's cool code snipped from right here -->
        </p:try>
    </p:declare-step>

    <px:is-valid name="step1">
        <p:input port="schema">
            <p:document href="BookStore.xsd"/>
        </p:input>
    </px:is-valid>
    
</p:declare-step>

The result output port of the (outer) p:declare-step is bound to p:empty.
So I should expect the output of running this pipeline to be empty, right?
Well, it's not.  The result of the px:is-valid step has escaped!  I'm
getting this:

<c:result xmlns:c="http://www.w3.org/ns/xproc-step"
xmlns:p="http://www.w3.org/ns/xproc"
xmlns:px="www.garriss.org">true</c:result>

#1)  Is that a bug in a) my pipeline, b) my thinking, c) Calabash, d) all of
the above, e) none of the above?

#2)  Is it proper terminology to call the inner p:declare-step a
subpipeline?  I think so.

You guys continue to be super-helpful, thank you so much!

James Garriss
http://garriss.blogspot.com

Received on Friday, 26 September 2008 17:57:08 UTC