Utiliza <xsl:apply-templates>
para invocar el <xsl:template>
: s que ha definido.
<xsl:apply-templates>
llama a una plantilla correspondiente para cada nodo en el conjunto.
Puede controlar el orden de procesamiento especificando un atributo select
en apply-templates
.
ver este ejemplo de w3schools:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="cd">
<p>
<xsl:apply-templates select="title"/>
<xsl:apply-templates select="artist"/>
</p>
</xsl:template>
<xsl:template match="title">
Title: <span style="color:#ff0000">
<xsl:value-of select="."/></span>
<br />
</xsl:template>
<xsl:template match="artist">
Artist: <span style="color:#00ff00">
<xsl:value-of select="."/></span>
<br />
</xsl:template>
</xsl:stylesheet>
La primera apply-templates
llama a la plantilla cd
cada vez que se encuentra un elemento llamado "cd"
.
La plantilla cd
, a su vez, llama a los title
y artist
plantillas para procesar los elementos secundarios de <cd>
.
title
se procesa antes de artist
. Tenga en cuenta que el orden de los elementos artist
y title
en el código fuente XML no hace diferencia.
Se podría pensar en apply-templates
como análoga a una llamada de subrutina en lenguajes procedimentales.
Por favor, publique el enlace de otros video tutoriales XSLT. Los tutoriales anteriores dan la idea clara de aplicar plantillas y también necesito saber el propósito de usar mode = 'parent' ... –
Permítanme recomendar mi libro: Referencia de programadores XSLT 2.0 de Wrox Press. Una vez que te interesan cosas como los modos con nombre, necesitas un libro de referencia decente. –