Gli ultimi tutorial di sviluppo web
 

XML e XPath


XPath (the XML Path language) è un linguaggio per la ricerca di informazioni in un documento XML.


Che cosa è XPath?

XPath
  • XPath è una sintassi per le parti che definiscono un documento XML
  • XPath utilizza espressioni di percorso per navigare nei documenti XML
  • XPath contiene una libreria di funzioni standard
  • XPath è un elemento importante in XSLT
  • XPath è utilizzato anche in XQuery, XPointer e XLink
  • XPath è una raccomandazione W3C

Espressioni di percorso XPath

XPath utilizza espressioni di percorso per selezionare nodi o nodo-set in un documento XML. Queste espressioni di percorso assomigliano molto le espressioni che si vedono quando si lavora con un file system del computer tradizionale.

Oggi le espressioni XPath possono essere utilizzati anche in JavaScript, Java, XML Schema, PHP, Python, C e C ++, e un sacco di altre lingue.


XPath è usato in XSLT

XPath è un elemento importante nello standard XSLT. Senza conoscenza XPath non sarà in grado di creare documenti XSLT.


XPath Esempio

Useremo il seguente documento 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>

Nella tabella di seguito abbiamo elencato alcune espressioni XPath e il risultato delle espressioni:

espressioni XPath Risultato
/bookstore/book[1] Seleziona il primo elemento libro che è il figlio dell'elemento libreria
/bookstore/book[last()] Seleziona l'ultimo elemento libro che è il figlio dell'elemento libreria
/bookstore/book[last()-1] Seleziona il penultimo libro elemento che è il figlio dell'elemento libreria
/bookstore/book[position()<3] Seleziona i primi due elementi del libro che sono figli dell'elemento libreria
//title[@lang] Seleziona tutti gli elementi del titolo che hanno un attributo denominato lang
//title[@lang='en'] Seleziona tutti gli elementi del titolo che hanno un "lang" attributo con un valore di "en"
/bookstore/book[price>35.00] Seleziona tutti gli elementi del libro dell'elemento libreria che hanno un elemento di prezzo con un valore superiore a 35.00
/bookstore/book[price>35.00]/title Seleziona tutti gli elementi del titolo degli elementi del libro dell'elemento libreria che hanno un elemento di prezzo con un valore superiore a 35.00

Se volete saperne di più su XPath, si prega di leggere il nostro tutorial di XPath .