Si estamos diseñando una página Web dinámica es necesario incluir la lógica de aplicación Web al documento de Estilo, es decir, se genera el siguiente documento del Diagrama de Documentos
(diagrama 4) el XSP ver (apache).
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsp:page language="perl" xmlns:xsp="http://www.apache.org/1999/XSP/Core">
<xsp:structure>
<xsp:include>use aplicacionweb::comunes;</xsp:include>
</xsp:structure>
<xsp:logic>
sub inicio {
...
# Operaciones de inicialización
}
</xsp:logic>
<xsp:content funcion="ejemplo">
<xsp:expr>&inicio()</xsp:expr>
<page>
<html>
<head>
<title>Confirmación del pedido</title>
</head>
<body>
<a href="inicio.html">Ir al inicio</a> |
<a href ="final.html">Ir al Final</a>
<h1>Productos Seleccionados</h1>
<xsp:expr>&detalle( "Descripción Producto","Cantidad","Importe")</xsp:expr>
<p>Felicidades por la selección...</p>
</body>
</html>
</page>
</xsp:content>
</xsp:page>
Como se ve el documento inserta código Perl con el HTML dentro de una estructura.
A grandes rasgos el documento se divide en:
Elemento 1.- <xsp:estructure> : que contiene la declaración de los módulos / clases que utilizará el código fuente.
Elemento 2.- <xsp:logic> : que contiene las subrutinas / métodos específicos para esa página
Elemento 3.- <xsp:content> : que se compone de elementos HTML y etiquetas <xsp:expr> con las que se puede intercalar llamadas al código a funciones y métodos o evaluar expresiones.
Hay que remarcar que el código que aparece en el XSP en las etiquetas <xsp:estructure> y <xsp:logic> ha sido escrito en documentos aparte y es ensamblado en el XSP mediante el armazón. Es decir el XSP surge de aplicarse las transformaciones indicadas en los documentos XSL.
De la misma manera, la transformación de las etiquetas del documento de Estilo <detalle> e <item> en "<xsp:expr>&detalle( "Descripción Producto","Cantidad","Importe")</xsp:expr> " es gracias al armazón.