Los últimos tutoriales de desarrollo web
 

XSLT <xsl:apply-templates> Element


<Completa Element XSLT Referencia

Definición y Uso

El <xsl:apply-templates> elemento se aplica una plantilla al elemento actual o para nodos hijo del elemento actual.

Si añadimos un atributo de selección para el <xsl:apply-templates> elemento se procesará sólo el elemento secundario que coincida con el valor del atributo. Podemos utilizar el select atributo para especificar el orden en que los nodos secundarios se van a procesar.


Sintaxis

<xsl:apply-templates select="expression" mode="name">

  <!-- Content:(xsl:sort|xsl:with-param)* -->

</xsl:apply-templates>

atributos

Atributo Valor Descripción
selectexpression Opcional. Especifica los nodos para ser procesados. Un asterisco selecciona el entero conjunto de nodos. Si se omite este atributo, se seleccionarán todos los nodos hijos del nodo actual
modename Opcional. Si hay varias formas de procesamiento definido para el mismo elemento, que distingue entre ellas

Ejemplo 1

Envolver un solo elemento h1 alrededor de cada elemento de título en el 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>

Ejemplo 2

Envolver un solo elemento h1 alrededor de todos los elementos del título, que son hijos de mensaje:

<?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>

Ejemplo 3

Envolver un solo elemento h1 alrededor de todos los nodos secundarios del mensaje que tienen el mode atributo establecido en "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 Element XSLT Referencia