Models and Environments for Document-based Interaction and Authoring MEDIA

AXEL / AXEL Forms: Javascript libraries for XML authoring on the Web

AXEL (Adaptable XML Editing Library) is a client-side Javascript implementation of the XTiger XML template driven document editing specification. AXEL turns a Web page into an XML editor.

AXEL Forms is a Javascript library that adds form-based input components into web pages and dynamical authoring constraint validation at input time.

AXEL allows the creation of custom Meaning-Enabled Authoring Tools for any type of document, that can be run inside modern browsers (Firefox, Safari, Opera, Chrome, IE 8). Users can edit content and structure which is saved in an XML document, much like a form system allows to deploy form input. For instance, as shown in the distribution, it is straighforward to create a template for editing a Curriculum Vitae, or to create a template for editing scientific publications following the ACM format.

The system supports the creation of different types of editing user interfaces, from document-centric user interfaces that look like a printed document, to more data-centric user interfaces that look like a form.

For each type of document to edit, you simply need to create an XTiger XML template. The template is an XHTML document extended with a few elements and attributes that constrain the editing process and map the output to an XML target content model.

The integration of the library with a server backend is straighforward as it consists only in a small footprint cross-browser Javascript file. Template documents must be served as XHTML documents, and user generated content is exchanged as XML data. For instance we have successfully integrated the library with the Orbeon framework and the eXist database , with a WebDAV server to collaboratively edit the articles on AXEL presented at the DocEng 2010 and at the XML Prague 2010 conferences, but also with a mySQL relational database through a Ruby On Rails framework.

You can also use the library without any Web server , to create custom editors to be run in the browser, using the browser's API to load and save local files. The library also supports a plugin model to add new editing components written in Javascript to create more specific customized editors.


Bâtiment INF
Station 14
CH - 1015 - Lausanne
Tel: +41 21 693 64 98
Fax: +41 21 693 67 70