Essayons d'apprendre une syntaxe XPath de base en regardant quelques exemples.
Le XML Exemple de document
Nous utiliserons le document XML suivant dans les exemples ci-dessous.
"Books.xml":
<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book category="COOKING">
<title lang="en">Everyday Italian</title>
<author>Giada De Laurentiis</author>
<year>2005</year>
<price>30.00</price>
</book>
<book category="CHILDREN">
<title lang="en">Harry Potter</title>
<author>J K. Rowling</author>
<year>2005</year>
<price>29.99</price>
</book>
<book category="WEB">
<title lang="en">XQuery Kick Start</title>
<author>James McGovern</author>
<author>Per Bothner</author>
<author>Kurt Cagle</author>
<author>James Linn</author>
<author>Vaidyanathan Nagarajan</author>
<year>2003</year>
<price>49.99</price>
</book>
<book category="WEB">
<title lang="en">Learning XML</title>
<author>Erik T. Ray</author>
<year>2003</year>
<price>39.95</price>
</book>
</bookstore>
Voir le "books.xml" fichier dans votre navigateur .
Chargement du document XML
En utilisant XMLHttpRequest pour charger des documents XML est pris en charge dans tous les navigateurs modernes.
Code pour la plupart des navigateurs modernes:
var xmlhttp=new XMLHttpRequest()
Code pour les anciens navigateurs Microsoft (IE 5 and 6) :
var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
Sélection de nœuds
Malheureusement, il existe différentes façons de traiter avec XPath dans Internet Explorer et d'autres navigateurs.
Dans nos exemples, nous avons inclus le code qui devrait fonctionner avec la plupart des principaux navigateurs.
Internet Explorer utilise les selectNodes() méthode pour sélectionner des noeuds du document XML:
xmlDoc.selectNodes( Firefox, Chrome, Opera et Safari utilisent l' evaluate() méthode pour sélectionner des noeuds du document XML:
xmlDoc.evaluate( Sélectionner tous les titres L'exemple suivant sélectionne tous les nœuds de titre:
Sélectionnez le titre du premier livre
L'exemple suivant sélectionne le titre du premier noeud de livre sous l'élément de librairie:
Sélectionnez tous les prix
L'exemple suivant sélectionne le texte de tous les nœuds de prix:
Sélectionnez les nœuds de prix avec le prix> 35
L'exemple suivant sélectionne tous les noeuds de prix avec un prix supérieur à 35:
Sélectionnez les nœuds de titre avec le prix> 35
L'exemple suivant sélectionne tous les nœuds de titre avec un prix supérieur à 35: