Allow unknown steps?

In 5.9 p:declare-step, we say:

  It is a static error (err:XS0020) to identify a step in a subpipeline
  that the implementation does not know how to perform. It is not an
  error to declare such a step, only to use it.

I interpret that to mean that the following pipeline contains a static
error:

<p:pipeline xmlns:p="http://www.w3.org/2007/03/xproc"
	    xmlns:px="http://xproc.org/2007/03/xproc/ex">
<p:output port="result"/>
<p:input port="source"/>

  <p:declare-step type="px:you-dont-know-how-to-do-this">
    <p:input port="source"/>
    <p:output port="result"/>
  </p:declare-step>

  <p:choose>
    <p:when test="true()">
      <p:output port="result"/>
      <p:identity/>
    </p:when>
    <p:otherwise>
      <p:output port="result"/>
      <px:you-dont-know-how-to-do-this/>
    </p:otherwise>
  </p:choose>
</p:pipeline>

I wonder if we should say instead that it's an error to attempt to
evaluate a step that the implementation does not know how to perform.
Then the above pipeline would not be an error. It would also not be an
error to use p:system-property to make choices based on XProc vendor
information.

                                        Be seeing you,
                                          norm

-- 
Norman Walsh <ndw@nwalsh.com> | Oh well, no matter what happens,
http://nwalsh.com/            | there's always death.-- Napoleon

Received on Friday, 25 May 2007 11:11:06 UTC