PDF de programación - Hojas de Estilos XSLT en el aula

Imágen de pdf Hojas de Estilos XSLT en el aula

Hojas de Estilos XSLT en el aulagráfica de visualizaciones

Publicado el 8 de Febrero del 2021
337 visualizaciones desde el 8 de Febrero del 2021
491,1 KB
11 paginas
Creado hace 12a (23/11/2011)
Revista Digital Sociedad de la Información



http://www.sociedadelainformacion.com



Resumen



Hojas de Estilos XSLT en el aula



Nieves Carralero Colmenar

I.E.S Ramón y Cajal. Albacete

[email protected]

Según la Orden EDU/2887/2010, de 2 de noviembre, por la que se establece el
currículo del ciclo formativo de Grado Superior correspondiente al título de
Técnico Superior en Desarrollo de Aplicaciones Web, se define un módulo con
título: “Módulo Profesional: Lenguajes de marcas y sistemas de gestión de
información”. En él se pretende hacer una aproximación al trabajo con XSLT
como pieza clave en el desarrollo de aplicaciones Web.



1. INTRODUCCIÓN A XSLT

XSLT es la más importante parte del estándar XSL. Esta parte es usada para
transformar un documento XML en otro documento XML o de otro tipo que sea
reconocible por un browser, como HTML o XHTML. Normalmente es usado en
aplicaciones Web para
formato
personalizado a los datos. XSLT puede añadir nuevos elementos a un fichero
de salida, o eliminar elementos que no sean necesarios. Puede cambiar y
ordenar los elementos e incluso tomar decisiones sobre qué elementos se
deben visualizar. Una imagen que esquematiza los elementos participantes es
la siguiente:

transformar XML en (X)HTML y dar



www.sociedadelainformacion.com Nº 30 –Agosto 2011



1/11

Edita Cefalea



Revista Digital Sociedad de la Información



http://www.sociedadelainformacion.com

XSLT usa XPath [XML6] para definir el mapeo entre las transformaciones. En
resumen, XPath define que partes de un documento que encajan (match) con
una o más plantillas (templates). Cuando una coincidencia es encontrada,
XSLT transforma la parte coincidente en el documento fuente en el documento
resultado. Las partes del documento fuente que no encajan con una plantilla no
son incluidos en el documento resultado.

Declarando una hoja de Estilos (Style sheet)

El elemento raíz que declara que un documento es una hoja de estilos es
<xsl:stylesheet> or <xsl:transform>. Ambos son sinónimos y pueden ser
usados. El camino correcto para declarar una hoja de estilos según la
recomendación del W3C XSLT es la siguiente:

<xsl:stylesheet

version="1.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform">or

:

<xsl:transform

version="1.0"xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

xmlns:xsl="http://www.w3.org/1999/XSL/Transform" identifica el

espacio de nombres de la recomendación W3C XSL. Si se usa este

espacio de nombres también se debe incluir el atributo

version=“1.0”

Las siguientes prácticas se realizarán con el ejemplo Books.xml que se
muestra a continuación y que ha sido usado en previas publicaciones
[XML2][XML3][XML4][XML5]:

Observar que con el atributo href=”xslbook.xsl” se hace referencia a que sobre
ese documento XML se aplicará una plantilla llamada xslbook.xsl. Los ejemplos

www.sociedadelainformacion.com Nº 30 –Agosto 2011



2/11



Edita Cefalea



Revista Digital Sociedad de la Información



http://www.sociedadelainformacion.com

que se ponen a continuación se llamarán xslbook.xsl para poder ser aplicados
sobre este documento XML.

2. XSLT EJEMPLO INICIAL.

La siguiente figura muestra un ejemplo (xslbookp1.xsl) de documento XSL para
convertir un documento XML (Books.xml) en un documento HTML que visualiza
los datos como una tabla.



El resultado se aplicar esta plantilla sobre el Book.XML es la siguiente
interpretación de HTML:



3. LAS PARTES COM EJEMPLOS

Definición de una plantilla



El elemento <xsl:template> contiene la reglas que se aplicarán cuando se
encuentra un nodo coincidente. El atributo match es usado para asociar la

www.sociedadelainformacion.com Nº 30 –Agosto 2011



3/11

Edita Cefalea



Revista Digital Sociedad de la Información



http://www.sociedadelainformacion.com

plantilla con un elemento XML. Este atributo puede también ser usado para
definir una plantilla para una rama de un documento XML. Así, por ejemplo,
match=“/” define el documento entero.

Mostremos un ejemplo de declaración de una plantilla que no hace nada.



El elemento <xsl:value-of>

Este elemento es usado para seleccionar el valor de un elemento XML y
añadirlo a la salida de la transformación. El valor del atributo select es una
expresión XPath como las vistas anteriormente. Es decir, que obtiene los
elementos seleccionados navegando en el documento fuente.

Un ejemplo de inclusión de la etiqueta value-of es mostrada a continuación. El
resultado de aplicar esta hoja de estilos nos devuelve únicamente un titulo y un
autor. Para poder añadir todos los títulos y autores se debe incluir un elemento
que hace las funciones de bucle.



www.sociedadelainformacion.com Nº 30 –Agosto 2011



4/11

Edita Cefalea



Revista Digital Sociedad de la Información



http://www.sociedadelainformacion.com



El elemento <xsl:for-each>

Este elemento es usado para seleccionar todos los elementos XML de un nodo
o conjunto de nodos. Este hace las funciones de bucle que se repite para cada
instancia encontrada de un nodo. El siguiente ejemplo muestra la salida de
todos los títulos y autores del documento XML.

La salida después de aplicar esta plantilla es:



www.sociedadelainformacion.com Nº 30 –Agosto 2011



5/11

Edita Cefalea



Revista Digital Sociedad de la Información



http://www.sociedadelainformacion.com

Filtrar elementos:

Para filtrar los elementos deseados se usa la sintaxis de XPath para filtrar con
la cláusula <xsl:for each>. Los operadores de filtrado que siguen el estándar
son los siguientes:



• = (equal)



!= (distinto)

• &lt; menor que

• &gt; mayor que

El siguiente ejemplo muestra los elementos cuyo autor es Kevin Burton.Es
ejemplo no tiene código asociado.



www.sociedadelainformacion.com Nº 30 –Agosto 2011



6/11

Edita Cefalea



Revista Digital Sociedad de la Información



http://www.sociedadelainformacion.com

La salida después de aplicar esta plantilla es:

Ordenación.



Se puede ordenar la salida de los elementos seleccionados por la plantilla. Esto
se hace añadiendo un elemento xsl:sort dentro del elemento for-each. El
siguiente ejemplo muestra la salida ordenada por un nuevo elemento que es
Publisher. Con el atributo select se indica el elemento sobre el que se
ordenará.



www.sociedadelainformacion.com Nº 30 –Agosto 2011



7/11

Edita Cefalea



Revista Digital Sociedad de la Información


Condicionales



http://www.sociedadelainformacion.com

Se pueden usar condicionales dentro del documento para seleccionar que se
quiere mostrar en la salida. Para poner una condicional simplemente hay que
añadir la etiqueta <xsl:if> al documento. El valor del atributo test contiene la
expresión que se desea evaluar.

El siguiente ejemplo muestra únicamente los elementos que tiene un número
de páginas = 1088

Condicionales compuestos

Para poder establecer condicionales del estilo switch de C, se utiliza el
elemento <xsl:choose> <xsl:when> ..<xsl:otherwise>. El siguiente ejemplo
muestra su utilización.



www.sociedadelainformacion.com Nº 30 –Agosto 2011



8/11

Edita Cefalea



Revista Digital Sociedad de la Información



http://www.sociedadelainformacion.com



Hasta ahora todas las hojas de estilo que hemos visto incluían una única
plantilla que se aplicaba al elemento raíz de documento. XSL también permite
utilizar varias plantillas en una hoja de estilos. Esto es necesario por dos
razones. Primero, permite ordenar la lógica de presentación del contenido del
documento, haciendo más sencilla su modificación. Segundo, permite utilizar
expresiones XPath para aplicar diferentes
los datos XML
dependiendo de su valor. Cuando una hoja de estilos contiene varias plantillas
se utiliza una lógica de presentación con el comando <xsl:apply-templates>.

formatos a

Normalmente se utiliza una plantilla de nivel superior para procesar el
documento como un todo y se utiliza el comando apply-templates para
procesar los elementos dentro del ámbito de la plantilla de nivel superior.

www.sociedadelainformacion.com Nº 30 –Agosto 2011



9/11

Edita Cefalea



Revista Digital Sociedad de la Información



http://www.sociedadelainformacion.com

Si se utiliza el atributo select entonces se aplica la plantilla a los hijos que
encajen con el valor de atributo. El atributo select se suele utilizar para indicar
en que orden los elementos son procesados.

El siguiente ejemplo muestra su utilización. Aplica diferentes plantillas a los
libros con título Title[.='C# Design Patterns']“ y a los Publisher.

Como ha podido observarse en el estudio de los ejemplo previos, generar
plantillas XSLT necesita un entorno que permita fácilmente comprobar la
corrección de la salida obtenida. Hay varios entorno para este propósito. Uno
de ellos es <Oxygen/> (www.oxygenxml.com) que facilita la depuración de
plantillas en un entorno fácil de manejar.



5. BIBLIOGRAFÍA

www.sociedadelainformacion.com Nº 30 –Agosto 2011



10/11

Edita Cefalea



Revista Digital Sociedad de la Información



http://www.sociedadelainformacion.com

[XML
05/Trabajos/XML.NET.pdf

desde

.NET]:

http://zarza.usal.es/~fgarcia/docencia/poo/04-

[.NET] Framework: http://msdn.microsoft.com/en-us/magazine/cc30
  • Links de descarga
http://lwp-l.com/pdf18824

Comentarios de: Hojas de Estilos XSLT en el aula (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad