Select a range of nodes in an XML file using an XPath query

Select a range of nodes in an XML file using an XPath query

Nell’esempio seguente vediamo come utilizzare il selettore position() in una query XPath per selezionare un intervallo di nodi.

Consideriamo il seguente XML:

<?xml version="1.0" encoding="utf-8" ?>
<Data>
  <Books>
    <book>
      <name>Book 1</name>
      <price>10</price>
    </book>
    <book>
      <name>Book 2</name>
      <price>81</price>
    </book>
    <book>
      <name>Book 3</name>
      <price>58</price>
    </book>
    <book>
      <name>Book 4</name>
      <price>43</price>
    </book>
    <book>
      <name>Book 5</name>
      <price>54</price>
    </book>
    <book>
      <name>Book 6</name>
      <price>22</price>
    </book>
  </Books>
</Data>

Supponiamo di voler selezionare i nodi “book” nell’intervallo 2-4, cioè selezionare i nodi relativi ai libri 2,3 e 4. La query XPath da utilizzare è la seguente:

//book[position() >= 2  and position() <= 4]

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Are you human? Time limit is exhausted. Please reload CAPTCHA.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.