UI representations of data model

Hi there, 
I'm currently working on a project which involves me implementing an
XForms-like processing engine.

I'm interested in a couple of things - the current state of the XForms spec.
and any work done on the UI parts of the XForm spec (especially representing
elements in the data model to the user and how current HTML Form mappings can
be represented using the XForm datamodel and UI split).

The current implementation is split into a data model view (heavily based on
the April working draft but incorparating XML Schema types and restraints) and
a UI model I came up with (basically multiple page representations of data
models - a form is a graph of pages with submit buttons being directed links
between page nodes in the graph - to allow wizard like forms as well as
traditional single page forms).

What I'm really interested in is how people see the mapping between data model
elements and their representation in the UI (and visa versa).

For example (using current HTML Forms to get data from a user) a string data
type is pretty simple - it maps straight onto the current Form <input
type="string"> element. 

But how is <input type="password"> represented in the datamodel/UI split? Is
the password quality just a UI dependent representation of a string or is
password ie. something like:
<datamodel>

<xform:string name="user_password">

.....

<ui>

<input name="user_password" hidden="yes"/>

OR:

<xform:string name="user_password" secret="yes" encrypt="yes"/>

sort of thing?

A similar thing happens with multi line strings (<textarea> elements in HTML).
Should it be:
<xform:string name="user_description"/>
....
<input name="user_description" multiline="yes"/>

or

<datamodel>
<xform:string name="user_description" multiline="yes"/> (infact should multiline
even need to be specified?)

I'm tending towards the former representation in both cases. Both the propertys
password and multiline seem like UI dependent issues (although whether
a string can be multiline could be a restriction on the string data type).

Has anyone done any work with this sort of thing? What sort of ideas are people
coming up with here? 

Andy

Received on Sunday, 29 October 2000 21:12:12 UTC