Integración
Planificar el Template
Una vez creados los archivos XSLT correspondientes a cada tipo de contenido, como se explica en el capítulo anterior, es el momento de planificar el Template.
Si bien
cada uno de esos archivos XSLT podría generar a través de su código una página web completa, en la mayoría de los casos habrá elementos y funciones compartidos entre uno o más tipo de contenidos.
Por ejemplo, el encabezado del sitio, el pie de página, los menús, las herramientas para el usuario del sitio, buscadores, carrito de compras, etc.
Planificar el template permite, antes de comenzar a escribir el código, definir qué elementos y funciones serán de uso común, para separarlos en bloques de código externos y reutilizarlos cada vez que se los necesite, con el fin de evitar código repetido entre los distintos archivos XSLT.
Tener código repetido en distintos archivos no sólo aumenta el tamaño y la longitud de los mismos, sino que dificulta la actualización
de dicho código.
En el ejemplo que se desarrolla en este manual, el template posee tres archivos que se incluirán en todos los archivos XSLT:
- Un encabezado (header), que incorpora el menú principal del sitio y un menú secundario, un buscador, el resumen de la compra, y una barra de herramientas de usuario (login, acceso a sectores privados, etc.).
- Un pie de página (footer), que presenta un menú inferior y una clave de diccionario con un texto personalizable.
- Un archivo con funciones reutilizables (instanciación y redimensionamiento de imágenes, funciones numéricas y de textos, etc)
Inclusión de archivos
Si bien los archivos a incluir pueden localizarse directamente en la carpeta xsl del template, recomendamos organizarlos en carpetas dentro de este directorio, para mayor claridad y mejor organización.(En la carpeta xsl es conveniente dejar sólo los archivos xslt correspondientes a cada tipo de contenido).
En este ejemplo, los tres archivos a ser incluídos están ubicados en una carpeta llamada commons creada dentro de la carpeta xsl del template.

El proceso de inclusión de archivos es el siguiente:
1- Crear el archivo a incluir y en él, declarar el código dentro de un nodo <xsl:template>. Un archivo puede contener más de un template en su interior.
2- Incluir del archivo xslt externo mediante la instrucción <xsl:import>.
3- En el archivo donde se realiza la inclusión, instanciar la porción de código que se desee mediante la instrucción <xsl:call-template>.
1- Crear los archivos a incluir
Funciones comunes (commons/modules.xsl)
En este archivo incluirá funciones comunes que puedan ser utilizadas en los archivos XSLT en los que sea incluído.
A modo de ejemplo se muestra una función (en el lenguage XSLT se llaman también "template") que genera las imágenes del sitio web, en base al código y las dimensiones (opcionales) que reciba.
Header (commons/header.xsl)
Este archivo representará un encabezado común a todas las páginas, donde se instanciará el menú principal definido en el esquema de template de ejemplo, el logo que se haya cargado desde el panel de control, y el nombre del sitio web.
Footer (commons/footer.xsl)
Este archivo mostrará una clave de diccionario (key) de nombre 'footer_text', definida en el esquema XML del template, y que devuelve un texto cargado desde el panel de control por el administrador del sitio web.
2- Inclusión de archivos xslt externos
La inclusión debe realizarse entre los nodos <xslt:stylesheet> y <xsl:output>.
En este ejemplo se realiza la inclusión en el archivo home.xsl:
3- Instanciar el código incluido
Se instancian los fragmentos (header y footer) incluídos mediante la intrucción <xsl:call-template>:
