Extensions

1. The EXSLT project
2. XSLT standard library
3. 4EXSLT (EXSLT common, math, sets, and function for 4XSLT)
4. First stable release of the Gnome XSLT library

1.

The EXSLT project

Dave Pawson

exslt.org defined a series of extensions deemed needed by XSLT 1.0 users.

EXSLT is a community initiative to provide extensions to XSLT. The extensions are broken down into a number of modules. We are trying to encourage the implementers of XSLT processors to use these extensions, so that your stylesheets can be more portable. If your XSLT processor doesn't support a particular extension, you can download packages that you can use to provide functions or templates for your stylesheets. Have a look at the How To... page for more details about how to use the packages.

Anyone can contribute to EXSLT... even you. You can contribute by commenting on the things on this site on the mailing list and you can submit your suggestions for extensions, your own implementations and test cases.

2.

XSLT standard library

Steve Ball

The XSLT Standard Library, xsltsl, provides the XSLT developer with a set of XSLT templates for commonly used functions. These are implemented purely in XSLT, that is they do not use any extensions.

Goals are stated as: Provision of a high-quality library of XSLT templates, suitable for inclusion by vendors in XSLT processor software products.

Demonstration of best practice in XSLT stylesheet development and documentation.

Provide examples of various techniques used to develop XSLT stylesheets

Presently (Nov 2001) contains modules for String Processing, Nodes, Date/Time Processing, URI (Uniform Resource Identifier) Processing

3.

4EXSLT (EXSLT common, math, sets, and function for 4XSLT)

Uche Ogbuji

I'm happy to announce 4EXSLT, an add-on module for 4Suite that implements the entire initial collection of EXSLT functions and elements for the 4XSLT processor.

So what's EXSLT?

Short answer is look here:

EXSLT is an effort by the community of XSLT users and implementers to develop a common collection of XPath extension functions and XSLT extension elements that provide useful facilities beyond that provided by the official XSLT recommendation. It was initially developed through open discussion on the XSL-List, and refined through the heroic efforts of XSLT goddess Jeni Tennison (with help from Jim Fuller, Dave Pawson and Uche Ogbuji).

EXSLT has garnered interest and support from XSLT users, implementors and XSL working group members. It will allow parties to contribute extensions freely through an open process. The initial set of extensions includes tools for math, set manipulation, writing XPath extension functions in XSLT itself, multiple document output, conversion to node set and checking XPath object type.

I think 4EXSLT is the first implementation of EXSLT available, and I hope it encourages other XSLT implementors to follow suite. I should note that Mike Kay appears to be working on EXSLT support for Saxon, which is brilliant news since that processor is the benchmark of XSLT excellence.

Mike smiles (I'm sure!) when he adds

Actually I beat you by about 48 hours: EXSLT is available in Saxon 6.3.

But enough blather. To get your mitts on the software, follow the link:

Consider this an alpha release. I've made up a couple of tests for each element and function (and there is a test script in the package), and I've put these to some use in my own work, but there are undoubtedly bugs crouching about in there somewhere, so please let me know as you find them.

I intend to bundle these extensions into 4Suite 0.11.1, but right not it's really easy to use this add-on package with 4Suite 0.11.

Any future announcements of 4EXSLT will be made to the 4Suite and EXSLT mailing lists.

4.

First stable release of the Gnome XSLT library

Daniel Veillard

I'm happy to announce the first stable release 1.0.0 of libxslt, the Gnome XSLT library (and version 2.4.0 of libxml2 the Gnome XML library).

Libxslt is believed to implement all the XSLT-1.0 constructs, support a few "common" extensions and provide an extension framework. It also includes a simple to use command line interface 'xsltproc' with an XSLT profiler.

It had been in use by early adopters for more than 3 months with a bias on DocBook document processing since it will be used by Gnome and KDE for formatting their documentation. It is suposed to be stable and fast enough for 'serious' usage, like formatting/chunking the DocBook Definitve Guide (15 mn and 60 MBytes of memory use).

The C code and precompiled RPM packages for linux are available at ftp://xmlsoft.org/

The project pages are at: http://xmlsoft.org/XSLT/ http://xmlsoft.org/

This is free software available under the LGPL or a licence similar to the W3C IPR. It should be portable, it is know to work on Linux. BSD, Solaris, and there is Windows makefiles for MSC. The libraries are written in pure C and have no other requirement than the C standard and some POSIX constructs. The licences allows to embed it in commercial products.

I would like to thanks Red Hat for supporting this effort since its inception in January this year, the various contributors to this project especially Bjorn Reese and William Brack, and everybody who reported bugs, provided patches, ideas or reused it in other projects (KDE, Gnome, AxKit, etc.), and the Gnome project in general http://www.gnome.org/ .

I hope it will help reusing XSLT in areas where the price, processing cost or portability had been so far a problem.