Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Muoversi tra i nodi

La sintassi e i comandi specifici per muoversi tra i nodi di un file XML
La sintassi e i comandi specifici per muoversi tra i nodi di un file XML
Link copiato negli appunti

Come abbiamo già visto in tutti gli esempi precedenti per muoverci tra i nodi di un albero possiamo utilizzare le seguenti espressioni:

Espressione Risultato
artista/@nome Seleziona l'attributo nome dell'elemento <artista>. Se scriviamo solo @nome seleziona l'attributo nome del nodo in cui ci troviamo
. Il punto, come abbiamo visto negli esempi precedenti, seleziona il valore del nodo in cui ci troviamo
.. Il doppio punto ci fa risalire al genitore dell'elemento in cui ci troviamo
* Carattere Jolly che selezione tutti e solo gli elementi figli del nodo in cui ci troviamo
//album Seleziona tutti gli elementi <album> indipendentemente dalla loro profondità rispetto al nodo in cui si trovano

Possiamo anche ottenere altre informazioni utilizzando
ulteriori funzioni che ci permettono ad esempio di ottenere la posizione del
nodo in cui ci troviamo o di leggere il valore del nome del nodo.

Funzione Risultato
position() Fornisce il valore della posizione del nodo corrente partendo dal numero 1
name() Fornisce il nome del nodo (ovvero il nome del tag)
count() Fornisce il numero dei nodi all'interno di un elemento specificato

Esempio 8

Codice XSLT utilizzato (listacd_es8.xslt)

<?xml version="1.0" encoding="UTF-8"?> <!-- Prologo XML -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
<html>
<xsl:apply-templates select="//artista"/>
</html>
</xsl:template>


<xsl:template match="//artista">
<strong>
<xsl:value-of select="position()"/><!-- Seleziona il numero progressivo del nodo -->
)
<xsl:value-of select="name()"/><!-- Seleziona il nome del nodo ovvero il nome del TAG -->
:
</strong>
<xsl:value-of select="@nome"/>
<br />
</xsl:template>

</xsl:stylesheet>

Risultato in Output della trasformazione (esempio 8)


1) artista : Stanley Jordan
2) artista : Nick Drake
3) artista : Jeff Buckley
4) artista : Joe Satriani

Clicca qui per vedere il risultato della trasformazione sul browser.

Nota: potrebbero esserci dei problemi di visualizzazione con FireFox, per un problema del browser stesso

Clicca qui per vedere l'XSLT sul browser.

Ti consigliamo anche