PDF (adobe.com)

Transformaciones XSL en el lado del cliente

Es posible llevar a cabo transformaciones XSL en el cliente sin necesidad de utilizar un servidor de aplicaciones. Se puede utilizar Dreamweaver para crear una página XSLT que realice el proceso, pero es necesario manipular el archivo XML que contiene los datos que desea mostrar para las transformaciones en el lado del cliente. Además, las transformaciones en el lado del cliente sólo funcionan en navegadores modernos (Internet Explorer 6, Netscape 8, Mozilla 1.8, y Firefox 1.0.2). Para más información sobre los navegadores que no admiten transformaciones XSL, consulte www.w3schools.com/xsl/xsl_browsers.asp (en inglés).

En primer lugar, cree una página completa XSLT y adjunte una fuente de datos XML. (Dreamweaver le pedirá que adjunte la fuente de datos al crear la página nueva.) Puede crear una página XSLT desde cero, o bien convertir una página HTML existente en una página XSLT. Al convertir una página HTML existente en una página XSLT, debe adjuntar una fuente de datos XML a través del panel Vinculaciones (Ventana > Vinculaciones).

Una vez creada la página XSLT, debe vincularla al archivo .xml que contiene los datos XML insertando una referencia a la página XSLT en el propio archivo XML (al igual que se inserta una referencia en una hoja de estilos CSS externa en la sección <head> de una página HTML). Los visitantes del sitio deben ver el archivo .xml (y no la página XSLT) en un navegador. Cuando los visitantes del sitio visualizan la página, el navegador lleva a cabo la transformación XSL y muestra los datos XML formateados por la página XSLT vinculada.

Conceptualmente, la relación existente entre las página XSLT vinculada y la página XML es similar, aunque no coincide con el modelo de la página CSS/HTML externa. Si se dispone de una página HTML con contenido (por ejemplo, texto), puede utilizar una hoja de estilos externa para dar formato al contenido. La página HTML determina el contenido y el código CSS externo (invisible para el usuario) determina la presentación. Con XSLT y XML, la situación cambia. El archivo XML (que el usuario nunca ve en un forma original) determina el contenido, mientras que la página XSLT determina la presentación. La página XSLT contiene las tablas, formato, gráficos, etc., que suele contener el HTML estándar. Cuando un usuario visualiza el archivo XML en un navegador, la página XSLT da formato al contenido.

Ver gráfico a tamaño completo

1.
El navegador solicita el archivo XML

2.
El servidor responde con el envío del archivo XML al navegador

3.
El navegador lee la directiva XML y llama al archivo XSLT

4.
El servidor envía el archivo XSLT al navegador

5.
El navegador transforma los datos XML y los muestra en el navegador

Si utiliza Dreamweaver para vincular una página XSLT a una página XML, Dreamweaver inserta por usted el código necesario en la parte superior de la página XML. Si dispone de acceso a la página XML a la que se vincula (es decir, si el archivo XML reside exclusivamente en su servidor Web), todo lo que necesita hacer es utilizar Dreamweaver para insertar el código apropiado que vincule las dos páginas. Si dispone de acceso al archivo XML, las transformaciones XSL realizadas por el cliente son totalmente dinámicas. Esto quiere decir que, siempre que se actualicen los datos en el archivo XML, cualquier información HTML que utilice la página XSLT vinculada se actualizará automáticamente con la nueva información.

Nota: Los archivos XML y XSL que se utilizan para las transformaciones en el lado del cliente deben estar en el mismo directorio. De lo contrario, el navegador leerá el archivo XML y buscará la página XSLT para la transformación, pero no podrá encontrar los activos (hojas de estilos, imágenes, etc.) definidos por los vínculos relacionados en la página XSLT.

Si no dispone de acceso a la página XML a la que está vinculando (por ejemplo, si quiere utilizar los datos XML desde un agregador RSS ubicado en algún lugar de la red), el flujo de trabajo se complica un poco más. Para llevar a cabo transformaciones en el lado del cliente con datos XML de una fuente externa, en primer lugar debe descargar el archivo de origen XML en el mismo directorio en el que reside la página XSLT. Cuando la página XML está en el sitio local, puede utilizar Dreamweaver para añadir el código adecuado que la vincule a la página XSLT y publicar ambas páginas (el archivo XML descargado y la página XSLT vinculada) en el servidor Web. Cuando el usuario visualiza la página XML en un navegador, la página XSLT da formato al contenido, exactamente igual que en el ejemplo anterior.

El inconveniente de realizar transformaciones XSL en el lado del cliente con datos XML procedentes de una fuente externa es que los datos XML son parcialmente “dinámicos”. El archivo XML descargado y modificado es únicamente una “instantánea” del archivo que reside en la red. Si el archivo XML original de la red cambia, debe descargarlo de nuevo, vincularlo a la página XSLT y volver a publicar el archivo XML en el servidor Web. El navegador sólo mostrará los datos que reciba del archivo XML del servidor Web, no los datos contenidos en el archivo de origen XML.