XmlSpy

Un article de Agora2ia.


logo_web_spy.gif


Sommaire

Fiche

Produit XmlSpy
Société Altova
Version 2005 (au 13/11/2004)
Prix Voir paragraphe 'Tarifs'.
Catégorie EditeurIntegre sur les technologies XML qui se présente également sous forme de plugin depuis la version 2005.
Mots clefs Setup, install, installer, installeur, Windows, compréssion, déploiement, livraison, intégration continue.
WikiName EnvironnementDeDeveloppement, EditeurIntegre, PlateformeIdeale, XML, WebServices


Présentation

Quel que soit le langage, tout développeur a souvent un IDE (EditeurIntegre) de prédilection. Pour ma part, pour travailler en XML, j'ai utilisé XmlSpy, le best seller de la société Altova.


Cette société-éditeur commercialise depuis 1998 divers outils pour travailler sur l'ensemble des téchnologies XML :

  • MapForce, un environnement pour gérer les fichiers plats, XML et les BasesDeDonnees et permet de générer le code de mapping adéquat (et même de XML à XML).
  • StyleVision, un outil de génération de formulaires éléctroniques transformant du XML et des données en fichiers HTML, PDF, Word (à noter que InfoPath n'est pas supporté). Ici aussi, on bénéficie du XSLT 2, Xpath 2.
  • Authentic un éditeur XML gratuit afin d'explorer rapidement les données des documents XML.
  • et XmlSpy.


Interface graphique de XmlSpy

xmlspy.png

Fonctionalités

Il s'agit d'un EditeurIntegre orienté XML et ses technologies connexes (HTML, DTD, SchemaXml, XSL, WSDL...), aux fonctionnalités diverses et variées...

Fonctionalités générales

  • La notion de projet et de fichier associé (équivalent des workspace de Microsoft VisualStudio, et du .dsw) qui permet de visualiser l'ensemble des fichiers sous forme arborescente, regroupée par dossier (par défaut XML, XSL, HTML, DTD/Schemas et Entities).
  • On peut également synchroniser les fichiers source avec un gestionnaire de version. En effet, XmlSpy supporte notamment Microsoft Visual SourceSafe et CVS : l'extraction et l'archivage (check-in et check-out) sont intégrés à l'IDE.
  • La coloration syntaxique, et la complétion automatique, sont également de la partie, ce qui est un moindre mal pour un langage verbeux comme XML !
  • Des documents types peuvent être créés dans des technologies variées, XML et autres : ASP, CSS, DTD, SVG, VoiceMl et bien d'autres documents encore, notamment XML (aux DTD variées). On peut par exemple, en deux clics de souris, disposer d'un nouveau document XML DocBook de type <book>, avec ses principales balises.
  • Pour ce type de documents, associés à une DTD-schéma, XmlSpy indique les balises et attributs que l'on peut ajouter en un noeud donné : je ne parle plus de complétion automatique, mais bien d'une analyse de la structure du document, ce qui n'est vraiment pas un luxe quand on travaille sur des structures aussi étoffées que DocBook par exemple.
  • Enfin, XmlSpy offre 5 vues différentes pour tout type de document XML, et notamment la minimale vue texte brut, mais aussi la vue "grid" qui porte bien son nom (!) ou encore la vue "browser" qui donne un aperçu instantané de ce que l'on obtiendrait après transformation.

Fonctionalités XSL

Pour les fonctionnalités XSL, XmlSpy permet notamment

  • De choisir le processeur XSLT à utiliser parmi celui fourni par d'XmlSpy lui-même, celui de Microsoft, ou encore un script de lancement (tolérant ainsi n'imposte quel processeur).
  • Mais la cerise sur le gâteau des fonctionnalités, est assurément le debugger XSL. Comme tout debugger, il permet de poser des points d'arrêt, de parcourir le code à mesure de l'exécution, d'obtenir alors la valeur de variables XSL.

Seule ombre au tableau : il vous faudra disposer d'une importante résolution d'écran, comme pour tout IDE multi-fenêtres. Mais cela est d'autant plus vrai que le langage considéré (XML) est ici très verbeux (oubliez la sacro-sainte "ligne de 80 caractères"). De plus, par défaut, le mode debug s'ouvre avec 3 fenêtres en mosaïque : le document XML d'entrée, le XSL de transformation et le HTML de sortie. Il faudra également prévoir une machine puissante pour subvenir aux besoins que nécessite le traitement d'un langage verbeux (décidément).

Fonctionalités WSDL, SOAP et WebService

ArticleTodo

XmlSpy offre également des fonctionalités concernant le langage WSDL et les WebServices :

  • Il offre une vue adaptée Schema/WSDL, qui permet une visualisation orientée fonctionelle du contenu d'un fichier WSDL.
  • Il permet également de solliciter un WebServices:
    • En indiquant tout d'abord un fichier WSDL,
    • Puis en choisissant dans ce dernier, parmi les requêtes disponibles, celle que l'on souhaite envoyer.
    • Il génère alors une requête par défaut au format SOAP.
    • Après avoir éventuellement modifié des valeurs de cette requête,
    • Et également l'URL du WebServices,
    • On peut envoyer la requête,
    • Et visualiser le réponse.

Evolutions avec la version 2005

Intégration avec Eclipse

ArticleTodo

Depuis la version 2005, il est possible d'intégrer la version que l'on a (Home, Professionnal ou Enterprise) a Eclipse...

http://www.altova.com/features_eclipse.html


Tarifs

XmlSpy existe en trois éditions :

  • une Home Edition, gratuite depuis la version 2004, mais déjà très utile,
  • une Professional Edition (qui permet notamment de debugger en XSLT) à 400 euros la licence, et
  • une Enterprise Edition à 800 euros la licence.

Pour un liste détaillée et comparée des fonctionnalités, reportez vous à la matrice des fonctionnalités disponible sur leur site, pratique et bien faite.

Conclusion

XmlSpy dans sa version gratuite est un bon outil si l'on souhaite éditer des fichiers XML, mais doit laisser place à une des versions payantes si l'on souhaite disposer d'une solution pertinente et efficace pour travailler sur un ensemble de technologies XML, que se soit l'ensemble du processus de transformation XSL (et notamment le debugger XSL), voire en environnement distribué ou via une base de données.