Dynamic Form Processing: A General Framework for Interactivity
John C. Mallery and Benjamin Renaud
Artificial Intelligence Laboratory
Massachusetts Institute of Technology
Keywords: Form-Processing, HTML3.0, Interactivity, Technology, Servers.
of The Second International Conference on The World-Wide Web, Chicago:
NCSA, October 17-20, 1994.
The paper describes an implemented system for automatic
form processing that structures user interactions according to an
extensible lattice of presentation
classes (an HTML3 extension to HTML
input types) and uses an explicit representation of forms and queries to
automatically recover from user input errors and to operate over multiple
transport media -- presently the World-Wide Web and
Major features include:
All form elements are represented as objects
supporting generic operations rather than characters in a flat HTML file.
Forms have a series of required and optional queries as well as some
descriptive text. In addition to a question or instructions, a query has an
class. This logical representation makes possible meta-level operations
such as automatic retries and delivery over multiple transport media.
- Extensible Presentation Classes: The framework offers both a wide
variety of standard presentation
classes, suitable for client-side parsing and validation, and a mechanism
for arbitrary extension of the class lattice by allowing server-side handling
of classes that require unusual or complex computations.
- Syntactic Validation: All query values are checked for syntactic
validity (including type consistency), always ensuring syntactically
valid inputs to backend computations.
- Semantic Validation: Between them, presentation classes and queries
provide semantic information that can ensure semantically valid
inputs (logical consistency) to backend computations.
- Automatic Retries: When syntactically or semantically invalid
input is detected by the server, the form processing architecture
automatically initiates a recovery dialogue with the user. The facility works
even as new presentation classes and query constraints are defined.
- Extended Dialogues: Hierarchical adaptive surveys are
implemented as specializations of Dynamic Forms and have been tested on over
1600 respondents. A native expert system selects the appropriate follow-up
survey for a respondent by applying IF-THEN rules to answers from
- Multiple Transport Media: The system currently operates over W3
over HTTP and ascii email via SMTP.
- No Code Duplication: Type-specific input parsers and presenters
are defined for each presentation class, and consequently, applications need
not rewrite them again, but can, if desired, define new presentation class to
extend the standard set.
- Graphical Form Authoring Tool: The authoring tool allows
developers to rapidly define and edit the forms or surveys for their
The Dynamic Form Authoring Tool maximizes ease and speed of interfacing
applications to the Web because it allows developers to specify very rapidly
the various constitutive elements of forms and queries, such as presentation
class, name, instructions, and other parameters. For queries, it allows a wide
choice of presentation classes, including all standard HTML input types and
over 32 presentation classes (such email address, country, postal code). In
addition, a modular representation of forms, queries, and presentation class
makes it possible for them to be shared across applications.
The research described here and its object-oriented implementation can help
guide the design of client-side input scripts and presentation classes in
HTML3. Towards the end of 1994, these tools will be available as add-ons to
Lisp Hypermedia Server.
This paper and the server was improved by comments from ?. This paper
describes research done at the Artificial Intelligence Laboratory of the
Massachusetts Institute of Technology. Support for the M.I.T. Artificial
Intelligence Laboratory's artificial intelligence research is provided in part
by the Advanced Research Projects Agency of
the Department of Defense under contract number MDA972-93-1-003N7.