XPath est un langage de requête utilisé pour extraire des données à partir de documents XML. Il permet de naviguer dans la structure d’un document XML et d’extraire les données nécessaires.
Voici quelques éléments clés d’un langage XPath :
- Les expressions XPath sont basées sur un modèle d’arborescence, qui permet de naviguer dans les éléments d’un document XML en utilisant des chemins d’accès spécifiques.
- Les expressions XPath utilisent des sélecteurs de nœuds pour identifier les éléments d’un document XML. Ces sélecteurs peuvent être des noms d’éléments, des attributs, des valeurs de nœuds ou des prédicats.
- Les expressions XPath peuvent également utiliser des opérateurs logiques pour combiner des sélecteurs de nœuds et filtrer les résultats.
<?xml version="1.0" encoding="UTF-8"?>
<catalogue>
<livre id="livre1">
<titre>Le Petit Prince</titre>
<auteur>Saint-Exupéry, Antoine de</auteur>
<genre>Conte philosophique</genre>
<prix>12.99</prix>
<date_parution>1943-04-06</date_parution>
<description>Le Petit Prince est une œuvre de langue française, la plus connue d'Antoine de Saint-Exupéry.</description>
</livre>
<livre id="livre2">
<titre>Les Misérables</titre>
<auteur>Hugo, Victor</auteur>
<genre>Roman historique</genre>
<prix>9.99</prix>
<date_parution>1862-03-16</date_parution>
<description>Les Misérables est un roman de Victor Hugo paru en 1862. Il est considéré comme l'un des chefs-d'œuvre de la littérature française.</description>
</livre>
</catalogue>
Voici quelques exemples d’expressions XPath pour extraire des données de ce document :
//livre
: sélectionne tous les éléments « livre » dans le document./catalogue/livre[1]/titre
: sélectionne le titre du premier livre dans le document./catalogue/livre[@id="livre2"]/auteur
: sélectionne l’auteur du livre ayant l’attribut « id » égal à « livre2 ».//livre[prix < 10]/titre
: sélectionne le titre de tous les livres ayant un prix inférieur à 10.//livre[contains(genre, "philosophique")]/titre
: sélectionne le titre de tous les livres dont le genre contient le mot « philosophique »
Il existe de nombreux outils XPath disponibles pour faciliter l’extraction de données à partir de documents XML, tels que les navigateurs web, les bibliothèques de programmation et les outils de test automatisé , par exemple avec SELENIUM