De puis pas mal de temps, je suis avec attention l'évolution de l'implementation de XForms dans Mozilla Firefox. C'est en effet doublement intéressant car :

  1. Firefox 1.5 sera le premier navigateur qui supportera en natif les formulaires XForms (ou quasi natif puisque xform sera livré sous forme d'extension). Ce que je veux dire par là, c'est que l'on pourra intégrer des formulaires xforms dans n'importe quel fichier XML (xhtml par exemple). Alors qu'aujourd'hui, avec les quelques implémentations qui existent, il faut soit un client spécifique, soit installer un plugin et fournir le formulaire dans un fichier séparé (bref, mettre une balise object dans son fichier xhtml).
  2. Xforms apporte énormément d'améliorations par rapport aux formulaires HTML, surtout pour les développeurs.

Par exemple, XForms a des caractéristiques qui évitent le recours à des scripts additionnels dans nombre de cas, comme la validation automatique coté client. Il soulage ainsi le développeur de certaines tâches répétitives.

Une autre de ses caractéristiques qui me réjouit, c'est la possibilité de contrôler ce qui sera fait aprés envoi des données du formulaire. On peut ainsi préciser qu'il y ait un comportement comme un formulaire HTML classique (remplacement du document courant par le contenu de la réponse), mais aussi que le contenu de la réponse remplacera les données du formulaire, ou encore qu'il faille ignorer la réponse. Par exemple, on peut imaginer ce comportement : l'utilisateur cliquera sur le bouton d'envoi, les données saisies seront vérifiées puis envoyées, et c'est tout. La page ne bougera pas. Il est possible bien sûr de faire un script qui sera executé aprés envoi du formulaire pour modifier deux trois trucs dans la page par exemple. Ce qui laisse la porte ouverte à votre imagination (et donc plus de liberté dans vos applications web).

J'ai crée sur Xulfr une page dédiée à XForms. J'y ai mis entre autre une petite liste des avantages de XForms par rapport aux formulaires HTML (Si vous voulez compléter, n'hésitez pas).

Pour tester la Preview 2 de Xforms :