Dar formato a un documento XML con XSLT

WebProgramacion > Blog > Dar formato a un documento XML con XSLT
Autor: Dámaso Velázquez Álvarez
Icono XML
Icono XML

En muchas ocasiones nos podemos encontrar en que tenemos un documento XML y necesitamos presentarlo de alguna forma determinada para procesarlo (muchos programas permiten exportar datos a XML, y luego los podemos tratar en SPSS, Excel, etc.). Podemos hacer uso de documentos XSLT para modificar esta vista y mostrarlo, por ejemplo, en una tabla.

Veamos un ejemplo de cómo crear una presentación visual de un documento XML.
El documento XML que vamos a utilizar de ejemplo es el siguiente:

<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet href="personas.xsl" type="text/xsl"?>
<personas>
   <persona>
      <nombre>Nombre 1</nombre>
      <apellidos>Apellidos 1</apellidos>
   </persona>
   <persona>
      <nombre>Nombre 2</nombre>
      <apellidos>Apellidos 2</apellidos>
   </persona>
   <persona>
      <nombre>Nombre 3</nombre>
      <apellidos>Apellidos 3</apellidos>
   </persona>
</personas>

Y vamos a presentar en una tabla el mismo fichero mediante el siguiente fichero XSLT

<?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>Ejemplo</h2>
      <table border="1">
         <tr>
            <th align="left">Nombre</th>
            <th align="left">Apellidos</th>
         </tr>
         <xsl:for-each select="personas/persona">
            <tr>
               <td><xsl:value-of select="nombre"/></td>
               <td><xsl:value-of select="apellidos"/></td>
            </tr>
         </xsl:for-each>
      </table>
   </body>
   </html>
</xsl:template>
</xsl:stylesheet>

Si ahora abrimos nuestro fichero .xml en el navegador, veremos que el formato es diferente, puesto que se procesará el documento .xsl que hemos creado.

Os dejo un enlace en las referencias a un buen tutorial de XSLT.

Enlaces recomendados

Fecha

2/2/2008

Deja tu opinión

la política de privacidad que declaro haber leído.

(*) Campos necesarios. El correo electrónico no será público.