Subject: RE: Migration from XSLT1.0 to XSLT2.0
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Wed, 30 Aug 2006 14:18:49 +0100
|
> We are planning to migrate from XSLT1.0 to XSLT2.0. I
> am concerned about backward compatability.
There's a detailed list of incompatibilities in an appendix of the spec.
Read it carefully, but don't get frightened by it: most of the differences
are things that very few stylesheets would ever do deliberately.
You can do the conversion in one step or two. The two-step approach is
Step 1: switch to an XSLT 2.0 processor, leaving your stylesheets saying
version="1.0"
Step 2: change the version attribute to say version="2.0".
In the intermediate stage you are running XSLT 2.0 in XSLT 1.0 mode, which
causes some constructs to behave in a backwards-compatible way, for example
$a < $b converts both values to numbers rather than comparing them as
strings (that's probably one of the biggest incompatibilities). Personally,
I'd be inclined to do it in a single step, because it gets the job over
with.
> I have found on the
> web that XSLT2.0 is too Saxon specific. Is that true?. Are
> other open source transformers supporting XSLT2.0?.
Saxon is by far the most complete implementation available today, but others
are working hard to catch up.
Michael Kay
http://www.saxonica.com/
|