RE: p:xslt

> >
> > What Calabash is telling you, is that you didn't connect the
> > "parameter port" (whose name is 'parameters')
> 
> I understood that.
> 
> 1. I don't want to pass any parameters to the stylesheet
> 2. The CR doesn't say which ... ???? elements ????
> are required as children of  p:xslt
> 
> (and the rng schema doesn't require any children)
> 
> 
> Do I require a p: parameter (the port) as a child?
> Even if I don't want to  pass any parameters?

What is required for p:xslt is determined by its declaration in the
standard step library:

   <p:declare-step type="p:xslt" xml:id="xslt">
      <p:input port="source" sequence="true" primary="true"/>
      <p:input port="stylesheet"/>
      <p:input port="parameters" kind="parameter"/>
      <p:output port="result" primary="true"/>
      <p:output port="secondary" sequence="true"/>
      <p:option name="initial-mode"/>
      <p:option name="template-name"/>
      <p:option name="output-base-uri"/>
      <p:option name="version"/>
   </p:declare-step>

This declaration says that you must provide bindings for the "source"
input port. You also have to provide bindings for "parameters" which is
the primary parameter input of the step (note that it is not marked as
primary, but since it is the only parameter input port on the step, it
becomes implicit primary).

If you don't provide any binding for primary input (both parameter and
non-parameter) ports, the processors always attempts to manufacture a
default binding based on so called "default readable" port. For notmal
inputs, it is usually the output of the preceding step, but for paramete
rinput ports it is the primary parameter input port of the containing
pipeline.

If the processor fails to manufacture a default binding, you get an
error.

Regards,
Vojtech

Received on Friday, 12 December 2008 14:05:05 UTC