- From: Erik Siegel <erik@xatapult.nl>
- Date: Mon, 18 Nov 2013 08:18:23 +0100
- To: <public-xml-processing-model-comments@w3.org>
- Message-ID: <002101cee42e$5fe16a80$1fa43f80$@xatapult.nl>
Hi, This mail contains my comments on the "XProc V2.0 Requirements - W3C First Public Working Draft 5 November 2013" at <http://www.w3.org/TR/xproc-v2-req/> http://www.w3.org/TR/xproc-v2-req/. My involvement with XProc has been short but quite intense. In a few weeks I wrote a rather large conversion application with XProc as the "binding" language. Most of the conversion work itself is done with XSLT. I wrote comments about the sections I think I have something to say about. Sections I don't mention I have no opinion about. Regards, Erik Siegel Xatapult erik@xatapult.nl +31 6 53260792 _____ Section 2.1 Simplify parameters: Yes, please. I never liked nor used the whole concept of parameter ports a lot, especially after I discovered the (somewhat hidden) <p:with-param> instruction. So if XProc 2 wants to abandon parameter ports, fine with me. There is one nuisance left: When you don't have any parameters to pass (I'm talking about XSLT here), you still have to specify or an empty parameter port or at least a single <p:with-param> instruction. But most XSLT's don't have parameters... So can we make this optional? Section 2.2 Integrate non-XML documents into pipelines That would be useful, although I'm happy with the current situation that allows binary documents to pass as <c:data>. So are we getting <p:image-conversion> steps? When non-XML data becomes a "first class citizen", things like the cx:decode attribute on a <p:store> must become a more integral part of the standard (and not an extension). Section 2.5 Allow arbitrary XDM values in variables Yes, please. It would also be nice when strict type checking is introduced here (like in XSLT). So you can speccify something as as="element(a)". Assigning something else than an <a> must then raise an error. Section 2.6 Allow attribute value templates Yes, yes, yes. Section 2.7 Support a variety of syntactic simplifications Ok, as long as this accompanied by a thorough and clear specification of which simplifications are possible an what they mean. Otherwise it will be very confusing. Section 3.2 Associate arbitrary metadata with documents Well, sounds like a superfluous thing. When you need metadata, just wrap the document in another element and add the metadata there. Remove when no longer needed. Section 3.4 Provide improved status information Yes, something like the XLST <xsl:message>? Section 3.5 Provide a mechanism for importing user-defined functions Yes, please. Maybe import XSLT stylesheets or XQuery modules that define user defined functions? But maybe also: Define XPath functions within XProc itself? Section 3.7 Write a primer If you ever need a (ghost? co?) writer, mail me. Section 3.8 Consider using XDM everywhere Why not. It would make the language much more consistent. Section 3.10 Consider additional steps and enhancements Yes please. I use the zip, file and os related stuff a lot. it would be very convenient if this became part of the core. About p:zip, I have an additional request which actually surprised me that it was not part of the current pxp:zip proposal: On a current pxp:zip, you specify the contents of a zip in a manifest. Fine, but why doesn't this manifest allows you to specify Xproc steps/ports as input for a file in the zip? Maybe exactly like you specify the connection for an input port? Now you have to pass all your input XML through one port and select on base-uri, very awkward. Much simpler if you could specify something like: <c:entry name="file.xml"> <pipe step="some-step" port="result"/> </c:entry> Same with inline, document, etc. Or maybe in shorthand: <c:entry name="file.xml" step="some-step" port="result"/>
Received on Monday, 18 November 2013 14:07:16 UTC