Axes (assi) XPath
- Pagina precedente Sintassi XPath
- Pagina successiva Operatori XPath
Documento di esempio XML
Utilizzeremo questo documento XML negli esempi seguenti:
<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore> <book> <title lang="eng">Harry Potter</title> <price>29.99</price> </book> <book> <title lang="eng">Learning XML</title> <price>39.95</price> </book> </bookstore>
Asse XPath
L'asse può definire un insieme di nodi relativi al nodo corrente.
Nome dell'asse | Risultato |
---|---|
ancestor | Seleziona tutti i nodi ascendenti, come genitori, nonni e altri. |
ancestor-or-self | Seleziona tutti i nodi ascendenti, come genitori, nonni e altri, nonché il nodo stesso. |
attribute | Seleziona tutti gli attributi del nodo corrente |
child | Seleziona tutti i figli elementi del nodo corrente |
descendant | Seleziona tutti i figli, nipoti e altri elementi discendenti del nodo corrente. |
descendant-or-self | Seleziona tutti i figli, nipoti e altri elementi discendenti del nodo corrente, nonché il nodo stesso. |
following | Seleziona tutti i nodi successivi al tag di fine del nodo corrente nel documento. |
namespace | Seleziona tutti i nodi di namespace del nodo corrente. |
parent | Seleziona il nodo genitore del nodo corrente. |
preceding | Seleziona tutti i nodi precedenti al tag di inizio del nodo corrente nel documento. |
preceding-sibling | Seleziona tutti i nodi同级 precedenti al nodo corrente. |
self | Seleziona il nodo corrente. |
Espressione del percorso di posizione
Il percorso di posizione può essere assoluto o relativo.
Il percorso assoluto inizia con la barra obliqua ( / ), mentre il percorso relativo non lo fa. In entrambi i casi, il percorso di posizione include uno o più passi, ciascuno dei quali è diviso da una barra:
Percorso posizionale assoluto:
/step/step/...
Percorso posizionale relativo:
step/step/...
Ogni passo viene calcolato in base ai nodi nel set di nodi corrente
Passo (step) include:
- Asse (axis)
- Definisci la relazione dell'albero tra il nodo selezionato e il nodo corrente
- Testo del nodo (node-test)
- Riconosci i nodi all'interno di un asse
- Zero o più clausole (predicate)
- Estrai ulteriormente il set di nodi selezionati
Sintassi del passo:
Nome dell'asse::testo[nodo-test[clausola]]
Esempio
Esempio | Risultato |
---|---|
child::book | Seleziona tutti i figli elementi book che appartengono al nodo corrente |
attribute::lang | Seleziona l'attributo lang del nodo corrente |
child::* | Seleziona tutti i figli elementi del nodo corrente |
attribute::* | Seleziona tutti gli attributi del nodo corrente |
child::text() | Seleziona tutti i figli testuali del nodo corrente |
child::node() | Seleziona tutti i figli del nodo corrente |
descendant::book | Seleziona tutti i discendenti book del nodo corrente |
ancestor::book | Seleziona tutti i precursori book del nodo corrente |
ancestor-or-self::book | Seleziona tutti i precursori book del nodo corrente e il nodo corrente stesso (se questo nodo è un nodo book) |
child::*/child::price | Seleziona tutti i figli孙节点 del nodo corrente con l'attributo price. |
- Pagina precedente Sintassi XPath
- Pagina successiva Operatori XPath