Un documento XSL-FO es un documento XML en el que se especifica cómo se van a formatear unos datos para presentarlos en pantalla, papel u otros medios. El significado de las siglas XSL-FO es eXtensible Stylesheet Language Formatting Objects. Hay que destacar que en el documento XSL-FO figuran tanto los datos como el formato que se les va a aplicar.
Cuando se tiene el documento XSL-FO, puede ser procesado por un programa llamado “procesador de XSL-FO” para obtener el documento final en distintos formatos. El formato final más utilizado es el PDF.
La unidad básica de trabajo en un documento XSL-FO es el “Formating Object”, unidad básica para presentar (formatear) la información. Estos objetos de formato se refieren a páginas, párrafos, tablas, etc.
Para obtener el documento XSL-FO pueden seguirse dos vÃas:
- Generarlo directamente a partir de los datos. El documento XSL-FO contiene las especificaciones de formato y los propios datos.
- Transformar un documento XML que contenga los datos a presentar con una hoja de estilos XSLT. De esta forma los datos (XML) se independizan del formato que proporcionará la hoja de transformación XSLT.
No hay que ser un genio para darse cuenta del potencial que este lenguaje de marcado supone. Con un simple programa, por ejemplo Java o en PHP, podremos pasar cualquier información a un documento RTF, PDF, SVG, etc.
Detalles (importantes) como la utilización de fuentes propias (no instaladas en la máquina donde se ejecute el parser de XSL-FO) depende del procesador del lenguaje que usemos. En el caso del procesador Apache FOP (xmlgraphics.apache.org/fop/trunk/fonts.html) tiene una sencilla (redundante, pero sencilla) solución. Además, la sintaxis para la utilización de estilos (colores, tamaños, etc) es muy similar al lenguaje CSS utilizado para las páginas Web. Con todo esto nos podemos dar cuenta que la curva de aprendizaje del XSLFO es poco pronunciada para cualquier desarrollador.
Recursos
- Tutorial: www.w3schools.com/xslfo
- Procesador XSL-FO: Apache FOP xmlgraphics.apache.org/fop
- Cómo usar fuentes externas en Apache FOP: xmlgraphics.apache.org/fop/trunk/fonts.html
Fuentes: wikipedia.org, xmlgraphics.apache.org


![Validate my RSS feed [Valid RSS]](http://validator.w3.org/feed/images/valid-rss.png)