<Complete XSLT elemento di riferimento
Definizione e l'utilizzo
Il <xsl:apply-templates> elemento applica un modello per l'elemento corrente o per i nodi figlio dell'elemento corrente.
Se aggiungiamo un attributo di selezione per il <xsl:apply-templates> elemento sarà elaborare solo l'elemento figlio che corrisponde al valore dell'attributo. Possiamo usare la select attributo per specificare l'ordine in cui i nodi figlio devono essere elaborati.
Sintassi
<xsl:apply-templates select="expression" mode="name">
<!-- Content:(xsl:sort|xsl:with-param)* -->
</xsl:apply-templates>
attributi
Attributo | Valore | Descrizione |
---|---|---|
select | expression | Opzionale. Specifica i nodi da elaborare. Un asterisco seleziona l'intero set di nodi. Se questo attributo viene omesso, verranno selezionati tutti i nodi figli del nodo corrente |
mode | name | Opzionale. Se ci sono diversi modi di lavorazione definito per lo stesso elemento, distingue tra loro |
esempio 1
Avvolgere un singolo elemento h1 attorno a ciascun elemento titolo del documento:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="title">
<h1><xsl:apply-templates/></h1>
</xsl:template>
</xsl:stylesheet>
esempio 2
Avvolgere un singolo elemento h1 attorno a tutti gli elementi del titolo che sono figli di un messaggio:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="message">
<h1><xsl:apply-templates select="title"/></h1>
</xsl:template>
</xsl:stylesheet>
esempio 3
Avvolgere un singolo elemento h1 attorno a tutti i nodi figlio del messaggio che hanno la mode attributo impostato su "big" :
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="message">
<h1><xsl:apply-templates select="*" mode="big"/></h1>
</xsl:template>
</xsl:stylesheet>
<Complete XSLT elemento di riferimento