I wonder why version attribute is there in XSLT in the
first place. In most of the languages known, like Java
or C++, the programmer never specifies language
version number in his/her program. The compiler or
interpreter judges whether the syntax is valid..
I suppose the alternative would have been to put the version number in the
xml-stylesheet processing instruction or other API used for invoking the
transformation. But that seems intrinsically more error-prone.
All of this was done, I suspect, in an attempt to avoid the chaos caused on
the web by changing versions of HTML and browser incompatibilities. It needs
to be understood in that historic context.
Michael Kay
http://www.saxonica.com/