W3C home > Mailing lists > Public > public-forms@w3.org > May 2011

XML Transformations within XForms

From: Philip Fennell <Philip.Fennell@marklogic.com>
Date: Wed, 25 May 2011 07:19:21 -0700
To: "public-forms@w3.org" <public-forms@w3.org>
Message-ID: <D20C296D14127D4EBD176AD949D8A75A678796D7@EXCHG-BE.marklogic.com>
Having written some things in the wiki:

<http://www.w3.org/MarkUp/Forms/wiki/Transform>
< http://www.w3.org/MarkUp/Forms/wiki/The_XForms_Transform_Function_Module>

and thought a whole lot more about applying transformation to XML instances from within XForms I have come to a number of conclusions:

1.      All use cases boil down to one particular action: 'apply a transform to an instance prior to doing something else', and it is how the result of that transform is 'piped' to a destination and how the following behavior is triggered that is what actually differs.
2.      I think we're all in agreement that the variety of transformation methods (XSLT, XProc and XQuery) pose their on specific questions as to how you are going to invoking a transform given that the way you invoke them varies considerably. Shame on the various working groups for not coordinating on a common invocation strategy, unless, that is, you consider XProc's p:xslt and p:xquery steps as the pattern for doing such things. At least there is commonality in the definition of serialization.
3.      The more I look at what is required to apply a transformation with all its parameters/arguments, as either action or function, the more I see it as a bold relation of xf:submission rather than being akin to an xf:insert action. Submissions have just about all the characteristics of a transform: there is the resource that identifies the action (transform) there is both source and destination nodeset bindings, encodings and media-types, parameters (in the form of HTTP headers) and suitable notification events for start, end and error states.
4.      The transform function can be seen, by how concise it can be, as an optimization of a transform action; it cuts-out a lot of the intermediate 'rigging' that you need to do so it can be thought of as more declarative. However, given the greater complexity that we have uncovered, and the complications in defining such things that it would surely make sense to work on the optimization of an operation after we have properly defined the full scope of the operation which can be more easily expressed as an XForms action.

Regards

Philip Fennell
Consultant
MarkLogic Corporation

One Kingdom Street
Paddington Central
London W2 6BD
United Kingdom

Mobile: +44 (0) 7824 830 866
Tel:    +44 (0) 203 402 3619

email  Philip.Fennell@marklogic.com<mailto:Firstname.Lastname@marklogic.com>
web    www.marklogic.com<http://www.marklogic.com/>
Received on Wednesday, 25 May 2011 14:19:46 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 1 October 2013 22:06:55 UTC