What Is XSL Formatting Objects? ?
- W3C Recommendation Extensible Stylesheet Language (XSL).
- The standard for creating high quality page-based and online renditions of data.
- An XML document type used to describe the contents of formatted pages or screens (Formatting Objects).
NOTE: Do not confuse XSL with XSLT—while they are related, these are two distinct and largely independent specifications. To be most correct, the term “XSL” only refers to the formatting specification described here, while XSLT refers to the transformation specification.
- Provides a standard, non-propriety way to create high-quality printed and online presentation of data of any kind.
- Typically generated using XSLT scripts, ensuring a large pool of skilled programmers who can maintain generation scripts.
- Separates task of generating and producing print renditions of data from core application business logic.
How XSL Works:
The XSL Formatting Objects (FO) document type is analogous to HTML. In the same way that XML documents (or other data) can be transformed into HTML documents for presentation with Web browsers, XML documents (or other data) can be transformed into XSL-FO documents for processing into print or specialized online forms by XSL processors. Just as the job of a Web browser is to take HTML documents and present them visually, the job of an XSL processor is to take an XSL-FO document and present it visually, in the form of a page or screen image. The most typical use of XSL is to generate PDF documents from XML documents.
The FO document type defines elements that represent areas on a page or screen. XSL processors then interpret these page description elements to create a final rendition, using the formatting rules and semantics defined in the XSL recommendation. For example, an input <para> element might be mapped to this FO element in an XSLT transform:
<fo:block font-size="12pt" indent="6pt">This is the para content</fo:block>
The XSL recommendation provides the rich set of constructs and formatting characteristics needed to create high-quality, complex print and online presentations. For its formatting characteristics it includes the characteristics defined by CSS.
In version 1.0, XSL is limited in the complexity of page designs it can generate. While it is suitable for most typical technical documentation presentation styles (one column, offset column, multi-column), it does not provide a way to produce complex magazine- or newspaper-style layouts where independent text flows across random areas from page to page. However, it is likely that these requirements will be addressed in the 2.0 version of XSL.
Because XSL Formatting Objects is just another document type like HTML, it can be used to create formatted presentations of any kind of data, not just XML data, just as HTML can be generated from any kind of data.