XRX/Selection List Management

From Wikibooks, open books for an open world
Jump to navigation Jump to search


[edit | edit source]

You want every selection list in your form to be customized to the context of the situation. Selection lists need to be dynamically generated by a series of context aware services on the web server.


[edit | edit source]

XForms are powerful because they can load all the codes in a form from a single instance in the model.

This for instance, if you would like to customize what selection lists are displayed to a user based on their role or other property in their session, such as what department or group they are associated with.


[edit | edit source]

This can be done by using session variables stored on the server. You can alternatively store the user in a cookie on the client and then use this information to look up the correct information.

Assume you have an XML file that associates a user with their roles:


These roles can be in a session variable (see session) or you can have a function that looks up the role from the LoginID.

When the forms load, a script can be executed that loads all the code tables into an instance in the model:

   <xf:instanace src="all-codes.xq?LoginID=jdoe"/>

Back: Data Element Editor Next: Customizing Selection Lists