- · Niveau : DÉBUTANT
- · Compatibilité : IE 5+ / Netscape 6+
Malgré que la recommandation XML date d’à peine 4 ans, c’est en 1967 que William Tunicliffe proposa pour la toute première fois la séparation du contenu et de la présentation. Deux ans plus tard, le «Generalised Mark-up Language (GML)» de Charles Goldfarb introduisit l’ère des SGML, qui devint un standard en 1986, trois ans avant la création du WWW et du HTML.
Destiné à l’organisation et à la manipulation de textes, le SGML, par la suite le «HyperText Markup Language» (HTML), ce sont développés jusqu’au XML (Jon Bosak, 1996). Le World wide web Consortium (W3C), créé deux ans plus tôt, ajouta en 1998 la recommandation du «eXtensible Markup Language» (XML) et de ces rejetons, le «Synchronized Multimedia Integration Language» (SMIL) en 1998, le «Extensible HyperText Markup Language» (XHTML) en 2000 et enfin le «Scalable vector Graphics» (SVG) en 2001. Entre autres...
Le XML est un langage descriptif. Originaire du SGML, il s’illustre lui aussi à l’aide de balise. La différence avec le HTML se situe au niveau de sa capacité à s’auto-structurer dans sa façon de décrire l’information. Alors que ce dernier se contente de formater une information pèle mêle. En d’autres mots, la balise XML décrit l’information qu’elle jalonne alors que le HTML détermine la façon de présenter l’information qu’il balise. Voici une représentation de la coexistence des deux langages.
Le rôle du XML se limite donc à reproduire une base de données ou une arborescence. Mais attention, certaines données sont plus aptes que d’autres au XML. Je vous invite à lire le tutoriel sur les performance du XML.
Structure du XML
<descriptionGénérale>
<sousDescription>
Données ou informations
</sousDescription>
<sousDescription>
Données ou informations
</sousDescription>
</descriptionGénérale>
Utilisation du XML
Mis à part l’utilisation du Javascript, un moteur doit ouvrir le document XML, le traiter et le convertir en XHTML. Nous verrons plus loin plusieurs techniques ou moteurs disponibles. Un script ASP ou PHP peut combiner des documents XML/XSL. Flash de Macromedia manipule très bien le XML (sans XSL toute fois). Même les derniers navigateurs en sont capables, parfois directement imbriqué dans un document HTML (Data Islands). Ce qui m’amène à glisser un mot sur les langages XSL, XSL-FO, XSLT, XLink, XPointer et bien d’autres... Tous utilisés pour manipuler ou encore présenter un document XML.
- XML Path Language (XPath)
Système de ciblage pour trouver et pointer des données dans l’arborescence. Utilisé par la plupart des langages XML.
- XSL, XSLT, XSL-FO
Le Extensible Stylesheet Language (XSL), le XSL Transformations (XSLT) et le XSL Formatting Objects (XSL-FO) font partie du même document communément appelé XSL. Le XSL spécifique aux styles (un genre de feuilles de style XML). Alors que le XSLT et le XSL-FO permettent de transformer les données.
- XML Linking Language (XLink) et (XPointer)
À l’image du hyperlien HTML mais aller retour. XLink est une structure de balises imbriquées à même un document XML.
- Mathematical Markup Language (MathML) et le tout dernier XForms 1.0 (août 2002).
Le nom indique bien leur rôle, spécifiquement créé pour gérer des formules mathématiques ou un formulaire web.
Enfin, plusieurs applications qui n’ont rien à voir avec le Web utilisent le XML pour le stockage ou encore comme format d’exportation/importation. Le XML a aussi son lot d’éditeur, voir à la fin la liste de mes meilleurs liens XML.
Conclusion
Le XML permet donc de décrire l’information. Un système de balise entourant les données dans une arboressance "intelligente". J’insiste sur "intelligente" parce que c’est là que réside le secret du XML. Au-delà des détails techniques que nous allons voir, l’art de faire du XML est principalement l’analyse de sa structure, propre à chaque cas. Bien que son usage soit accessible, le XML est un des langages les plus intuitifs ou la simplicité se cache souvent au fond d’un long processus de résonnement...
Cette série de tutoriels en trois volets commence par les bases du document XML lui-même. Pour ensuite passer aux XSL et le XSLT, question de transformer notre document en format XHTML. Et finalement la manipulation côté serveur avec les langages ASP et ActionScript.