XFormsDB: An Extensible Web Application Framework Built upon Declarative W3C Standards

Markku Laine, Denis Shestakov, Petri Vuorimaa
Department of Media Technology, Aalto University, Finland
{markku.laine, denis.shestakov, petri.vuorimaa}@aalto.fi


Most Web applications are based on a conventional three-tier architecture, in which the presentation, application logic, and data management are developed and maintained in separate tiers. The main disadvantage of this architecture is that it requires expertise in multiple programming languages, programming paradigms, and data models used in each tier. A single expert rarely masters all the technologies and concepts involved. In this paper, we introduce a tier-expanding architectural approach that unifies the client-side (presentation tier) and server-side (logic and data tiers) programming under a single model. We base our approach on a W3C-standardized client-side markup language, XForms, and its server-side extension proposed in this paper. We derive the extension requirements from the literature and use cases, and demonstrate their functionality on the example of a blog Web application. We also show how the extension can be implemented as part of a comprehensive Web application framework called XFormsDB. The XFormsDB framework is an extensible Web application framework built upon declarative W3C standards. It has four major advantages: (1) one programming language, (2) one data model, (3) based on W3C-standardized declarative markup, and (4) extensibility in all tiers. Our conclusion is that expanding the presentation tier to cover both application logic and data management functionality makes both the development and maintenance of small- and medium-sized Web applications easier.1


Web Framework, Web Application, Web Development, Declarative Language, XForms.



XFormsDB Blog is a real-world web application taking advantage of the XFormsDB framework.
Online demo: http://testbed.tml.hut.fi/blog/


XFormsDB is released under the terms of the MIT license.


 author = {Laine, Markku and Shestakov, Denis and Vuorimaa, Petri},
 title = {XFormsDB: An Extensible Web Application Framework Built Upon Declarative W3C Standards},
 journal = {SIGAPP Appl. Comput. Rev.},
 issue_date = {September 2012},
 volume = {12},
 number = {3},
 month = sep,
 year = {2012},
 issn = {1559-6915},
 pages = {37--50},
 numpages = {14},
 url = {http://doi.acm.org/10.1145/2387358.2387361},
 doi = {10.1145/2387358.2387361},
 acmid = {2387361},
 publisher = {ACM},
 address = {New York, NY, USA},
 keywords = {XForms, declarative language, web application, web development, web framework},


This research work was conducted as part of TIVIT’s Flexible Services program and its Ecosystem Design and Evolution (EDEN) project. The funding for this project was granted by Tekes and Nokia Research Center.