- From: Norman Walsh <ndw@nwalsh.com>
- Date: Tue, 04 Dec 2012 16:38:21 -0800
- To: public-xml-processing-model-wg@w3.org
- Message-ID: <m2pq2pfi4i.fsf@nwalsh.com>
Hi folks, Here's my synthesis of the discussions at the face-to-face: 1. Adopt the XSLT 3.0 extensions to the data model and functions and operators to support maps 2. Parameters become a special kind of option: <p:declare-step type="p:xslt" xml:id="xslt"> <p:input port="source" sequence="true" primary="true"/> <p:input port="stylesheet"/> <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:option name="parameters" parameters="true"/> </p:declare-step> The special flag is necessary because of the special "inheritance" rules for parameters. 3. Steps accept parameters just like options: <p:xslt parameters="{$parameters}"> ... or <p:xslt> ... <p:with-param name="parameters" select="map{'output-format' := 'xhtml'}"/> </p:xslt> 4. If a step has no bindings for any of its parameters options, then the bindings of the nearest enclosing pipeline are inherited. 5. All pipelines have at least one parameters option. If a p:declare-step does not specify any parameter options, then the pipeline has an anonymous parameters option that can only be accessed via the inheritance mechanism. 6. If a pipeline declares more than one parameters option, then it is en error to rely on the inheritance; each contained step must specify a binding for each of its parameter options. 7. Inheritance can be explicitly blocked by specifying the empty sequence as the value of the parameters option. 8. The XML serialization of parameters is still useful, so we keep that. 9. If a map-type option is passed an XML document that is a c:param-set, then it's automatically converted to a map. Maps have to be immutable, so we'll need to work through some of the details with care. Be seeing you, norm -- Norman Walsh Lead Engineer MarkLogic Corporation Phone: +1 512 761 6676 www.marklogic.com
Received on Wednesday, 5 December 2012 00:38:53 UTC