paulb@76 | 1 | Warnings:
|
paulb@76 | 2 |
|
paulb@92 | 3 | * Various browsers (eg. Mozilla/Firefox, Konqueror) will not allow the
|
paulb@92 | 4 | XMLHttpRequest in-page updates to function unless the application URL
|
paulb@92 | 5 | defined within the Configurator application (and other relevant
|
paulb@92 | 6 | applications) matches the URL at which the browser finds the application.
|
paulb@76 | 7 |
|
paulb@76 | 8 | --------
|
paulb@76 | 9 |
|
paulb@28 | 10 | Steps for making a new application:
|
paulb@28 | 11 |
|
paulb@92 | 12 | 1. Design a template, adding forms and fields. In the beginning, it is not
|
paulb@92 | 13 | that important to use the correct names in each of the fields - these
|
paulb@92 | 14 | will be added later.
|
paulb@28 | 15 |
|
paulb@92 | 16 | 2. Add structural template attributes such as template:element,
|
paulb@92 | 17 | template:attribute and template:value so that the fields sit in different
|
paulb@92 | 18 | parts of the input document format being modelled. Replace the field
|
paulb@92 | 19 | names with special functions such as template:field-name(). For buttons
|
paulb@92 | 20 | which add and remove parts of the input document, employ selector
|
paulb@92 | 21 | notation and the template:this-position() function.
|
paulb@28 | 22 |
|
paulb@92 | 23 | 3. Where multiple choice fields are employed, input documents must be
|
paulb@92 | 24 | transformed so that the multiple choice options are included in the
|
paulb@92 | 25 | output. This can be achieved using documents containing the different
|
paulb@92 | 26 | option values and transformations which insert those values into the
|
paulb@92 | 27 | input document.
|
paulb@28 | 28 |
|
paulb@92 | 29 | 4. To produce the output document, the template needs preparing first so
|
paulb@92 | 30 | that an output stylesheet is produced; then, the output stylesheet is
|
paulb@92 | 31 | applied to the processed input document utilising various extension
|
paulb@92 | 32 | functions which produce the computed field names in the final output
|
paulb@92 | 33 | document.
|
paulb@28 | 34 |
|
paulb@28 | 35 | Recommendations:
|
paulb@28 | 36 |
|
paulb@28 | 37 | * Where multiple fields exist and can be added and removed, put them
|
paulb@28 | 38 | inside a separate element so that the selectors can successfully
|
paulb@28 | 39 | identify them. Otherwise, changing element orders can result in the
|
paulb@28 | 40 | wrong element being selected.
|
paulb@28 | 41 |
|
paulb@28 | 42 | * Make sure that transformations on the input document produce all the
|
paulb@28 | 43 | necessary elements for the output document so that the resulting page
|
paulb@28 | 44 | gives the user the opportunity to specify data that is missing.
|