Le XML est arrivé à point pour répondre à des besoins de communication entre les applications avec un langage format texte. Il répond, en outre, à ce vieux rêve de clairement séparer le contenu de la présentation. Avec le XML, la présentation et le contenu deviennent réutilisables dans différents contextes (web, archives, flux, téléphonie mobile...).

Un peu d'histoire...

Le XML est un langage de balises comme le HTML. Ces deux langages sont issus d'un ancêtre commun le SGML. Le SGML était trop complexe pour se répandre, alors est né le HTML qui en est une simplifcation et qui caractérise aussi bien une forme (<font>, <p>, <b>...) qu'un contenu (<title><script>...), utilisant la navigation par hyperliens. Le HTML a fait exploser la production de pages sur l'internet grâce à sa simplicité et à la tolérance des navigateurs quant à la grammaire des balises pour la restitution de ces pages. Face à la prolifération des informations, voire à leur saturation, il a fallu trouver une façon de caractériser leur contenu pour une communication plus pointue et c'est là qu'intervient le XML.

Qu'est-ce que le XML ?

Le XML est un langage de balises, donc il utilise des fichiers texte. Il peut être affiché par les navigateurs récents. La plupart du temps l'application XML se compose de trois fichiers : le fichier DTD (.dtd), une feuille XSLT(.xsl) et le fichier XML proprement dit (.xml).

Le fichier XML est formé de balises comme l'exemple ci-dessous :

<fiche>
<img src="jeandupond.jpg"/>
<prénom>Jean<prénom>
<nom>Dupont</nom>
<adresse>16, rue du Pont Louis-Philippe</adresse>
<codepostal>75004</codepostal>
<ville>Paris</ville>
</fiche>

Chaque balise ouvrante renvoie à une balise fermante rigoureusement positionnée pour encadrer symétriquement des données, excepté la balise img qui, ici, se termine par "/" du fait que c'est un élément isolé.

Le fichier XML doit avoir la bonne forme. Si vous choisissez des capitales pour nommer les balises, vous devrez vous y tenir, qu'elles soient ouvrantes ou fermantes. Vous allez donc créer un fichier de DTD dans lequel vous consignerez les règles que vous donnerez à vos balises. Il servira à valider votre fichier et à repérer les erreurs de syntaxe. Vous pourriez ainsi vous décidez que telle balise est obligatoirement à l'intérieur de telle autre balise...

Un fichier XML est un fichier brut de données, sans aucune présentation mais ponctué de balises, il sera donc accompagné d'un fichier XSLT. Ce fichier de présentation est parcouru et interprété par une application serveur qui va fusionner les fichiers pour fabriquer une page résultat. Le langage XSLT est déconcertant pour tout programmeur formé aux langages procéduraux ou à objets. Il est basé sur la création de règles de modèle (template) à partir du fichier source. C'est sur l'arbre résultat que les transformations se font pour présenter les données d'une manière lisible et agréable pour tout un chacun.

Conclusion

Le XSLT est un langage de type XML qui utilise la syntaxe et la sémantique d'un autre langage nommé XPath. Tout cela forme un vrai langage de programmation qui permet de créer des processus de grande complexité. Le XML est en train de devenir le vecteur universel de communication et de structuration des données. La plupart des langages ont, implémentés dans leur offre, un ou plusieurs modules XML (Java, PHP, Python, C#, C, ASP...). Cette galaxie XML (XML, XSLT, XPath, XMLFO...) est devenu désormais incontournable pour permettre à la grande hétérogénéité de l'informatique de converger.

Quelques liens francophones

 
 
 
 
Accueil ~ développeur ~ formateur ~ auteur ~ mes livres ~ mes voisins ~ réflexions sur le web ~ présentation du XML ~