W3C

(This page uses CSS style sheets - but is still readable without them, of course)

eXtensible Style Language (XSL)

What's new?

Learning XSL

XSL Browsers

XSL Authoring Tools

XSL Spec

History

FAQ

eXtensible Style Language (XSL) is a user-extensible and primarily declarative mechanism for adding style (e.g. fonts, colors, spacing) to XML documents. For background information on style sheets, see the Web style sheets resource page. Discussions about XSL are carried out on the the DSSSL-List at mulberry.com and on comp.infosystems.www.authoring.stylesheets.

What's New

Learning XSL

There are already some tutorial materials on the current XSL specification.

Other XSL Resources include the XSL section on finetuning.com

XSL-Enabled Browsers

There are no native XSL-enabled browsers at this early stage.

However, several testbed implementations of XSL exist which can be used for experimentation, and which could be integrated into a browser.

XSL-Enabled Authoring Tools

Only two weeks ago, I wrote:

It's early days yet. There are no shipping products although there have been announcements of future products. Who will be first?

And the answer was ...

980126ArborText Announces XML Styler - a GUI editor for XSL stylesheets

XSL Specification

XSL is currently defined by the initial proposal submitted to W3C. The XSL Working Group is working to refine and improve this specification and will produce a Working Draft for public comment in due course.

History of XSL

XSL draws on both DSSSL and CSS, (and DSSSL-O) so it inherits the history of those style sheet languages. And it uses ECMAScript, which was derived from JavaScript. More immediate history:

Frequently Asked Questions

How is XSL different from CSS?

CSS is declarative and not user-extensible; XSL is primarily declarative, but is user-extensible using the ECMAScript language. XSL uses a XML notation, CSS uses its own. Aside from these technical differences, mature implementations of CSS1 and even of (parts of) CSS2 are available, whilst XSL is currently too new to have mature browser and content-authoring support.

Will XSL replace CSS?

They are likely to co-exist since they meet different needs. XSL is intended for complex formatting where the content of the document might be displayed in multiple places; for example the text of a heading might also appear in a dynamically generated table of contents. CSS is intended for dynamic formatting of online documents for multiple media; its strictly declarative nature limits its capabilities but also makes it easy to generate and modify in the content-generation workflow.

How is XSL different from DSSSL? From DSSSL-O?

DSSSL is an International Standard style sheet language. It is particularly used for formatting of print documents. DSSSL-O is a profile of DSSSL which removes some functionality and adds capabilities to make it more suited for online documentation. XSL draws on DSSSL and the DSSSL-O work and continues the trend towards a Web-oriented style sheet language by integrating experience with CSS.

Will XSL replace DSSSL?

DSSSL has capabilities that XSL does not, and continues in use in the print publishing industry. Experience with XSL might be used in a future revision of DSSSL, but it is too early to say.

So, CSS is for HTML and XSL is for XML?

CSS can be used with HTML and also with XML, provided that the XML document has a reasonably linear structure that can be displayed without extensive manipulation. XSL is targetted at XML, in particular highly-structured, data-rich documents that require extensive formatting.


Chris <chris@w3.org>
W3C Staff contact, XSL
Last modified: $Date: 1998/03/14 23:54:15 $

Valid HTML 4.0! Made with CSS

Copyright  ©  1997 W3C (MIT, INRIA, Keio ), All Rights Reserved. W3C liability, trademark, document use and software licensing rules apply. Your interactions with this site are in accordance with our public and Member privacy statements.