Un langage de structure
XML

Bureau d'études - Electronique

Présentation Vers tête de chapitre



XML (eXtensible Markup Language) : l'acronyme inévitablement tiré de l'anglais importe peu, bien que pour une fois le nom décrive exactement ce dont il s'agit : un langage à balises "Markup" et "eXtensible" parce que contrairement à la plupart des langages, l'utilisateur peut définir lui-même ses propres noms de balises.

La forme la plus commune de balise est constituée d'un mot clef entouré d'un chevron ouvrant et d'un chevron fermant comme par exemple  <toto> ; elle ouvre un champ d'information qui sera refermé par une balise de fermeture de même nom et notée  </toto>



Exercice 1 : Copiez l'exemple ci-dessous dans le fichier "exemple XML.xml", puis lancez le fichier pour l'afficher dans le browser.

<?xml version="1.0" encoding="iso-8859-1" ?>


<Pensée_du_moment> Quelle joie de découvrir XML ! </Pensée_du_moment>

Le résultat de l'affichage dans le browser n'est pas très spectaculaire ...


XML impose la première ligne du fichier composée d'une balise particulière caractérisée par la syntaxe <? ..... ?>, ce qui permet d'informer le browser, de la version normalisée XML utilisée et du jeu de caractères.

Le nom d'une balise peut être composé de lettres (minuscules ou majuscules), de chiffres et de trois caractères autorisés (point, soulignement, trait d'union), mais doit toujours commencer par une lettre ou le caractère de soulignement. Du fait que le nom ne peut pas inclure le caractère espace, pour les noms composés il est d'usage d'utiliser les styles suivants : PenséeDuMoment, ou pensée-du-moment, ou pensée_du_moment, ou  ...

Il est fortement conseillé de se choisir un style personnel et ensuite de s'y tenir pour éviter les confusions.




Exercice 2 : Copiez l'exemple ci-dessous dans le fichier "exemple XML.xml", puis rafraîchir la page du browser pour afficher la nouvelle version du fichier.

<?xml version="1.0" encoding="ISO-8859-1" ?>


<monde>
	<continent> 
		<pays> France </pays>
		<pays> Italie </pays>
		<lac> Léman </lac>
	</continent>

	<continent> 
		<pays> Canada </pays>
		<pays> USA </pays>
		<pays> Brésil </pays>
	</continent>

	<océan> Atlantique </océan> 
	<océan> Pacifique </océan> 

</monde>

Un champ d'information introduit par une balise peut contenir du texte, ou d'autres balises pour former une arborescence, mais il ne doit y avoir qu'une seule balise racine pour servir de cadre général au document, comme dans cet exemple la balise <monde>.

Le browser utilise pour l'affichage de l'arborescence, une présentation qui lui est propre avec des signes manipulables + et - qui permettent d'ouvrir ou de fermer les différentes parties du document.




Exercice 3 : Copiez l'exemple ci-dessous dans le fichier "exemple XML.xml", puis rafraîchir la page du browser pour afficher la nouvelle version du fichier.

<?xml version="1.0" encoding="ISO-8859-1" ?>


<monde>
	<continent nom="Europe" > 

		<pays nom="France" langue="le français" >
 			<superficie> 675 417 km2 </superficie>
			<population> 63 195 000 </population>
		</pays>

		<pays nom="Italie" >
		</pays>

	</continent>

	<continent nom="Amérique" > 

		<pays nom="Canada" />		<!-- commentaire -->

	</continent>

</monde>

Est appelé attribut, un élément ajouté dans le corps d'une balise ouvrante ; il s'écrit sous la forme NomAttribut="Donnée"

Remarquez la ligne <pays nom="Canada" />. Une balise ne contenant pas d'information, qu'il y ait des attributs ou non, peut s'écrire <toto></toto>, ou plus simplement <toto />.

La présentation (indentation, lignes vides) est importante pour aérer et améliorer la lisibilité d'un document. Ajouter des commentaires dans le fichier peut également être intéressant, en XML un commentaire s'écrit avec la syntaxe spécifique <!-- un commentaire -->.



En guise d'exercice final, modifiez maintenant le fichier à votre guise, il est important de s'approprier le langage. Faites des essais, ajoutez des informations, faites volontairement des erreurs dans le fichier telles qu'oubli de fermeture d'un chevron, attribut mal écrit, nom de la balise fermante différente de la balise ouvrante ... Vous pourrez constater que le browser signale les erreurs.




Conclusion :

XML est utilisé dans les domaines de la gestion d'informations, et sert de base à la définition de nombreux langages applicatifs. Ceux intéressés d'une manière plus approfondie par le XML et ses développements, consulteront la vaste littérature qui existe sur le sujet. Pour nous, ces quelques rudiments nous permettent immédiatement d'aborder le sujet suivant : Un langage d'affichage : HTML.