Skip to main content
Log in

PowerForms: Declarative client-side form field validation

  • Published:
World Wide Web Aims and scope Submit manuscript

Abstract

All uses of HTML forms may benefit from validation of the specified input field values. Simple validation matches individual values against specified formats, while more advanced validation may involve interdependencies of form fields. There is currently no standard for specifying or implementing such validation. Today, CGI programmers often use Perl libraries for simple server-side validation or program customized JavaScript solutions for client-side validation. We present PowerForms, which is an add-on to HTML forms that allows a purely declarative specification of input formats and sophisticated interdependencies of form fields. While our work may be seen as inspiration for a future extension of HTML, it is also available for CGI programmers today through a preprocessor that translates a PowerForms document into a combination of standard HTML and JavaScript that works on all combinations of platforms and browsers. The definitions of PowerForms formats are syntactically disjoint from the form itself, which allows a modular development where the form is perhaps automatically generated by other tools and the formats and interdependencies are added separately. PowerForms has a clean semantics defined through a fixed-point process that resolves the interdependencies between all field values. Text fields are equipped with status icons (by default traffic lights) that continuously reflect the validity of the text that has been entered so far, thus providing immediate feed-back for the user. For other GUI components the available options are dynamically filtered to present only the allowed values. PowerForms are integrated into the <bigwig> system for generating interactive Web services, but is also freely available in an Open Source distribution as a stand-alone package.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Apparao, V. et al. (1998), Document Object Model (DOM) Level 1 Specification, W3C Recommendation, http://www.w3.org/TR/REC-DOM-Level-1/.

  • Biron, P.V. and A. Malhotra (2000), XML Schema Part 2: Datatypes, W3C Working Draft, http://www.w3.org/TR/xmlschema-2/.

  • Brabrand, C., A. Møller, A. Sandholm, and M.I. Schwartzbach (1999), “A Runtime System for Interactive Web Services,” Computer Networks 31, 1391–1401; also in Proceedings of WWW8.

    Google Scholar 

  • Brabrand, C., A. Møller, A. Sandholm, and M.I. Schwartzbach (2000), “Designing a Language for Developing Interactive Web Services,” http://www.brics.dk/bigwig/research/publications/.

  • Bray, T., J. Paoli, and C.M. Sperberg-McQueen, Eds. (1998), Extensible Markup Language (XML) 1.0, W3C Recommendation, http://www.w3.org/TR/REC-xml.

  • Desborough, J. (1997), Cold Fusion 3.0 Intranet Application, International Thomson Publishing.

  • Girgensohn, A. and A. Lee (1997), “Seamless Integration of Interactive Forms into the Web,” In Proceedings of WWW6, http://www.scope.gmd.de/info/www6/technical/paper083/paper83.html.

  • Korpela, J. (2000), “JavaScript and HTML: Possibilities and Caveats,” http://www.hut.fi/u/jkorpela/forms/javascript.html.

  • Netscape Corp. (1999), “JavaScript Form Validation Sample Code,” http://developer.netscape.com/docs/examples/javascript/formval/overview.html.

  • Sandholm, A. and M.I. Schwartzbach (1998), “Distributed Safety Controllers for Web Services,” In Fundamental Approaches to Software Engineering, FASE'98, Lecture Notes in Computer Science, Vol. 1382, Springer, Berlin, pp. 270–284.

    Google Scholar 

  • xhtml-fml.html.

  • Schnitzenbaumer, S., M. Wedel, and D. Raggett, Eds. (1999b), XHTML Extended Forms Requirements, W3C, http://www.w3.org/TR/xhtml-forms-req.html.

  • html/papers/P40/Overview.html.

  • Webb, M. and M. Plungjan (2000), “JavaScript Form FAQ Knowledge Base,” http://developer.irt.org/script/form.htm.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Brabrand, C., Møller, A., Ricky, M. et al. PowerForms: Declarative client-side form field validation. World Wide Web 3, 205–214 (2000). https://doi.org/10.1023/A:1018772405468

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1018772405468

Keywords

Navigation