- From: Jeni Tennison <jeni@jenitennison.com>
- Date: Sat, 10 Oct 2009 13:18:31 +0100
- To: public-xml-processing-model-comments@w3.org
- Cc: Norman Walsh <ndw@nwalsh.com>
On 9 Oct 2009, at 21:44, Jeni Tennison wrote: > As I understand it, the reason for requiring the <p:import> is to > enable processors to work out the signature of steps that they don't > know about, so that they can connect up the steps correctly. So > here's my dumb question: the only outputs that you need to care > about are the ones that are connected, so couldn't a processor work > out what outputs a step is supposed to have based on the connections > to those outputs? And couldn't it just assume an empty sequence on > those ports without needing to know the declaration? Put another way, what I'm suggesting is: "Forwards-compatible mode is triggered in libraries/pipelines in which the XProc version is greater than the version recognised by the processor. In forwards-compatible mode: * Unrecognised attributes on elements in the XProc namespace are ignored. * Unrecognised steps in the XProc namespace are marked as invalid. * Unrecognised options on XProc steps are ignored. * If an XProc step contains inputs that are not part of its signature, those inputs are ignored. * If a step contains an input that contains a <p:pipe> that connects to an unrecognised output on an XProc step (which would normally cause err:XS0022), these inputs are replaced by: <p:input port="..."> <p:empty /> </p:input> * Any step which has a type that the processor does not implement is marked as invalid. In forwards-compatible mode, it is a dynamic error (err:XD0032) to attempt to evaluate a step that is marked “invalid”." Cheers, Jeni -- Jeni Tennison http://www.jenitennison.com
Received on Saturday, 10 October 2009 12:19:00 UTC