Attention : Le contenu de ces pages n'a pas été mis à jour depuis longtemps. Il est probablement obsolète pour Firefox 4.0/Gecko 4.0 et supérieur. Pour du contenu plus récent, allez consulter developer.mozilla.org.

Xforms

Les formulaires de l'avenir

XFORMS est le langage XML du W3C dont l'optique est de remplacer à terme les formulaires HTML (que j'appelerai ici les HTMLForms). Son objectif est de combler les nombreuses limitations de ceux-ci et de faciliter leur écriture en évitant la dépendance vis à vis d'un langage de script.

Les avantages de XForms sur HTMLforms

Liste non exhaustive :

  1. Dans la déclaration du formulaire, séparation entre d'une part les données et d'autre part les contrôles
  2. validation automatique coté client
  3. validation des types des données : on peut indiquer le format que doivent avoir chaque données saisies, via les datatypes de XmlSchema.
  4. interdépendance entre les contrôles de saisie
  5. Des contrôles plus nombreux
  6. envoi des données sous forme xml, "urlencodé" ou encore multipart etc.
  7. choix de la manière de traiter la réponse aprés envoi : le contenu de la réponse peut remplacer le document courant (comme avec HTMLForms), ou alors peut remplacer les données du formulaire, ou enfin cela peut être ne rien faire du tout.
  8. L'utilisation d'un formulaire XForms peut être faite dans n'importe quel fichier XML et n'est pas lié à XHTML.
  • *Tout ceci sans une seule ligne de code Javascript**. Même si le navigateur n'interprète pas de javascript, le formulaire sera ainsi totalement opérationnel.

Une meilleure intéraction entre le formulaire et les éventuels scripts est possible, grâce aux nombreux évènements de notification fournis par XForms. Un script peut ainsi être informé :

  1. quand un formulaire est sur le point d'être envoyé
  2. quand la réponse a été reçue
  3. quand le formulaire est recalculé, revalidé
  4. quand l'état d'une donnée change : quand elle devient active, inactive, lecture seule, modifiable, valide ou invalide vis à vis de son type etc..
  5. etc..

Documentation

Pour en savoir plus, voir les spécifications de Xforms sur le site du W3C.

Lire aussi ces tutoriels qui montrent les possibilités de XForms :

Présentation en anglais : http://skimstone.x-port.net/index.php?q=(..)

L'implémentation dans Mozilla.

L'implémentation de XForms dans Mozilla/Firefox est réalisée à 80% environ. Elle est livrée sous forme d'extension pour Firefox 2.0.

Exemples


Copyright © 2003-2013 association xulfr, 2013-2016 Laurent Jouanneau - Informations légales.

Mozilla® est une marque déposée de la fondation Mozilla.
Mozilla.org™, Firefox™, Thunderbird™, Mozilla Suite™ et XUL™ sont des marques de la fondation Mozilla.