XForms es un formato XML diseñado por el W3C para poder definir interfaces de usuario, principalmente formularios web. XForms se ha diseñado para ser la nueva generación de formularios HTML/XHTML, pero es lo suficientemente genérico como para usarse, de modo independiente, para describir cualquier interfaz de usuario e incluso para realizar tareas simples y comunes de manipulación de datos.

Firefox mostrando un formulario en XForms

Versiones editar

La especificación original de XForms se convirtió en recomendación oficial del W3C el 14 de octubre de 2003. Más adelante vinieron XForms 1.0 (Second Edition), recomendación oficial desde el 14 de marzo de 2006, y XForms 1.0 (Third Edition), que se publicó el 29 de octubre de 2007.

Desde el 20 de octubre de 2009 hasta hoy la recomendación oficial del W3C es XForms 1.1.

Soporte editar

Actualmente solo Opera es compatible de forma nativa con XForms. Sin embargo, existen varios complementos y extensiones que permiten usarlo en otros navegadores. Por ejemplo, Firefox admite XForms a través de una extensión. Para IE6 está formsPlayer, un complemento que amplía el navegador con soporte XForms, DOM 2 Events, DOM 3 XPath, XML Events y el DOM 3 Implementation Registry.

La versión 2.0 y superiores de OpenOffice.org son compatibles con XForms.

XForms también puede usarse a través de tecnologías de servidor que convierten el código de XForms a formularios de HTML en tiempo de ejecución y de manera transparente. Entre ellas se incluyen los proyectos de código abierto Chiba (ahora BetterForm) y Orbeon.

En 2006 se presentó una nueva herramienta, llamada AJAXForms, que transforma, en tiempo de compilación, documentos XHTML/XForms en páginas HTML con JavaScript, que sí entienden los navegadores actuales. Estas páginas gestionan, sin interactuar con el servidor, tanto la presentación como la lógica de la interfaz de usuario y su comunicación con el servidor se restringe al intercambio de datos utilizando técnicas AJAX.

XSLTForms transforma documentos XHTML/XForms en páginas XHTML con JavaScript en los navegadores con XSLT.

Enlaces externos editar