The World Wide Web Consortium has announced the release of Extensible Stylesheet Language (XSL) Version 1.0 as a W3C Recommendation. The specification represents "cross-industry agreement on an XML-based language that specifies how XML documents may be formatted. It works in concert with XSL Transformations (XSLT), an XML language that performs transformations of structured documents. W3C Recommendation status indicates that a specification is stable, contributes to Web interoperability, and has been reviewed by the W3C Membership, who favor its widespread adoption. XSLT 1.0, the XML language which performs transformations on XML data and documents, has been a W3C Recommendation since November 1999, and already enjoys significant usage in both developer communities and in commercial products. XSL 1.0 builds on XSLT 1.0, and provides users with the ability to describe how XML data and documents are to be formatted. XSL 1.0 does this by defining 'formatting objects,' such as footnotes, headers, columns, and other features common to paged media. Designers would use XSL 1.0 stylesheets to indicate rendering preferences for a type of XML document, including how it is styled, laid out, and paginated onto a presentation medium such as a browser window, a pamphlet, or a book. An XSL engine would take the XML document and the XSL stylesheet, and would produce a rendering of the document. XSLT 1.0 makes it possible to significantly change the original structure of an XML document (automatic generation of tables of contents, cross-references, indexes, etc.), while XSL 1.0 makes complex document formatting possible through the use of formatting objects and properties. As XSL 1.0 is focused on the formatting of paged media, it makes it possible for professional printing capabilities and functions to perform with XML documents today. XSL 1.0 and XSLT make it possible for the needs of Web and print-based media formatting to be met."
Bibliographic information: Extensible Stylesheet Language (XSL) Version 1.0. W3C Recommendation 15-October-2001. Version URL: http://www.w3.org/TR/2001/REC-xsl-20011015/. Latest version URL: http://www.w3.org/TR/xsl/. Previous version URL: http://www.w3.org/TR/2001/PR-xsl-20010828/. Authors and Contributors: Sharon Adler (IBM), Anders Berglund (IBM), Jeff Caruso (Pageflex), Stephen Deach (Adobe), Paul Grosso (Arbortext), Eduardo Gutentag (Sun), Alex Milowski, Scott Parnell (Xerox), Jeremy Richman, and Steve Zilles (Adobe). Other formats: PDF by RenderX, XML file, single file HTML, ZIP archive. [cache]
From the Recommendation:
This specification defines the Extensible Stylesheet Language (XSL). XSL is a language for expressing stylesheets. Given a class of arbitrarily structured XML [XML] documents or data files, designers use an XSL stylesheet to express their intentions about how that structured content should be presented; that is, how the source content should be styled, laid out, and paginated onto some presentation medium, such as a window in a Web browser or a hand-held device, or a set of physical pages in a catalog, report, pamphlet, or book.
An XSL stylesheet processor accepts a document or data in XML and an XSL stylesheet and produces the presentation of that XML source content that was intended by the designer of that stylesheet. There are two aspects of this presentation process: first, constructing a result tree from the XML source tree and second, interpreting the result tree to produce formatted results suitable for presentation on a display, on paper, in speech, or onto other media. The first aspect is called tree transformation and the second is called formatting. The process of formatting is performed by the formatter. This formatter may simply be a rendering engine inside a browser.
Tree transformation allows the structure of the result tree to be significantly different from the structure of the source tree. For example, one could add a table-of-contents as a filtered selection of an original source document, or one could rearrange source data into a sorted tabular presentation. In constructing the result tree, the tree transformation process also adds the information necessary to format that result tree.
Formatting is enabled by including formatting semantics in the result tree. Formatting semantics are expressed in terms of a catalog of classes of formatting objects. The nodes of the result tree are formatting objects. The classes of formatting objects denote typographic abstractions such as page, paragraph, table, and so forth. Finer control over the presentation of these abstractions is provided by a set of formatting properties, such as those controlling indents, word- and letter spacing, and widow, orphan, and hyphenation control. In XSL, the classes of formatting objects and formatting properties provide the vocabulary for expressing presentation intent.
The XSL processing model is intended to be conceptual only. An implementation is not mandated to provide these as separate processes. Furthermore, implementations are free to process the source document in any way that produces the same result as if it were processed using the conceptual XSL processing model.
- Extensible Stylesheet Language (XSL) Version 1.0
- Announcement 2001-10-15: "World Wide Web Consortium Issues Extensible Stylesheet Language 1.0 as a W3C Recommendation. XSL 1.0 Delivers Professional Formatting to XML Documents."
- XSL 1.0 Testimonials. From Adobe Systems, Antenna House, Arbortext, Bitstream, Inc., IBM Corporation, RenderX, Inc., and Sun Microsystems.
- World Wide Web Consortium
- W3C style activity
- XSL Mailing list
- "Extensible Stylesheet Language (XSL/XSLT)" - Main reference page.