Easy-Micro

ESPACEMEMBRE XML
XML DOM

Le Document Object Model XML

Le DOM (Document Object Model) permet aux programmes et scripts d'accéder et de modifier dynamiquement le contenu, la structure et le style de documents XML.

Objectif de cet atelier
Transformer les données XML et XSLT en HTML avec JavaScript.

On utilise les fichiers "macompile.xml" et "macompile.xsl" des ateliers XSL.

Voici donc le fichier HTMLà recopier et à tester en direct (sans ce soucier du fichier xml)
<html>
<body>
<script type="text/javascript">

// chargement du fichier XML
var monxml = new ActiveXObject("Microsoft.XMLDOM");
monxml.load("macompile.xml");

//chargement du fichier XSL
var monxsl = new ActiveXObject("Microsoft.XMLDOM");
monxsl.load("macompile.xsl");

//Transformation du XML en HTML
document.write(monxml.transformNode(monxsl));
</script>
</body>
</html>

Explication: Le script charge le fichier XML (madisco.xml) grace au Parser XMLDOM, c'est à dire l'analyseur XMLDOM.

Rappel: le DOM (Document Object Model) est une recommandation du W3C, décrivant un jeu d'interfaces permettant de manipuler un document XML par le biais d'un modèle objet. C'est un procédé mis au point par le W3c (www.w3.org) afin d'établir une norme pour assurer une compatibilité parfaite entre les principaux navigateurs du marché.

Le XMLDOM est appelé via la création d'un nouvel objet ActiveX.
Rappel: ActiveX est une technologie Microsoft d'extraction de données. Pour chaque possibilité de liaison de données, il y a différents modes de données. Pour chacun de ces modes de données existe un contrôle ActiveX déterminé.

Ensuite le script charge le fichier XSL en mémoire "macompile.xsl" et enfin le script transforme le document XML selon le fichier XSL et rédige le tous sous forme d'un fichier HTML. transformNode est une fonction prenant en paramètre le document XML (DOMdocument) comme la feuille de style, et renvoyant sous forme de chaîne le résultat de la transformation. Plus de problème de compatibilité entre les différents navigateurs. Génial non ?

Pour aller plus loins...
Voir la DOM XML sur MSDN


< Page précédente XML Page suivante >