XSLT <xsl:applica-modelli>
❮ Completa il riferimento agli elementi XSLT
Definizione e utilizzo
L'elemento <xsl:apply-templates> applica un modello all'elemento corrente o ai nodi figlio dell'elemento corrente.
Se aggiungiamo un attributo select all'elemento <xsl:apply-templates>, elaborerà solo l'elemento figlio che corrisponde al valore dell'attributo. Possiamo usare l'attributo select per specificare in quale ordine devono essere elaborati i nodi figli.
Sintassi
<xsl:apply-templates select="expression" mode="name">
<!-- Content:(xsl:sort|xsl:with-param)* -->
</xsl:apply-templates>
Attributi
Attribute | Value | Description |
---|---|---|
select | expression | Optional. Specifies the nodes to be processed. An asterisk selects the entire node-set. If this attribute is omitted, all child nodes of the current node will be selected |
mode | name | Optional. If there are multiple ways of processing defined for the same element, distinguishes among them |
Esempio 1
Avvolgi un singolo elemento h1 attorno a ciascun elemento del titolo nel 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
Avvolgi un singolo elemento h1 attorno a tutti gli elementi del titolo che sono figli del 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
Avvolgi un singolo elemento h1 attorno a tutti i nodi figlio del messaggio che hanno l'attributo mode 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>
❮ Completa il riferimento agli elementi XSLT