Fil d'Ariane
Mis à jour le jeudi 10 août 2017
  • 20 heures
  • Facile

Ce cours est visible gratuitement en ligne.

Ce cours existe en livre papier.

Ce cours existe en eBook.

Vous pouvez obtenir un certificat de réussite à l'issue de ce cours.

J'ai tout compris !

Qu'est-ce que le XML ?

Connectez-vous ou inscrivez-vous pour bénéficier de toutes les fonctionnalités de ce cours !

Voici donc le tout premier chapitre de la longue série que va comporter ce tutoriel.

Je vous propose de tout d'abord faire connaissance avec cette technologie maintenant âgée de plus de 10 ans. Ce premier chapitre sera donc l'occasion de découvrir ce qu'est le XML, son origine et les besoins auxquels cette technologie devait répondre au moment de son élaboration.

Qu'est ce que le XML ?

Première définition

Citation

Le XML ou eXtensible Markup Language est un langage informatique de balisage générique.

Cette définition est à mes yeux quelque peu barbare et technique, c'est pourquoi, je vous propose d'en décortiquer les mots-clefs.

Un langage informatique

Vous n'êtes pas sans savoir qu'en informatique, il existe plusieurs centaines de langages destinés à des utilisations très diverses.

En vulgarisant un peu (beaucoup !), il est possible de les regrouper en 3 grandes catégories :

  • Les langages de programmation.

  • Les langages de requête.

  • Les langages de description.

Les langages de programmation permettent de créer des programmes, des applications mobiles, des sites Internet, des systèmes d'exploitation, etc. Certains langages de programmation sont extrêmement populaires. En mai 2012, les 10 langages de programmation les plus populaires étaient le C, le Java, le C++, l'Objective-C, le C#, le PHP, le Basic, le Python, le Perl et le Javascript.

Les langages de requêtes permettent quant à eux d'interroger des structures qui contiennent des données. Parmi les langages de requête les plus connus, on peut par exemple citer le SQL pour les bases de données relationnelles, le SPARQL pour les graphes RDF et les ontologies OWL ou encore le XQuery pour les documents XML.

Enfin, les langages de description permettent de décrire et structurer un ensemble de données selon un jeu de règles et des contraintes définies. On peut par exemple utiliser ce type de langage pour décrire l'ensemble des livres d'une bibliothèque, ou encore la liste des chansons d'un CD, etc. Parmi les langages de description les plus connus, on peut citer le SGML, le XML ou encore le HTML.

Un langage de balisage générique

Un langage de balisage est un langage qui s'écrit grâce à des balises. Ces balises permettent de structurer de manière hiérarchisée et organisée les données d'un document.

Si vous ne savez pas ce qu'est une balise, ne vous inquiétez pas, nous reviendrons sur ce terme un peu plus loin dans le cours. ;)

Le terme générique signifie que nous allons pouvoir créer nos propres balises. Nous ne sommes pas obligés d'utiliser un ensemble de balises existantes comme c'est par exemple le cas en HTML.

Une nouvelle définition

Après les explications que nous venons de voir ensemble, je vous propose une nouvelle définition du langage XML bien moins technique que la première donnée au début de ce cours.

Voici donc cette nouvelle définition : le langage XML est un langage qui permet de décrire des données à l'aide de balises et de règles que l'on peut personnaliser.

Certaines notions peuvent encore vous sembler abstraites, mais ne vous inquiétez pas, tout sera expliqué dans la suite de ce tutoriel. ;)

Origine et objectif du XML

La petite histoire du XML

Vous vous doutez bien que le langage XML n'a pas été créé dans le simple but de s'amuser. Sa création avait pour objectif de répondre à un besoin très précis : l'échange de données.

Aux débuts d'Internet, les ordinateurs et les programmes échangeaient des données en utilisant des fichiers. Malheureusement, ces fichiers avaient bien souvent des règles de formatage qui leur étaient propres. Par exemple, les données étaient séparées par des points, des virgules, des espaces, des tirets, etc.

Le problème avec ce système est qu'il fallait sans cesse adapter les programmes au format du fichier ce qui représentait une charge de travail importante.

Il a donc fallu régler ce problème rapidement. Le langage SGML ou Standard Generalized Markup Language est alors né. C'est un langage puissant, extensible et standard qui permet de décrire à l'aide de balises un ensemble de données. Mais ce langage, très complexe, n'était pas forcément compatible pour effectuer des échanges sur le web.

Un groupe d'informaticiens ayant de l'expérience dans le SGML et le web a alors décidé de se pencher sur le sujet. Le langage XML est donc né. Le XML 1.0 est devenu une recommandation du W3C (le "World Wide Web Consortium") le 10 février 1998.

Depuis, les spécifications du langage ont évolué, et la version 1.1 a été publiée le 4 février 2004. C'est pourtant la version 1.0 du langage XML qui est encore la plus utilisée aujourd'hui et c'est cette version que nous allons étudier dans ce tutoriel.

Les objectifs du XML

Comme nous l'avons vu, l'objectif du XML est de faciliter les échanges de données entre les machines. A cela s'ajoute un autre objectif important : décrire les données de manière aussi bien compréhensible par les hommes qui écrivent les documents XML que par les machines qui les exploitent.

Le XML se veut également compatible avec le web afin que les échanges de données puissent se faire facilement à travers le réseau Internet.

Le XML se veut donc standardisé, simple, mais surtout extensible et configurable afin que n'importe quel type de données puisse être décrit.

En résumé

  • Le XML a été créé pour faciliter les échanges de données entre les machines et les logiciels.

  • Le XML est un langage qui s'écrit à l'aide de balises.

  • Le XML est une recommandation du W3C, il s'agit donc d'une technologie avec des règles strictes à respecter.

  • Le XML se veut compréhensible par tous : les hommes comme les machines.

  • Le XML nous permet de créer notre propre vocabulaire grâce à un ensemble de règles et de balises personnalisables.

Exemple de certificat de réussite
Exemple de certificat de réussite