XPath
Cette section décrit les expressions XPath que vous pouvez utiliser avec Talend Cloud API Tester.
Pour plus d'informations sur la syntaxe XPath (en anglais), consultez les spécifications W3C officielles (en anglais). Vous pouvez également trouver un évaluateur en ligne XPath à l'adresse suivante : Free Formatter website (en anglais). Notez que les expressions XPath ont une syntaxe similaire à celle d'un chemin d'accès à un répertoire.
Voici quelques astuces pour vous aider à utiliser les payloads XML :
- Un simple / sélectionne à partir du nœud racine.
- /list identifie l'objet "list" au plus haut niveau du document XML. Puis vous pouvez parcourir les attributs et les sous-attributs. Le langage supporte nativement les tableaux.
- La barre oblique / vous permet d'obtenir les attributs d'un objet ou d'aller plus loin dans l'arborescence.
- Les crochets [] vous permettent de sélectionner un élément spécifique dans un tableau selon sa position. Veuillez noter que l'index commence à 1.
- /text() vous permet d'obtenir un nœud à l'intérieur d'un texte.
- // sélectionne des nœuds dans le document à partir du nœud courant correspondant à la sélection, peu importe où ils se situent.
Échantillon d'expressions XPath
<?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>
Voici quelques échantillons d'expressions et leurs résultats.
Expression | Valeur |
---|---|
/ | Le nœud du document entier |
/bookstore | Le nœud bookstore |
/bookstore/book/title | Un tableau de tous les nœuds title de tous les nœuds de "book" sous l'élément "bookstore" |
//title | Un tableau de tous les nœuds title peu importe leur position |
//title/@lang | Un tableau de tous les attributs lang des nœuds title |
/bookstore/book/title/text() | Un tableau de toutes les valeurs de texte des nœuds title de tous les nœuds de "book" sous l'élément "bookstore" |
/bookstore/book[price>35]/title | Les nœuds title de tous les nœuds book dont le prix est supérieur à 35. |
//book[last()]/title | Le nœud title du dernier nœud book. |
//book[position() < 3] | Les deux premiers nœuds book |
//title[@lang]] | Un tableau de tous les nœuds title avec un attribut lang |
name(//*[1]) | Le nom du premier élément du document (par exemple : bookstore) |
count(//title) | Le nombre de tous les nœuds title (par exemple 4) |