templates vs. components

Has the working group considered <xform:template match=""> as an alternative
to <xform:component>?

I think that the template/match model of XSL might be very useful for XForms
as well, especially as a means for componentization and repeating
structures. 

In my opinion the current spec has the drawback to require the UI to be
distinctively described all the way down from the root of the model down to
the leafes (tell me if I'm wrong). 
Using template/match allows to create components that are automatically
instantiated without the need of an explicit <xform:use-component>. 

for instance we might:

 - have only one template that renders any number of 
   different model items in a common way (match="*")

 - have one template for each datatype
   (e.g. match="*[type='string']"

 - have different templates depending on locales
   (e.g. match="address[property(locale)='US']"
...

The match attribute's XPath expression must have access to both, the model
and the instances. This allows to precisely act upon the final form
presentation with a minimum effort of markup (everybody who uses XSL
probably knows how neat it works).


I'm not sure which technique XForms processor implementors are expected to
use, but as XForms now includes XPath, XSL would probably be the best
choice. So <xform:template> may be processed directly through <xsl:template>
somehow. This magnificently reduces coding and processing efforts. Isn't it
a great deal to use the same syntax in different namespaces and for
completely differnt tasks with a predictable effect?


Thanks, Matthias

Received on Thursday, 29 March 2001 04:30:42 UTC