
As part of our investigation in to how far back oXygen will support the new @override-extension-function attr over the @override attr, I was charged (by me) with testing different versions of Saxon. We are hoping somebody will go through the various releases of oXygen to find out what versions of Saxon they are associated with.[1] The oldest version of Saxon 9 I could easily find on Sourceforge was "Saxon-HE 9.2.0.6J from Saxonica". I chose to test by 0.2 increments: 9.2, 9.4, 9.6, and 9.8. If we need the odd decimal increments I'll be happy to do so, but I'm just hoping we don't. For each version of Saxon I tried it with two stylesheets: one in XSLT 2.0 (in which @override is the name of the attr) and one in XSLT 3.0 (in which @override-extension-function is the name of the attr). Each stylesheet defines two <xsl:function>s, one using each attribute. Anyway, here are the results. Not entirely expected, and somewhat disappointing. # --------- saxon version 9.2 using XSLT 2.0 --------- java -jar ~/Downloads/Saxon9.2/saxon9he.jar -s:xslt_attr_test_2.xslt -xsl:xslt_attr_test_2.xslt Error at xsl:function on line 17 column 70 of xslt_attr_test_2.xslt: XTSE0090: Attribute @override-extension-function is not allowed on element <xsl:function> Error at xsl:function on line 17 column 70 of xslt_attr_test_2.xslt: XTSE0090: Attribute @override-extension-function is not allowed on element <xsl:function> Failed to compile stylesheet. 2 errors detected. # --------- saxon version 9.2 using XSLT 3.0 --------- <?xml version="1.0" encoding="UTF-8"?>tst3o tst3oef # --------- saxon version 9.4 using XSLT 2.0 --------- Error at xsl:function on line 17 column 70 of xslt_attr_test_2.xslt: XTSE0090: Attribute @override-extension-function is not allowed on element <xsl:function> Error at xsl:function on line 17 column 70 of xslt_attr_test_2.xslt: XTSE0090: Attribute @override-extension-function is not allowed on element <xsl:function> Failed to compile stylesheet. 2 errors detected. # --------- saxon version 9.4 using XSLT 3.0 --------- Transformation failed: Requested feature (XSLT 3.0) requires Saxon-PE # --------- saxon version 9.6 using XSLT 2.0 --------- Error at xsl:function on line 17 column 70 of xslt_attr_test_2.xslt: XTSE0090: Attribute @override-extension-function is not allowed on element <xsl:function> Error at xsl:function on line 17 column 70 of xslt_attr_test_2.xslt: XTSE0090: Attribute @override-extension-function is not allowed on element <xsl:function> Stylesheet compilation failed: 2 errors reported # --------- saxon version 9.6 using XSLT 3.0 --------- Warning: at xsl:function on line 13 column 49 of xslt_attr_test_3.xslt: SXWN9014: The xsl:function/@override attribute is deprecated; use override-extension-function Warning: at xsl:function on line 13 column 49 of xslt_attr_test_3.xslt: SXWN9014: The xsl:function/@override attribute is deprecated; use override-extension-function <?xml version="1.0" encoding="UTF-8"?>tst3o tst3oef # --------- saxon version 9.8 using XSLT 2.0 --------- Warning at xsl:function on line 13 column 49 of xslt_attr_test_2.xslt: SXWN9014: The xsl:function/@override attribute is deprecated; use override-extension-function <?xml version="1.0" encoding="UTF-8"?>tst2o tst2oef # --------- saxon version 9.8 using XSLT 3.0 --------- Warning at xsl:function on line 13 column 49 of xslt_attr_test_3.xslt: SXWN9014: The xsl:function/@override attribute is deprecated; use override-extension-function <?xml version="1.0" encoding="UTF-8"?>tst3o tst3oef appendix: XSLT program (change '%' to either '2' or '3') -------- ---- ------- ------- --- -- ------ --- -- ---- | <?xml version="1.0" encoding="UTF-8"?> | <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" | xmlns:xs="http://www.w3.org/2001/XMLSchema" | exclude-result-prefixes="xs" | xmlns:syd="http://www.example.org/syd/ns" | version="%.0"> | | <xsl:template match="/"> | <xsl:value-of select="syd:tst%o()"/> | <xsl:value-of select="syd:tst%oef()"/> | </xsl:template> | | <xsl:function name="syd:tst%o" override="yes"> | <xsl:value-of select="'tst%0'"/> | </xsl:function> | | <xsl:function name="syd:tst%oef" override-extension-function="yes"> | <xsl:value-of select="' tst%oef'"/> | </xsl:function> | | </xsl:stylesheet> [1] I don't know if we can just look this up on the oXygen web site, can post on the oXygen-users mailing list, or need to actually find old versions to check. (In the "Libraries" tab of the "About oXygen" menu.)
participants (1)
-
Syd Bauman