Où trouver DOM XML?
Vous pouvez installer Internet Explorer 5.0: l'analyseur MSXML.DLL en fait partie.
Exemple d'utilisation avec ASP
L'exemple suivant permet d'extraire en asp, les caractéristiques d'un élément contenu dans un fichier XML grâce au parser MSXML.DLL.
Le fichier XML : document.xml
<?xml version="1.0" encoding="ISO-8859-1" ?>
<news>
<titre>Valider une adresse email</titre>
<categorie>ASP TRUCS et ASTUCES</categorie>
<resume>Le code suivant vous permet de tester la validité d'une adresse email</resume>
<contenu><![CDATA[<font
color="#004080" face="Arial"><small>Pour valider une adresse email ...</small></font]]></contenu>
<auteur>Jean-christophe</auteur>
</news>
Note sur le fichier :
La section <![CDATA[ .... ]]> est utilisée pour éviter l'interprétation des balises html qui y sont contenues.
Tout ce qui se trouve à l'intérieure de cette section est interprété comme du texte ... et seulement du texte.
Ce fichier est très simple il contient un seul élément <news>..</news>, définit par 5 caractéristiques.
Le fichier asp : doc.asp
La déclaration d'un objet DOM s'effectue de la manière suivante :
set XmlDoc=server.createObject("Microsoft.XMLDOM")
(Pour que ceci fonctionne vous devez avoir soit IE5 soit télécharger le parser microsoft.)
<%
Response.Buffer = True
Dim xmlDoc
Dim titre,contenu,auteur,resume,categorie
'--- Création de l'objet XMLDOM
Set xmlDoc = Server.CreateObject("Microsoft.XMLDOM")
'--- On charge le document XML : document.xml
'-- le fichier document.xml est dans le même répertoire que doc.asp
if (xmlDoc.load (Server.MapPath(".")&"\document.xml")) then
'--- Si tout est OK
'--- On extrait les caractéristiques de l'élément news par leurs ordres d'apparition (index)
titre = xmlDoc.documentElement.childNodes(0).text
categorie = xmlDoc.documentElement.childNodes(1).text
resume = xmlDoc.documentElement.childNodes(2).text
contenu = xmlDoc.documentElement.childNodes(3).text
auteur = xmlDoc.documentElement.childNodes(4).text
else
'--- Si une erreur s'est produite
set xmlDoc = Nothing
response.write("Une erreur s'est produite pendant le chargement du fichier XML")
response.end
end if
set xmlDoc =Nothing
'--- On génère la sortie HTML
response.write ("titre : " & titre & "<br>")
response.write ("categorie : " & categorie & "<br>")
response.write ("resume : " & resume & "<br>")
response.write ("contenu : " & contenu & "<br>")
response.write ("auteur : " & auteur & "<br>")
%>