- From: <Toman_Vojtech@emc.com>
- Date: Fri, 12 Dec 2008 09:03:50 -0500
- To: <xproc-dev@w3.org>
> > > > 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