ePrometeusCorsoJavaJava
testi articoli
Testi Articoli  Download
Home | Xml | Dtd | XPath | Xslt | Esempio | 
CorsoJava è ora Video! Free for all!
Clicca Qui!

Xslt
XML to XML
Script
Template
Ricorsione
Template
xsl:template
xsl:apply-templates
xsl:for-each
default
Output
xsl:value-of
value template
xsl:element
xsl:attribute
xsl:text
xsl:copy-of
Condizioni
Variabili
xsl:if
xsl:choose
Varie
xsl:call-templates
xsl:sort
xsl:number

<<< xsl:template >>>

Il tag xsl:template ha tre attributi principali: match, name e mode.

match specifica il nodo da sostituire
Generalmente si specifica il tipo di elemento
Selezionabili anche attributi
Non sempre sono i figli

L'attributo match usa una espressione XPath per specificare a quali nodi si deve applicare. Nella maggior parte dei casi seleziona solo uno specifico tipo di nodo. C'è da tenere presente che le espressioni XPath, che vedremo in maggior dettaglio la prossima puntata, sono relative al nodo corrente. Quindi indicare solamente un tipo di nodo permette di selezionare uno dei figli del nodo corrente. In ogni caso è abbastanza frequente specificare nodi che non sono figli del nodo corrente, come pure è possibile selezionare attributi o altri elementi del documento XML.

mode modalità di processing
Specificato da apply-template
Più template con lo stesso match
Un ciclo per il corpo e uno per l'indice

L'attributo mode permette di applicare un template in casi diversi. Ovvero esiste in XSLT un concetto di modalità di elaborazione. La modalità viene specificato da apply-templates. In questo modo si possono avere due template che hanno la stessa espressione di match (ovvero si riferiscono agli stessi nodi) ma che vengono utilizzati in casi distinti. Per esempio possiamo avere un template che serve a costruire l'indice e un altro template che serve a costruire il corpo del documento, ma che si applicano agli stessi in momenti diversi.

name nome di un template
Usabile con chiamata diretta
xsl:call-template
Generalmente parametrizzato
xsl:with-param

Infine citiamo il fatto che un determinato template può avere un nome e che può venire chiamato esplicitamente utilizzando xsl:call-template, per di più specificando dei parametri. Vedremo la prossima volta le variabili, in particolare quando ci occuperemo di come può venire costruito l'output in maniera più complessa di come abbiamo visto qui.

ePrometeus s.r.l. - Web Software House & Open Source System Integrator
MILANO - SAN BENEDETTO DEL TRONTO(AP)
Contatti: info@eprometeus.com