Article publié dans:
Standards, modèles, formats d’échange...
le jeudi 1er février 2007 à 11:59
par
Maud
Lu 3549 fois
| 12 commentaire(s)
NB : pour expérimenter les xForms, il faut un navigateur qui les implémente, par exemple Firefox muni de l’extension xForms(la Fondation Mozilla annonce que cette fonctionnalité sera native dans la prochaine version de Firefox) |
A l’occasion du projet d’archive Desanti, nous explorons la piste xForms pour fabriquer l’interface de saisie des notices (merci Bernard pour cette idée lumineuse ;o). Puisque, in fine, nous devons fournir des fichiers xml, ça nous paraissait une bonne occasion d’essayer...
La question de la collecte et du traitement d’informations se pose à tout webmestre et développeur d’applications. Sur ce point, xForms, recommandation du w3c en matière de formulaires, parait une piste très sérieuse pour les sites et les applications web. Pour une entrée en matière partisane mais précise et concrète, voir par exemple xForms versus Ajax : un-zéro plus ici un rappel des risques que présente Ajax en matière de sécurité
La puissance d’xForms vient de ce que, depuis l’affichage des formulaires jusqu’à la récolte des résultats en passant par les contrôles de saisie, tout se fait en n’écrivant QUE des déclarations XML : zéro php, zéro js, zéro jsp... La seule contrainte réside dans le fait que la page doit être du xHTML, et non du HTML simple, puisqu’elle doit être du XML.
Si j’ai compris l’esprit, il s’agit d’exploiter à plein son navigateur web qui est par nature une machine à parser et à manipuler du xml en exprimant les données, les contraintes et les modalités d’affichage en XML (+ xPath etc.) plutôt que de recoder toute ces opérations dans son langage préféré... De plus, avec xForms, un formulaire est une instance que l’on peut créer à partir d’une source externe (un autre fichier xml...) Bref, des possibilités en cascade, apparemment. Voir notamment
Editer n’importe quel document XML
Méthodes de soumission des données
Contrôles de saisie
Pour utiliser la fonctionnalité ’sauver dans un fichier’, télécharger le xForms et l’ouvrir en local dans Firefox ("ouvrir un fichier")
Un fichier contenant les résultats sera généré au même emplacement que le xForm
Ca y est, après un petit laps de temps qui a paru long, le greffon xForms est disponible pour Firefox 3 :
Bonjour,
Je m’occupe du projet XSLTForms (http://www.agencexml.com/xsltforms/) qui a pour objet la conversion de XForms en XHTML+Javascript à l’aide de XSLT. Son intérêt est qu’il est utilisable directement sur le navigateur sans module complémentaire.
J’aimerais bien avoir votre avis à son sujet.
Bien cordialement,
Alain COUTHURES
A lire sur hackademix.net
D’abord merci Julien pour le débog du formulaire Desanti !
Trouvé dans dans le projet xsl4xForms (téléchargeable sur sourceForge) : une xsl qui génère un xForms "automatique" à partir de la structure de l’objet xml que l’on manipule...
Autant dire que la tâche est grandement facilitée pour lier entre eux les modèles, les instances, écrire les balises bind et submission, etc...
en test dès aujourd’hui (que ne l’ai-je vu avant...)
Voici la version zéro de l’interface de saisie des notices pour l’archive Desanti, en xForms
Prochaînement (si tout va bien) une version complétée avec possibilité de créer de nouvelles notices + contrôles d’intégrité + envoi des notices terminées par mail.
Certes xForms c’est le bonheur, mais nager dans le bonheur ça reste toujours nager... alors si certain-es ont déjà eu l’occasion de mettre le nez dedans, je suis très partante pour profiter de vos lumières !
Mes tests sont à l’adresse ci dessous, et je décris les bugs et les problèmes au fur et à mesure en commentaire html (ils sont donc lisibles dans le source de la page) :
http://ens-web3.ens-lsh.fr/mingarao/archiveDesantiTests/index.xml
Rappel : n’oubliez pas de charger le addon xForms dans votre Firefox pour voir quelque chose !
Rappel : le tuto qui m’a aidée à démarrer
Lu dans
Cadre commun d’interopérabilité Volet 2 : Échange et présentation des documents © Gouvernement du Québec,
Standard du gouvernement du Québec
sur les ressources informationnelles, Version 1.3, 31 mars 2005
Les formulaires sont des documents qui alimentent systématiquement en données les processus
d’affaires, traités dans le volet 1. Ils occupent ainsi une position clé pour l’interopérabilité.
Cependant, leur développement est actuellement très largement dépendant du langage de script
utilisé par le développeur et du média sur lequel ils sont complétés.
Un développement stratégique récent du W3C est XForms 1.0, qui vise des améliorations par
rapport à ce qui sous-tend les formulaires HTML, en particulier par la séparation claire du
contenu, de la présentation et de la logique d’interaction, par un surcroît de structuration des
éléments de données, par la capacité multilingue et par le maintien de contexte pour l’utilisateur.
En particulier, XForms est un langage qui vise à réduire dans une large mesure le recours à des
scripts et à permettre l’interaction dans tous les types de médias.
D’après la décomposition du W3C, XForms repose sur quatre concepts :
l’interface utilisateur fournit un ensemble de contrôles visuels (ex. : « Input » définit une
ligne saisie et « Textarea » définit une zone de saisie) qui visent à remplacer les contrôles de
formulaires HTML et XHTML. Ces contrôles sont utilisables directement dans les documents
XML comme XHTLM ou SVG ;
les instances de formulaires XML collectent les données par l’utilisateur. Ce sont ces
instances qui alimentent les processus d’affaires (ex. : circuits documentaires) ;
le modèle XForms décrit la structure, laquelle peut s’appuyer sur le schéma XML du
formulaire ;
le protocole de soumission de XForms définit la manière dont le processeur XForms envoie et
reçoit les données. »
La création d’un fichier xml récupérant les données du formulaire fonctionne lorsqu’on on lit le fichier xForm directement sans interprétation http (c’est à dire par
file :///cheminSurVotreOrdi/nomDuFichier.xml
et non par
http://localhost/chemin/nomDuFichier.xml)
Le fichier dont le nom est spécifié par la balise de soumission file:
est bien créé. Je joins le fichier xForm dans le corps de l’article pour test. Le fichier créé s’appellera par défaut ’resultatNotice.xml’ et sera situé dans le même répertoire que le fichier xForm mais vous pouvez changer son nom et son lieu ligne 114
ET
ligne 140
Reste donc maintenant à imaginer tout l’environnement utilisateur complètement en local et sans le secours de php ou java : création, modification ou suppression de fichier avant l’envoi définitif (qui pourra se faire par mail puisque ça, ça marche). Ca veut dire donc attribution dynamique de nom de fichier, rechargement d’une notice en cours dans le formulaire... Pas simple !