Daniel Prado Rodríguez Visita: Sacarse el carnet de conducir por libre DGT
  Viernes, 13 de Diciembre de 2024 Inicio | Contactar
Añadir a favoritos | Imprimir 
  Volver al resto de artículos XSL-XSLT


Programación XSL - XSLT - Elemento For-Each – Etiqueta <xsl:for-each>

» Programacion » XSL-XSLT » Elemento For-Each – Etiqueta <xsl:for-each>
Sábado, 4 de Febrero de 2006. Escrito por Daniel P.


Elemento <xsl:for-each>

La etiqueta <xsl:for-each> puede ser usada para seleccionar cada elemento XML de un nodo específico:

Veamos un ejemplo simple de un archivo xsl:

<?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>Mi coleccion de CDs</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th>Titulo</th>
<th>Artista</th>
</tr>
<xsl:for-each select="catalogo/cd">
<tr>
<td><xsl:value-of select="titulo"/></td>
<td><xsl:value-of select="artista"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>

</xsl:stylesheet>

Nota: El valor del atributo select es una expresión XPath. Una expresión XPath trabaja de igual manera que el sistema de navegación de archivos; donde para seleccionar subdirectorios se debe utiliza el slash (/).

Dado el siguiente documento XML y la plantilla de transformación anterior:

<?xml version="1.0" encoding="ISO-8859-1"?>
<catalogo>
<cd>
<titulo>Empire Burlesque</titulo>
<artista>Bob Dylan</artista>
<pais>USA</pais>
<discografica>Columbia</discografica>
<precio>10.90</precio>
<anio>1985</anio>
</cd>

<cd>
<titulo>The dock of the bay</titulo>
<artista>Otis Redding</artista>
<pais>USA</pais>
<discografica>Atlantic</discografica>
<precio>7.90</precio>
<anio>1987</anio>
</cd>

<cd>
<titulo>Picture book</titulo>
<artista>Simply Red</artista>
<pais>EU</pais>
<discografica>Elektra</discografica>
<precio>7.20</precio>
<anio>1985</anio>
</cd>

<cd>
<titulo>Red</titulo>
<artista>The Communards</artista>
<pais>UK</pais>
<discografica>London</discografica>
<precio>7.80</precio>
<anio>1987</anio>
</cd>

<cd>
<titulo>Unchain my heart</titulo>
<artista>Joe Cocker</artista>
<pais>USA</pais>
<discografica>EMI</discografica>
<precio>8.20</precio>
<anio>1987</anio>
</cd>
</catalogo>

El resultado sería el siguiente documento HTML:

<html><body>
<h2>Mi coleccion de CDs</h2>
<table border="1">
<tr bgcolor="#9acd32"><th>Titulo</th><th>Artista</th></tr>
<tr><td>Empire Burlesque</td><td>Bob Dylan</td>
</tr>
<tr><td>The dock of the bay</td><td>Otis Redding</td>
</tr>
<tr><td>Picture book</td><td>Simply Red</td>
</tr>
<tr><td>Red</td><td>The Communards</td>
</tr>
<tr><td>Unchain my heart</td><td>Joe Cocker</td>
</tr>
</table>
</body></html>

En el resultado anterior se puede ver que se han copiado varias líneas de información del documento xml a la salida.

comentarios (0)
  Anterior artículo XSL-XSLT Siguiente artículo XSL-XSLT 

COMENTARIOS EN FACEBOOK SOBRE: Artículo XSL-XSLT - Elemento For-Each – Etiqueta <xsl:for-each>
 
Mapa web |  Página principal  | Blog de Recetas | Recetas de Pescado | | Política de privacidad | Política de cookies
www.daniel.prado.name - Página Personal - © Copyright