Le XML est un format de données basé sur du texte qui est notamment utilisé pour stocker des données et des échanges de données in­dé­pen­dants de toute pla­te­forme en ligne. Le XML constitue le fondement d’autres langages tels que le HTML et peut être lu aussi bien par des humains que par des machines.

Qu’est-ce que le XML ?

XML signifie « Ex­ten­sible Markup Language » (« langage de balisage ex­ten­sible » en français). Il s’agit d’un langage de balisage utilisé pour re­pré­sen­ter des données dans un fichier texte structuré, qui peut être évalué par des humains comme par des or­di­na­teurs. Ce méta langage a été développé par le World Wide Web Con­sor­tium dès 1998 et constitue désormais un élément vital du dé­ve­lop­pe­ment Web. La version actuelle du XML, sa cinquième édition, fut publiée en 2008. Le codage standard de ca­rac­tères des documents XML est UTF-8.

Les usages et fonctions du XML

Le XML peut être utilisé de multiples manières. Tout commence par la création d’un fichier XML, lequel cor­res­pond à un document texte doté de l’extension .xml, créé à l’aide d’un éditeur de texte. Pour qu’un document soit valide, vous devez adhérer à la syntaxe du langage. Ces documents peuvent être utilisés, par exemple, lorsque le HTML atteint ses limites. C’est souvent le cas, par exemple, avec les sitemaps de sites. Ici, un fichier sitemap.xml est créé.

Pour lire les documents XML, on a besoin de ce qu’on appelle un analyseur. Ce dernier offre une interface de pro­gram­ma­tion à travers laquelle les ap­pli­ca­tions peuvent accéder au document XML. L’accès se fait via :

  • DOM : le document XML est re­pré­senté sous la forme d’une ar­bo­res­cence et peut être ainsi lu. Il est également possible de modifier la structure en ar­bo­res­cence et d’écrire à la structure.
  • Pull-API : les données issues d’un document XML sont traitées de manière sé­quen­tielle et, la plupart du temps, sur la base d’évé­ne­ments.
  • SAX : le document XML est traité comme un flux de données sé­quen­tiel.

Un analyseur est en général inclus dans les na­vi­ga­teurs Web standard, ce qui simplifie la lecture des documents XML.

L’uti­li­sa­tion du XML

Le langage de balisage ex­ten­sible est utilisé à travers de nombreux domaines dif­fé­rents. À titre d’exemple, il peut être utilisé comme base pour d’autres langages. Le HTML (« Hypertext Markup Language ») est basé sur le XML. Le SVG, le format de fichier le plus populaire qui soit pour les gra­phiques vec­to­riels, a également pour socle le XML.

Néanmoins, l’intérêt du XML ne se limite pas au fait qu’il sert de base à d’autres langages. En dé­ve­lop­pe­ment Web, le XML pur est souvent utilisé pour con­fi­gu­rer des sitemaps de sites Web. De plus, le langage de balisage ex­ten­sible peut être utilisé pour créer des bases de données XML. Ces bases de données orientées documents sont plus flexibles que les bases de données re­la­tion­nelles et, sans surprise, très po­pu­laires.

Comment le XML est-il structuré ?

De prime abord, les documents XML res­semblent aux documents HTML. Ceci est dû au fait que le HTML est construit à partir du langage de balisage ex­ten­sible et utilise la même notation en accédant à dif­fé­rents attributs et tags.

Avec le XML, vous pouvez dis­tin­guer dif­fé­rents types de documents. Les documents XML centrés sur le document sont en majeure partie ac­ces­sible aux lecteurs humains sans in­for­ma­tions ad­di­tion­nelles et ne sont que quelque peu struc­tu­rés. Néanmoins, ceci réduit dras­ti­que­ment leur li­si­bi­lité par des machines. En un sens, les documents XML centrés sur les données peuvent être perçus comme leurs opposés. Leur haut niveau de struc­tu­ra­tion va de pair avec une bonne li­si­bi­lité par les machines. Pour les lecteurs humains, les documents centrés sur les données sont intuitifs, mais assez peu com­pré­hen­sibles. Fi­na­le­ment, à titre de compromis, il existe des documents dits semi-struc­tu­rés.

Le XML est-il un langage de pro­gram­ma­tion ?

Le langage de balisage ex­ten­sible est un langage de balisage qu’on ne peut qualifier de langage de pro­gram­ma­tion de plein droit. Il n’inclut pas de com­pi­la­teur XML, et il est im­pos­sible de créer des fichiers exé­cu­tables à l’aide du XML. Enfin, les langages basés sur XML ne sont pas con­si­dé­rés comme des langages de pro­gram­ma­tion.

Les dif­fé­rents éléments du XML

Les com­po­sants les plus im­por­tants du langage de balisage ex­ten­sible sont ce qu’on appelle les éléments. On peut définir leurs noms en toute liberté. Les éléments com­men­cent et s’achèvent par des tags. Pour déclarer l’élément « house » dans votre document XML, par exemple, le code res­sem­ble­rait à ceci :

<maison></maison>
Vous pouvez énumérer le contenu de la maison ici.
xml

Les éléments peuvent être imbriqués comme bon vous semble. Vous pouvez également ajouter des attributs aux éléments qui con­tien­nent des in­for­ma­tions ad­di­tion­nelles au sujet de vos éléments. Si vous souhaitez ajouter un toit et deux pièces nu­mé­ro­tées à votre maison, ceci modifiera le document XML comme exposé ci-dessous :

<maison></maison>
Vous pouvez énumérer le contenu de la maison ici.
	<toit></toit>
	Le toit de la maison.
	
	<numéro de="" la="" pièce="« 1 »"></numéro>
	La pièce 1 de votre maison.
	
<numéro de="" la="" pièce="« 2 »"></numéro>
	La pièce 2 de votre maison.
xml

Les numéros des pièces sont les attributs men­tion­nés pré­cé­dem­ment.

Les autres com­po­sants des documents XML peuvent être des com­men­taires sous la forme <!—contenu-du-com­men­taire-->.

Les entités XML

Vous pouvez accéder à des entités pré­dé­fi­nies avec le langage de balisage ex­ten­sible. Créer vos propres entités est tout aussi simple. Il s’agit de contenus spé­ci­fiques qui sont définis pour un usage ultérieur. D’autres documents XML peuvent être inclus à l’aide d’entités.

Parmi les entités im­por­tantes pour utiliser du XML, on retrouve par exemple <; pour le caractère < ou > pour le caractère >. Vous pouvez créer vos propres entités dans le document XML comme suit :

<!--ENTITY ex « Exemple d’entité »-->
xml

Le XML et le HTML : quelles dif­fé­rences ?

Le HTML, qui en est ac­tuel­le­ment à sa cinquième version avec HTML5, est basé sur le XML et semble, en apparence, très proche du langage de balisage ex­ten­sible. À la dif­fé­rence du HTML, il n’existe pas d’ensembles pré­dé­fi­nis d’attributs et de balises per­mis­sibles. Avec le XML, ceux-ci peuvent être définis par les pro­gram­meurs. Autre dif­fé­rence entre les deux : le XML est sensible à la casse. Enfin, le XML se distingue également par la nécessité de recourir à des balises fermées. Un saut de ligne com­men­çant par
en HTML donnerait
en XML.

Aller au menu principal