Re: [xsl] XSLT 1.0/2.0 forward/backwards compatibility behavior

Subject: Re: [xsl] XSLT 1.0/2.0 forward/backwards compatibility behavior
From: David Carlisle <davidc@xxxxxxxxx>
Date: Wed, 22 Jun 2005 15:11:23 +0100
> What makes me wonder is because I find it hard to to motivate this behavior or 
> see it in a practical perspective.
...
> Perhaps someone can clear my confusion and provide some background? 


The main purpose of backward compatibility is to ensure that correct
xslt 1 programs continue to work if you upgrade your processor to xslt2

If the styesheet didn't work with an xslt1 processor (for example
because it had xpath2 syntax) then all bets are off.

Here for example we have tens of thousands of lines of XSLT1 code.
If I run it on saxon8 I get (as near as I can tell)  the same result as
saxon 6. This is good as it means that we might one day be able to
switch production from saxon6 to saxon8, especially if saxon6 becomes
unsupported or unavailable, or just no longer works on java version 7.6.

In earlier drafts of xslt2 backward compatibility was not so good and
some constructs that worked in xslt1 generated errors in xslt2 (worse,
would be if they didn't generate errors but generated different
results). That would be bad and would mean that effectively we would
have to keep to xslt1 forever. 


If you are writing a new stylesheet and want to check it works on an
xslt1 processor, you need an xslt1 processor to test it on, backward
compatibility doesn't help at all there.

David

________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________

Current Thread