W3C
The Extensible Stylesheet Language Family (XSL)

XSL is a family of recommendations for defining XML document transformation and presentation. It consists of three parts:

XSL Transformations (XSLT) a language for transforming XML the XML Path Language (XPath) an expression language used by XSLT to access or refer to parts of an XML document. (XPath is also used by the XML Linking specification) XSL Formatting Objects (XSL-FO) an XML vocabulary for specifying formatting semantics

An XSLT stylesheet specifies the presentation of a class of XML documents by describing how an instance of the class is transformed into an XML document that uses a formatting vocabulary, such as (X)HTML or XSL-FO. For a more detailed explanation of how XSL works, see the What Is XSL page.

For background information on style sheets, see the Web style sheets resource page. XSL is developed by the W3C XSL Working Group (members only) whose charter is to develop the next version of XSL. XSL is part of W3C's XML Activity, whose work is described in the XML Activity Statement.

Mailing Lists
- XSL-List@lists.mulberrytech.com, main list for discussion about XSL
- public-qt-comments@w3.org: comments on XSLT/XPath 2.0
- www-xpath-comments@w3.org: comments/discussion on XPath 1.0
- xsl-editors@w3.org: comments/discussion on XSLT 1.0
- www-xsl-fo@w3.org W3C list about Formatting Objects
- XSL-FO@yahoogroups.com: a YahooGoups list on FOs.
Implementations
- XSLT: too many to list here. Check dmoz.org.
- XPath 2.0 Grammar Test Applet
- XSL Formatter (Win/Linux, free evaluation versions)
- Scriptura XBOS: Output Solution (Java, evaluation on request)
- XSLFast (Java, free evaluation version)
- XEP (Java, free evaluation version)
- FOP (Java, open source)
- PassiveTeX (TeX, open source)
- Apoc XSL-FO, for integration with .NET [free evaluation version]
- Unicorn FOs (TeX, free Windows binaries)
- REXP early implementation based on FOP
- X-smiles (Java, open source)
- Chameleon/XML, an XML rendering system using FO
- Novosoft RTF2FO: RTF to FO converter (Java, Free evaluation version)
- jfor: FO to RTF converter (Java, Open Source)
- WH2FO: WordHTML-to-FO (Java, Open Source)
- html2fo (C, Open Source)
- FOA: XSL Authoring Tool (Java, Open Source)
- jFO Java API for FOs (evaluation version available)
- Adobe Document Server: document production framework (commercial, Win/Solaris)
- Infoprint XML Extender from IBM: document printing application (commercial, z/OS)

2005-01-10: Free CSStoXSLFO converter

CSSToXSLFO is a free utility which can convert an XML document, together with a CSS2 style sheet, into an XSLFO document, which can then be converted into PDF, PostScript, etc. with an XSLFO-processor. It has special support for the XHTML vocabulary, because that is the most obvious language it would be used for. The tool has a number of page-related extensions. It also comes with an API in the form of an XML filter. The tool has a command-line interface. There are special packages for using it with XEP from RenderX, XSLFormatter from Antenna House and FOP from Apache.

2005-01-09: Altsoft N.V. announces Xml2PDF

Altsoft Xml2PDF is a .NET based formatting engine for converting XSL-FO and SVG files to PDF. It supports XSL-FO, other XML via XSLT, and SVG. [apologies for the delay in posting this item - Liam]

2004-10-18: Oxygen XML Editor adds XSLT 2.0 editing and debugging support

Version 5 of Oxygen XML Editor adds XSLT 2.0 and XPath 2.0 capabilities to the editor and debugger. The XSLT Debugger was improved with support for mapping from the output transformation result to the source and stylesheet locations and was tested with complex stylesheets, the DocBook stylesheets for instance. The dynamic content completion support also should be noted as this allows presenting information already entered in the stylesheet to the user where appropriate.

2004-07-07: Inventive Designers releases Scriptura XBOS V3.0

Inventive Designers releases Scriptura XBOS V3.0, the XSL business output suite. This multi-platform output solution is based on open standards (XML, XSLT, XSL-FO, SOAP ...). Its modular architecture allows you to start from a basic setup and add functionality as your business requirements evolve. New features include XSL-FO import, support for text/spooled file data sources, improved paragraph properties, container object groups, watermarks, a final format preview, output to AFP & RTF, an event handler, a C++ API and much more. See www.inventivedesigners.com/scriptura for more information.

2004-05-11: Oxygen XML Editor adds an XSLT Debugger

The latest release of Oxygen XML Editor improves the XSLT editing and transformation support and adds a full featured XSLT Debugger. Now complex transformations can be executed involving multiple stylesheets and macros can be used when configuring scenarios for a greater reuse. When editing an XSLT a schema/DTD for the transformation result can be set and the content completion will offer the elements and attributes from that target schema where appropriate. The XSLT Debugger supports both Xalan and Saxon as XSLT engines and provides full debugger options: step into, step over, run to cursor, run to end, pause, stop, breakpoints, call stack, trace history, XPath expression watch, variables view, etc. Please find more details about oXygen XML editor in general at www.oxygenxml.com and about the XSLT Debugger features at www.oxygenxml.com/features/XSLT-Debugger.html.

2004-04-30: RenderX Announces New Version - XEP.NET Released

RenderX has released XEP.NET, a Visual J#/.NET port of XEP, RenderX's XSL Formatting engine. It consists of 100% manageable code, no Java or native libraries are required to run it. Its functionality and XSL FO support level are identical to RenderX's Java version. The XEP.NET core is wrapped in an API that exposes standard .NET interfaces for XML processing: XmlReader and XmlWriter. This public API is a .NET class library component that can be used from .NET programming language, such as Visual C#.NET, Visual Basic.NET, and Visual J#.NET. Additionally, the software includes a .NET class library for MSXML integration, with C# source codes included. This integration component allows use of MSXML SAX parser and transformation APIs in addition to .NET system interfaces. A trial version is available for download from the RenderX developer's site (http://shop.xattic.com) and trial developer software can be requested from sales@renderx.com.

2004-03-24: Antenna House XSL Formatter V3.1

Antenna House is proud to release this milestone in the development of XSL Formatter, Version 3.1 as of March 24, 2004.~XSL Formatter V3.1 offers all the features (GUI, support for over 50 languages, PDF generation), W3C compliance, extensions and formatting capabilities of our previous Version 2.5 plus the significantly enhanced performance, unlimited document size and SVG support of V3.0. In addition V3.1 offers vector support for EMF and WMF, CMYK support, new output capabilities and numerous other enhancements. With V3.1 a customer can now have all the advantages of V3 and V2.5 in one. See product pagefor and pointer to free evaluation download.

2004-02-11: RTF2FO 3.3.3

Novosoft Inc., is pleased to announce the new 3.3.3 version of RTF2FO converter. RTF2FO 3.3.3 enhances and streamlines process of converting RTF documents to XML ones in line with the W3C specifications for XSL FO formatting semantics. The new version is available for evaluation at http://www.rtf2fo.com/download.html

2003-11-14: Scriptura 2.1

Scriptura 2.1. Inventive Designers releases Scriptura 2.1, the cross-platform document design and generation solution based on XSLT and XSL-FO. It has a WYSIWYG design tool and an engine. The XSL-FO formatter used in the engine is no longer based on Apache FOP, but is written from scratch by Inventive Designers. The new features in this release are: support for bulleted and numbered lists, 'break-before' and 'break-after' properties, extended bar code options and improved number and currency formatting. A free trial version is available for download.

2003-11-12: Last Call working drafts

New working drafts of XSLT 2.0, XPath 2.0 and associated XML Query specifications published, most in Last Call, see the TR page

Tutorials
- XSL-FO tutorial by RenderX
- How to Develop Stylesheets for XML to XSL-FO Transformationby Antenna House
- XSLT & XPath tutorial from TopXML
- XSL School from w3schools.
- Introduction to XSL by Miloslav Nic
- Tutorial from iX magazine (German, English)
Reference
- XSLT and XPATH: A Guide to XML Transformations by John Robert Gardner and Zarella L. Rendon
- An introduction to XSL Formatting Objects, a book by Dave Pawson, available on-line.
- Chapter 15 of the XML Bible by Elliotte Rusty Harold is about Formatting Objects is available online.
- Miloslav Nic has published a complete FO reference
- The XSL FAQ. A very complete repository of XSL material.
- VBXML reference on XSLT and XPath.
- XSLT Programmer's Reference (2nd edition) by Michael Kay
- XSLT and XPath On The Edge, Unlimited Edition by Jeni Tennison
- XSLT Quickly by Bob DuCharme
- XSLT by Doug Tidwell
- Practical Transformations Using XSLT and XPath, Practical Formatting Using XSLFO and Definitive XSLT and XPath from Crane Softwrights Ltd.
- Chapter 17 of the XML Bible is dedicated to XSLT
Articles
- What Is XSL-FO and When Should I Use It? by Stephen Deach
- What's New in XSLT 2.0 by Evan Lenz
- What's New in XPath 2.0 by Evan Lenz
- Using XSL Formatting Objects by J. David Eisenberg, from xml.com.
- XSL style sheets: push or pull? by Kevin Williams
- Expand XSL with extensions by Jared Jackson
- Tip: Outputting HTML from an XSL style sheetby Nicholas Chase
Links
- Stylesheet Central, a collection of over 100 examples of XML and XSLT stylesheets, arranged into categories
- EXSLT, a community initiative to provide extensions to XSLT
- The XSLT language code library by TopXML
- A few useful XSL tools and documents
- XSL Resources at Oasis
- jeremie.com's XSL pages
- xslt.com, resource list for XSLT
- XML-Web, XSLT site in German
- XSL Resources Plattform (in German)
Liam Quin, Team Contact for the XSL Working Group
$Id: Overview-table.html,v 1.22 2005/05/13 00:47:37 liam Exp $.This page was generated using XSLT. The XML source is also available for viewing on an XSLT-enabled browser.