Vous êtes sur la page 1sur 31

Université de Nice Sophia-Antipolis

UFR de Sciences

Travail d’étude
Licence Informatique
Année 2002 / 2003

Antoine Perroud & Sylvain Petrucci

Outils de développement XML

Enseignant responsable : Fabrice Huet


Table des matières

1 Introduction à XML 4
1.1 Les balises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 la DTD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Les Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.4 Le XSLT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.5 Le XPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2 Les différents IDE XML 8


2.1 XML Cooktop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.2 EditML Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.3 eXeed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.4 Peter’s XML Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.5 XML Edit Pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.6 XML Origin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.7 XML Content Express . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.8 Bonfire Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.9 XML Notepad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.10 Sydock Document Processor Standard Edition . . . . . . . . . . . . . . . . . . . . 18
2.11 XMLSpy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.12 XMLWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.13 Collaborative Markup Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.14 XMLShell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.15 Xerlin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.16 Morphon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.17 eXchaNGeR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.18 XMLware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.19 PSGML pour Emacs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.20 Tableaux récapitulatifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3 Conclusion 30

2
Introduction

SGML[1], prédécesseur de XML et HTML, fut adopté comme standard ISO[2] en 1986 et a
été la première tentative systématique de créer des documents électroniques, c’est-à-dire des docu-
ments papier sous forme électronique, la principale idée étant de séparer le contenu logique d’un
document de sa forme matérielle. SGML a été une percée, mais il était si complexe que sa manipu-
lation était réservée aux spécialistes. Le développement de la documentation en ligne, interactive,
presque parallèlement, a été la première forme de documentation à être purement électronique, et
avec elle est arrivée la popularisation des liens hypertextes. Mais cette forme de documentation
restait une aide, accessoire à la documentation papier.

XML[3] est un langage de mise en forme de documents grâce à des balises développé par le
W3C[4] dès 1996, essentiellement pour dépasser les limites du HTML. En effet, il arrive que les
pages ne soient pas identiques d’un navigateur Web un autre. HTML est un langage défini et figé1 .
XML, qui peut être considéré comme un métalangage2 , permet de définir ses propres balises afin
de décrire la présentation d’un document, ce qui introduit de nouvelles opportunités en matière
de programmation Web. La force de XML réside dans sa capacité à pouvoir décrire n’importe
quel domaine de données grâce à son extensibilité. XML sépare le contenu d’un document de sa
présentation ce qui permet par exemple d’afficher un même document sur des applications ou des
périphériques différents sans pour autant nécessiter de créer autant de versions du document que
de représentations nécessaires.

Le XML trouve diverses applications utiles dans un environnement Internet comme la mainte-
nance de gros sites Web, l’échange d’informations entre entreprises, le commerce électronique, les
livres électroniques pour les droits d’auteur et le copyright, simulation de base de données. XML
a aussi des applications au sein des entreprises comme la conception de solution personalisées,
les modèles de communication. Nous pouvons aussi envisager des formulaires officiels comme une
demande de permis de conduire qui serait traitée à par l’institution concernée et reliée á des infor-
mations pertinentes comme le service des casiers judiciaires ou encore le service des infractions du
code de la route.

Il est évident que le XML met en valeur la structure des documents. Nous allons poursuivre en
nous intéressant d’un peu plus près à quelques spécificités d’XML telles que la DTD et les Schema
qui sont des mécanismes décrivant la structure des documents, ou bien encore à XSLT qui permet
de convertir un document XML dans un autre format.

1 avec un nombre de balises limité


2 un langage qui permet de définir un autre langage

3
1
Introduction à XML

La syntaxe XML est simple. Elle comprend les mêmes caractéristiques que n’importe quel
langage à balises, a savoir des balises ouvrantes et fermantes, et des commentaires. Un document
XML peut être représenté comme une structure arborescente.

1.1 Les balises


Une balise est une chaı̂ne de caractère du type <balise>. Pour utiliser une balise, on place
du texte à formater entre une balise ouvrante et une balise fermante de la forme </balise>. Les
commentaires s’écrivent < !-- commentaire -->. Ainsi, un document XML se compose de deux
parties :

– l’entête :

< ?xml version="1.0" encoding="UTF-8" ?>

– le corps qui peut se lire sous forme d’arbre et ne comprend qu’une racine, ici <carnet-adresses> :

<carnet-adresses>
<entree>
<nom>
<prenom>Antoine</prenom>
<nomf>Perroud</nomf>
</nom>
<adresse>
<rue>rue Trachel</rue>
<code-postal>06000</code-postal>
<localite>Nice</localite>
<pays>France</pays>
</adresse>
<tel>6046540604</tel>
<email>perrouda@echo.unice.fr</email>
</entree>
<entree>
<nom>
<prenom>Sylvain</prenom>
<nomf>Petrucci</nomf>
</nom>
</entree>
</carnet-adresses>

Ce code déclare deux entrées d’un carnet d’adresses. XML extrapole la définition d’un carnet
d’adresse de la structure déclarée. Il y a cependant deux moyens de rendre cette structure plus
rigide. Il s’agit de la DTD[5] et des Schema[6].

4
1.2 la DTD
La DTD est une grammaire définissant un document XML. Cette pratique, héritée de SGML à
la demande d’IBM, est de moins en moins utilisée car limitée, nous verrons plus tard pour quelles
raisons. Le document en question n’est pas obligé d’utiliser une DTD, mais en écrire une permet de
limiter le document à certaines balises. C’est en fait un mécanisme permettant de décrire chaque
objet (élément, attribut, etc.) pouvant apparaı̂tre dans le document.

Voici un exemple de DTD définissant un carnet d’adresse :

< !ELEMENT carnet-adresses (entree*)>


< !ELEMENT entree (nom,adresse*, tel*, fax*, email*)>
< !ELEMENT nom (#PCDATA | prenom | nomf)*>
< !ELEMENT prenom (#PCDATA)>
< !ELEMENT nomf (#PCDATA)>
< !ELEMENT adresse (rue, code-postal, localite, pays)>
< !ATTLIST adresse courant (true | false) "false">
< !ELEMENT rue (#PCDATA)>
< !ELEMENT code-postal (#PCDATA)>
< !ELEMENT localite (#PCDATA)>
< !ELEMENT pays (#PCDATA)>
< !ELEMENT tel (#PCDATA)>
< !ATTLIST tel courant (true | false) "false">
< !ELEMENT fax (#PCDATA)>
< !ATTLIST fax courant (true | false) "false">
< !ELEMENT email (#PCDATA)>

Une adresse se compose d’une rue, d’un code postal, d’une localité et d’un pays. La syntaxe
DTD permet de définir simplement une telle adresse ainsi :
< !ELEMENT adresse (rue, code-postal, localite, pays)>

Un élément est une information que l’on désire utiliser et se déclare de la manière suivante, un
modèle étant une expression régulière :
< !ELEMENT Nom Modèle>

Il est possible d’ajouter des propriétés à un élément particulier en lui affectant un attribut, c’est
à dire une paire clé/valeur. Un attribut se déclare ainsi :
< !ATTLIST Elément Attribut Type>.

#PCDATA désigne une chaı̂ne de caractères.

Il faut ensuite ajouter en entête du document XML la ligne suivante signifiant la DTD que l’on
souhaite utiliser :
< !DOCTYPE carnet-adresses SYSTEM "carnet-adresses.dtd">

Les DTD on cependant quelques limitations. Les DTD utilisent une syntaxe spécifique différente
de XML, contrairement aux Schemas. De plus, elles ne permettent pas de typer les contenus et
n’intègrent pas les espaces de noms. Enfin, on ne peut faire de modélisation partielle avec la DTD,
ce qui signifie que la DTD doit être exhaustive dans la définition du document XML.

1.3 Les Schema


Un Schema a le même rôle qu’une DTD en ce qui concerne la définition de modèles. Il utilise
la syntaxe XML pour définir les modèles eux-mêmes. De plus, il permet de définir des contraines
incomplètes tout en s’intégrant à l’ensemble des spécifications W3C et en restant indépendant du
document XML.

Sur la figure 1.1, nous voyons la structure du document sous la forme d’un arbre. Il s’agit de

5
Fig. 1.1 – Schema du carnet d’adresses

la modélisation la plus simple d’un Schema. Les pointillés indiquent un élément optionnel. Nous
pouvons voir aussi que l’élément entree doit apparaı̂tre au moins une fois dans le document XML.

Un Schema étant écrit en XML, il en reprend donc la structure. Un Schema contient donc une
entête et un corps. Voici un exemple de définition d’un élément :

< ?xml version="1.0" encoding="UTF-8" ?>


<xs :schema xmlns :xs="http ://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs :element name="carnet-adresses">
<xs :complexType>
<xs :sequence>
<xs :element ref="entree" maxOccurs="unbounded"/>
</xs :sequence>
</xs :complexType>
</xs :element>
</xs :schema>

1.4 Le XSLT
Le langage de transformation XSL[7] permet de transformer la structure des éléments XML.
On appelle processeur le composant logiciel chargé de la transformation XSLT. XSL est défini avec
le formalisme XML, ce qui signifie qu’une feuille de style XSL est un document XML bien formé,
c’est à dire un document conforme à la syntaxe XML. XSL permet de modifier la structure d’un
document XML, ce qui permet de générer d’autres types de document (HTML, TEX, PostScript,
RTF ou XML). Le XSLT modifie l’arbre source du document XML en le transformant grâce à des
template rules contenues dans la feuille de style XSL afin de produire un arbre résultat.

Voici un exemple de feuille de style XSL qui se compose de deux parties, comme tout document
XML et qui définit les régles d’affichage en HTML d’un prénom contenu dans un carnet d’adresse :

– L’entête :

< ?xml version="1.0" encoding="UTF-8" ?>

– Le corps qui est compris entre les balises <xsl :stylesheet ...> et </xsl :stylesheet>,
ces balises encapsulant des balises <xsl :template> définissant les template rules nécessaires
à la transformation :

6
<xsl :stylesheet version="1.0"
xmlns :xsl="http ://www.w3.org/1999/XSL/Transform"
xmlns :fo="http ://www.w3.org/1999/XSL/Format">

<xsl :output method="html"/>


<xsl :template match="/">
<html>
<head><title>exemple</title></head>
<body><xsl :apply-templates/></body>
</html>
</xsl :template>
<xsl :template match="prenom">
<b>Prenom : </b><xsl :apply-templates/><br/>
</xsl :template>
</xsl :stylesheet>

L’exemple transforme le fichier XML en un fichier HTML dont le titre sera exemple. A chaque
fois que l’on rencontrera dans le carnet d’adresse un élément de type prenom, on écrira ”Prenom :”
en gras suivi du prénom contenu dans le fichier XML. Il faut ajouter la ligne suivante en entête du
document XML pour lui dire quelle feuille de style utiliser :
< ?xml-stylesheet href="fichier.xsl" type="text/xsl" ?>

1.5 Le XPath
Le XPath[8] est un langage qui permet d’adresser et de désigner des noeuds de l’arbre consti-
tuant un document XML. Il est conçu pour être utilisé par XSLT et XPointer[9]. XPath utilise
une syntaxe différente de celle du XML. Dans cette syntaxe, / désigne la racine du document. Le
chemin sera relatif au noeud courant s’il ne commence pas par /. S’il commence par //, le chemin
concernera toutes les sous-parties du document. Le caractère * remplace un niveau de hiérarchie.

Prenons un exemple de XPath. /carnet-adresses/entree/nom/prenom désigne <prenom>Antoine</prenom>


dans le document XML suivant :

<carnet-adresses>
<entree>
<nom>
<prenom>Antoine</prenom>
</nom>
...
</entree>
</carnet-adresses>

7
2
Les différents IDE XML

Un IDE est un environnement de développement permettant de simplifier l’utilisation d’un


langage donné. Un bon IDE doit permettre de gagner du temps par rapport à un éditeur de texte
classique. Nous recherchons alors des fonctions telles que l’extraction de DTD et de Schema depuis
un document XML, un débuger XSLT avec gestion des XPath, la vision en arbre et/ou en couleur
d’un document XML, la représentation graphique des Schema et la validation de documents. Nous
allons ici étudier différents IDE selon ces critères afin de déterminer leurs points forts et leurs
faiblesses.

Regardons maintenant dans le détail les fonctionnalités utiles qu’un IDE XML doit posséder :

– Code source éditable : un développeur XML peut avoir besoin d’accéder directement au code
source du document XML.

– Coloration syntaxique : c’est le fait de colorer les éléments de syntaxe XML. Cela rend l’édition
de code source considérablement plus claire, les erreurs étant plus faciles à repérer.

– Vue arborescente : cette vue est la représentation la plus claire d’un document XML et colle
parfaitement à sa structure. Une vue arborescente éditable permet de construire un document
d’une manière plus précise tout en conservant une vue d’ensemble du document.

– Vue navigateur : c’est l’affichage que l’on obtient en ouvrant un document XML dans un na-
vigateur. Cela permet de gagner du temps et de ne pas aller ouvrir son navigateur à chaque
fois que l’on souhaite vérifier une modification.

– Gestion du XSL : un IDE XML doit pouvoir permettre les transformations XSLT. Une feuille
de style XSL est compliquée à débugger et nécessite l’utilisation d’un débugger XSL.

– Gestion du XPath : cette fonctionnalité va en général de paire avec la gestion du XSL et per-
met de trouver rapidement une clé dans un document XML par l’intermédiaire de requêtes.

– Extraction de DTD / Schema : ces fonctionnalités permettent, comme leur nom l’indique,
d’extraire automatiquement une DTD ou un Schema d’un document XML. Cette DTD ou
ce Schema peuvent être réutilisés par d’autres documents XML.

– Validation de code : l’IDE vérifie que le document XML respecte sa DTD et son Schema.

– Autres fonctionnalités : certains IDE intègrent en plus un client FTP, permettent de convertir
un document d’un autre format en XML, peuvent se mettre à jour automatiquement, etc.

8
2.1 XML Cooktop
Version 2.5 beta gratuite
Plateforme : Windows
Editeur : XML Everywhere (xmlcooktop.com)

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Gestion du XSL
– Gestion du Xpath
– Extraction de DTD
– Validation de code
– Mise jour automatique
– Liens vers les tutoriaux XML (DTD, Schemas, Xpath, ...)

Points faibles :
– Pas de vue arborescente
– Pas de vue navigateur
– Pas d’extraction de Schema

Interface :

9
2.2 EditML Pro
Version 3.0 commerciale
Plateforme : Windows
Editeur : Netbryx Technologies (www.netbryx.com)

Fonctionnalités :
– Vue arborescente du document éditable
– Vue navigateur
– Extraction de DTD
– Extraction de Schema
– Validation de code
– Charge automatiquement la DTD et une previsualisation post XSLT
– Importe et convertit un fichier excel et/ou texte en XML valide avec extraction DTD et
Schema
– FTP

Points faibles :
– Pas de vue du code source
– Pas de gestion du XSLT
– Pas de gestion du XPath

Interface :

10
2.3 eXeed
Version 0.9 gratuite
Plateforme : Windows
Editeur : Toru Marumoto (www.toru.marumoto.net)

Fonctionnalités :
– Code source éditable
– Vue arborescente
– Validation de code

Points faibles :
– Pas de coloration syntaxique
– Vue arborescente non éditable
– Pas de vue navigateur
– Pas de gestion du XSLT
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

11
2.4 Peter’s XML Editor
Version 2.0 gratuit
Plateforme : Windows
Editeur : Peter Reynolds (www.iol.ie/˜pxe

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Vue arborescente
– Vue navigateur
– Validation de code
– Recherche de fichiers dans les disques locaux

Points faibles :
– Vue arborescente non éditable
– Pas de gestions du XSLT
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

12
2.5 XML Edit Pro
Version 2.0 gratuite
Plateforme : Windows
Editeur : www.daveswebsite.com

Fonctionnalités :
– Code source éditable
– Vue arborescente
– Vue navigateur
– Gestion du XSL
– Gestion du Xpath
– Validation de code

Points faibles :
– Pas de coloration syntaxique
– Vue arborescente non éditable
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

13
2.6 XML Origin
Version 1.11.0.58 commerciale
Plateforme : Windows
Editeur : TFI Technologies (www.xmlorigin.com)

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Vue arborescente
– Extraction de DTD
– Validation de code

Points faibles :
– Vue arborescente non éditable
– Pas de vue navigateur
– Pas de gestion de XSLT
– Pas de gestion du XPath
– Pas d’extraction de Schema

Interface :

14
2.7 XML Content Express
Version 1.89 Shareware
Plateforme : Windows
Editeur : Synoft Group (xce.synoft.com)

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Vue arborescente éditable
– Validation de code

Points faibles :
– Pas de vue navigateur
– Pas de gestion de XSLT
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

15
2.8 Bonfire Studio
Version 1.4 gratuite
Plateforme : Windows
Editeur : NZ Software (nzworks.com/bonfire)

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Vue arborescente
– Vue navigateur
– Validation de code
– Gestion de projet

Points faibles :
– Vue arborescente non éditable
– Pas de gestion de XSLT
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

16
2.9 XML Notepad
Version 1.5 beta abandonware
Plateforme : Windows
Editeur : Microsoft (www.msdn.microsoft.com)

Fonctionnalités :
– Vue arborescente éditable
– Validation de code

Points faibles :
– Code source non éditable
– Code affiché en noir
– Pas de vue navigateur
– Pas de gestion de XSLT
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema
– Abandonware

Interface :

17
2.10 Sydock Document Processor Standard Edition
Version 1.1.0.1 commerciale
Plateforme : Windows
Editeur : Sydock Software (www.sydock.com)

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Validation de code
– Importe et transforme des fichiers texte, word et base de donne en
– Assistant de creation de feuille de style et de schema

Points faibles :
– Pas de vue arborescente
– Pas de vue navigateur
– Pas de gestion de XSLT
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

18
2.11 XMLSpy
Version 5.4 commerciale
Plateforme : Windows
Editeur : Altova (www.altova.com)

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Vue arborescente éditable
– Vue navigateur
– Extraction de DTD
– Extraction de Schema
– Gestion du XSLT
– Gestion du XPath
– Validation de code

Points faibles :

– Uniquement sous Windows

Interface :

19
2.12 XMLWriter
Version 2.13 commerciale
Plateforme : Windows
Editeur : Wattle Software (xmlwriter.net)

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Vue arborescente
– Gestion du XSLT
– Validation de code
– Gestion de projet
– Liste toutes les balises (XML, DTD, Schema, XSLT)

Points faibles :
– Vue arborescente non éditable
– Pas de vue navigateur
– Pas de gestion du XPath
– Pas d’extraction de DTD

Interface :

20
2.13 Collaborative Markup Editor
Version 1.1.3 commerciale
Plateforme : Windows/Unix/Mac OS
Editeur : Topologi P/L (www.topologi.com)

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Gestion du XSLT
– Validation de code
– FTP
– Importe les fichiers RTF, les URL et les bases de donnée JDBC et ODBC
– Exporte en SGML

Points faibles :
– Pas de vue arborescente
– Pas de vue navigateur
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

21
2.14 XMLShell
Version 1.1 commerciale
Plateforme : Windows
Editeur : www.softgauge.com

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Vue arborescente éditable
– Vue navigateur
– Validation de code
– Choix du parser XML

Points faibles :
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

22
2.15 Xerlin
Version 1.3 beta 1 open source
Plateforme : Java
Editeur : The Xerlin Project (www.xerlin.org)

Fonctionnalités :
– Vue arborescente éditable
– Validation de code
– FTP

Points faibles :
– Pas de vue du code source
– Pas de vue navigateur
– Pas de gestion du XSLT
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

23
2.16 Morphon
Version 3.0 commerciale
Plateforme : Java
Editeur : Morphon Technologies (www.morphon.com)

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Vue arborescente éditable
– Gestion du XPath
– Validation de code
– Correcteur orthographique
– Montre les noeuds valides

Points faibles :
– Pas de vue navigateur
– Pas de gestion du XSLT
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

24
2.17 eXchaNGeR
Version 1.0 open source
Plateforme : Java
Editeur : xngr.org

Fonctionnalités :
– Code source éditable
– Vue navigateur
– Gestion du XPath
– Validation de code

Points faibles :
– Pas de coloration syntaxique
– Pas de vue arborescente
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

25
2.18 XMLware
Version 4.1 open source
Plateforme : Java
Editeur : Thierry Machicoane (www.chez.com/mustcorp/xmlware)

Fonctionnalités :
– Code source éditable
– Vue arborescente éditable
– Validation de code

Points faibles :
– Pas de coloration syntaxique
– Pas de vue navigateur
– Pas de gestion du XSLT
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

26
2.19 PSGML pour Emacs
Version alpha 1.3.1
Plateforme : GNU Emacs
Editeur : Lennard Staflin (www.lysator.liu.se/projects/about psgml.html)

Fonctionnalités :
– Code source éditable
– Coloration syntaxique
– Validation de code
– Masquage des balises
– Génération de balises

Points faibles :
– Pas de vue arborescente
– Pas de vue navigateur
– Pas de gestion du XSLT
– Pas de gestion du XPath
– Pas d’extraction de DTD
– Pas d’extraction de Schema

Interface :

2.20 Tableaux récapitulatifs

27
Nom Version Licence Plateforme Développeur Site
XML Cooktop 2.5 beta Gratuit Windows XML Everywhere xmlcooktop.com
EditML Pro 3.0 Commercial Windows Netbryx Technologies www.netbryx.com
eXeed 0.9 Gratuit Windows Toru Marumoto www.toru.marumoto.net
Peter’s XML Editor 2.0 Gratuit Windows Peter Reynolds www.iol.ie/˜pxe
XML Edit Pro 2.0 Gratuit Windows www.daveswebsite.com
XML Origin 1.11.0.58 Commercial Windows TFI Technologies www.xmlorigin.com
XML Content Express 1.86 Shareware Windows Synoft Group xce.synoft.com
Bonfire Studio 1.4 Gratuit Windows NZ Software nzworks.com/bonfire
XML Notepad 1.5 beta Abandonware Windows Microsoft msdn.microsoft.com
Sydock Document Processor
Standard Edition 1.1.0.1 Commercial Windows Sydock Software www.sydock.com

28
XMLSpy 5.4 Commercial Windows Altova www.altova.com
XML Writer 2.13 Commercial Windows Wattle Software xmlwriter.net
Collaborative
Markup Editor 1.1.3 Commercial Windows/Linux/Mac Topologi P/L www.topologi.com
XMLShell 1.1 Commercial Windows www.softgauge.com
Xerlin 1.3 beta 1 Libre Java The Xerlin Project www.xerlin.org
Morphon 3.0 Commercial Java Morphon Technologies www.morphon.com
eXchaNGeR 1.0 Libre Java xngr.org
XMLware 4.1 Libre Java Thierry Machicoane www.chez.com/mustcorp/xmlware
PSGML 1.3.1 alpha Libre GNU Emacs Lennard Staflin www.lysator.liu.se/projects/about psgml.html

Tab. 2.1 – Informations diverses concernant les IDE testés


Nom Code Couleur Vue Editer Vue XSL XPath Extraction DTD Extraction
visible source arbre arbre navigateur Schema
XML Cooktop ! ! ! ! !
EditML Pro ! ! ! ! !
eXeed ! !
Peter’s XML Editor ! ! ! !
XML Edit Pro ! ! ! ! !
XML Origin ! ! ! !
XML Content Express ! ! ! !
Bonfire Studio ! ! ! !
XML Notepad ! ! !
Sydock Document Processor
Standard Edition

29
! !
XMLSpy ! ! ! ! ! ! ! ! !
XMLWriter ! ! ! ! !
Collaborative
Markup Editor ! ! !
XMLShell ! ! ! ! ! !
Xerlin ! !
Morphon ! ! ! ! !
eXchaNGeR ! ! !
XMLware ! ! !
PSGML ! !
Tab. 2.2 – Gestion du XML
3
Conclusion

Il ressort de nos tests que XMLSpy est le plus performant des IDE XML que nous avons testé.
Malgré tout, il n’est pas parfait puisque réservé aux utilisateurs de Windows ayant les moyens de
s’offrir une licence avoisinant les 500 B
C.

Nous pouvons aussi remarquer que les logiciels gratuits en Java sont bien représentés. Leur
intérêt réside principalement dans le fait qu’ils tournent sur tous les OS et sont généralement libres.

Les IDE XML sont issus d’une volonté de simplifier la standardisation des différents formats
de documents. Le framework est une application pratique de ce principe puisqu’il s’agit de pou-
voir programmer sous un environnement quelconque tout en conservant une compatibilité entre
les différents modules, ces modules pouvant être programmés dans plusieurs langages différents.
C’est ce que Microsoft commence à faire avec son environnement .net, par exemple. Le XML peut
intervenir directement dans ce système en étant potentiellement le noyau rendant compatibles ces
diffénts langages.

30
Bibliographie

[1] Overview of SGML Resources. http ://www.w3.org/MarkUp/SGML.


[2] ISO 8879. http ://www.iso.org.
[3] Extensible Markup Language (XML). http ://www.w3.org/XML.
[4] World Wide Web Consortium. http ://www.w3.org.
[5] DTD - Définition de type de document. http ://www.mutu-xml.org/xml-base/shared/KEY-
DTD.html.
[6] W3C XML Schema. http ://www.w3.org/XML/Schema.
[7] XSL Transformations (XSLT). http ://www.w3.org/TR/xslt.
[8] XML Path Language (XPath). http ://www.w3.org/TR/xpath.
[9] XML Pointer Language (XPointer). http ://www.w3.org/TR/xptr.

31

Vous aimerez peut-être aussi