XSLT 3.0 and Saxon 9.8

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

XSLT 3.0 and Saxon 9.8

Michael Kay
XSLT 3.0 becomes a Recommendation today!

We kept you waiting for ten years, but it has finally happened.

A reminder of some of the key features:

* Streaming

* Separately compiled packages

* Higher-order functions

* JSON, maps, and arrays

and of course lots of goodies like trigonometric functions, dynamic XPath evaluation, a string concatenation operator, text value templates, a random number generator, and a function chaining operator.

As a bonus, we thought you'd like an open-source implementation.

So Saxon 9.8 is released today, and the open source Saxon-HE version now includes core support for XSLT 3.0 with XPath 3.1.

There are lots of other new things in Saxon 9.8:

* just-in-time compilation to reduce the cost of loading vast stylesheets like DocBook and DITA when you're only using a fraction of the template rules

* hot-spot bytecode generation, again to put the compilation effort where it's needed

* optimization of template rule sets like those found in DITA where the matching is all on attribute values rather than element names

* a new approach to processing of DOM trees, which are now only twice as slow as Saxon's native TinyTree compared with 5-10 times slower the old way

* some experimental syntax enhancements to enrich the type system: tuple types, union types, and type aliases

* bytecode generation for validation of user-defined simple types in XSD

At the same time as moving foward to XSLT 3.0, we're dropping support for older versions of the specs, so you can no longer run in XQuery 1.0 or XSLT 2.0 mode, for example - your code should continue to work, because the specs have a high level of backwards compatibility. A particular decision that will affect some of you is that we're dropping XSLT 1.0 backwards compatibility mode from Saxon-HE, and hope to eliminate it entirely in due course.

Saxon-HE is available at http://saxon.sf.net/

Saxon-PE and -EE are at http://www.saxonica.com - follow the links to products, downloads, and documentation.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: XSLT 3.0 and Saxon 9.8

max toro q
Congrats!

Doc typo at http://www.saxonica.com/html/documentation/extensions/instructions/array.html
Example uses xsl:array instead of saxon:array
--
Max Toro


On Thu, Jun 8, 2017 at 1:25 PM, Michael Kay <[hidden email]> wrote:

> XSLT 3.0 becomes a Recommendation today!
>
> We kept you waiting for ten years, but it has finally happened.
>
> A reminder of some of the key features:
>
> * Streaming
>
> * Separately compiled packages
>
> * Higher-order functions
>
> * JSON, maps, and arrays
>
> and of course lots of goodies like trigonometric functions, dynamic XPath evaluation, a string concatenation operator, text value templates, a random number generator, and a function chaining operator.
>
> As a bonus, we thought you'd like an open-source implementation.
>
> So Saxon 9.8 is released today, and the open source Saxon-HE version now includes core support for XSLT 3.0 with XPath 3.1.
>
> There are lots of other new things in Saxon 9.8:
>
> * just-in-time compilation to reduce the cost of loading vast stylesheets like DocBook and DITA when you're only using a fraction of the template rules
>
> * hot-spot bytecode generation, again to put the compilation effort where it's needed
>
> * optimization of template rule sets like those found in DITA where the matching is all on attribute values rather than element names
>
> * a new approach to processing of DOM trees, which are now only twice as slow as Saxon's native TinyTree compared with 5-10 times slower the old way
>
> * some experimental syntax enhancements to enrich the type system: tuple types, union types, and type aliases
>
> * bytecode generation for validation of user-defined simple types in XSD
>
> At the same time as moving foward to XSLT 3.0, we're dropping support for older versions of the specs, so you can no longer run in XQuery 1.0 or XSLT 2.0 mode, for example - your code should continue to work, because the specs have a high level of backwards compatibility. A particular decision that will affect some of you is that we're dropping XSLT 1.0 backwards compatibility mode from Saxon-HE, and hope to eliminate it entirely in due course.
>
> Saxon-HE is available at http://saxon.sf.net/
>
> Saxon-PE and -EE are at http://www.saxonica.com - follow the links to products, downloads, and documentation.
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> saxon-help mailing list archived at http://saxon.markmail.org/
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/saxon-help

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: XSLT 3.0 and Saxon 9.8

cmarchand
In reply to this post by Michael Kay
Congratulations to all of you, spec redactors and implementors !

Best regards,
Christophe


Le 08/06/2017 à 19:25, Michael Kay a écrit :

> XSLT 3.0 becomes a Recommendation today!
>
> We kept you waiting for ten years, but it has finally happened.
>
> A reminder of some of the key features:
>
> * Streaming
>
> * Separately compiled packages
>
> * Higher-order functions
>
> * JSON, maps, and arrays
>
> and of course lots of goodies like trigonometric functions, dynamic XPath evaluation, a string concatenation operator, text value templates, a random number generator, and a function chaining operator.
>
> As a bonus, we thought you'd like an open-source implementation.
>
> So Saxon 9.8 is released today, and the open source Saxon-HE version now includes core support for XSLT 3.0 with XPath 3.1.
>
> There are lots of other new things in Saxon 9.8:
>
> * just-in-time compilation to reduce the cost of loading vast stylesheets like DocBook and DITA when you're only using a fraction of the template rules
>
> * hot-spot bytecode generation, again to put the compilation effort where it's needed
>
> * optimization of template rule sets like those found in DITA where the matching is all on attribute values rather than element names
>
> * a new approach to processing of DOM trees, which are now only twice as slow as Saxon's native TinyTree compared with 5-10 times slower the old way
>
> * some experimental syntax enhancements to enrich the type system: tuple types, union types, and type aliases
>
> * bytecode generation for validation of user-defined simple types in XSD
>
> At the same time as moving foward to XSLT 3.0, we're dropping support for older versions of the specs, so you can no longer run in XQuery 1.0 or XSLT 2.0 mode, for example - your code should continue to work, because the specs have a high level of backwards compatibility. A particular decision that will affect some of you is that we're dropping XSLT 1.0 backwards compatibility mode from Saxon-HE, and hope to eliminate it entirely in due course.
>
> Saxon-HE is available at http://saxon.sf.net/
>
> Saxon-PE and -EE are at http://www.saxonica.com - follow the links to products, downloads, and documentation.
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> saxon-help mailing list archived at http://saxon.markmail.org/
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/saxon-help
>


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: XSLT 3.0 and Saxon 9.8

Martin Honnen-2
In reply to this post by Michael Kay
On 08.06.2017 19:25, Michael Kay wrote:

> XSLT 3.0 becomes a Recommendation today!
>
> We kept you waiting for ten years, but it has finally happened.
>
> A reminder of some of the key features:
>
> * Streaming
>
> * Separately compiled packages
>
> * Higher-order functions
>
> * JSON, maps, and arrays
>
> and of course lots of goodies like trigonometric functions, dynamic XPath evaluation, a string concatenation operator, text value templates, a random number generator, and a function chaining operator.
>
> As a bonus, we thought you'd like an open-source implementation.
>
> So Saxon 9.8 is released today, and the open source Saxon-HE version now includes core support for XSLT 3.0 with XPath 3.1.

Simply wonderful, thanks a lot.

Now for the funny part, it seems the code comment in
https://dev.saxonica.com/repos/archive/opensource/trunk/bj/net/sf/saxon/Transform.java 
never caught up with all the years of spec and version development as it
still says:

/**
  * This <B>Transform</B> class is the entry point to the Saxon XSLT
Processor. This
  * class is provided to control the processor from the command line.<p>
  * <p/>
  * The XSLT syntax supported conforms to the W3C XSLT 1.0 and XPath 1.0
recommendation.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: XSLT 3.0 and Saxon 9.8

Dimitre Novatchev
In reply to this post by Michael Kay
Congrats for getting things done!

Tremendous achievement and will need at least 3 - 5 years to be
understood and to start to be used on a regular basis by a substantial
developers base.

Hope soon to see tuple types, union types, and type aliases in XSLT 4 .

I was lucky and honored to have worked with the WG for a short, 2-year period.

Thanks for your incredible contribution to the language and to the community.


Cheers,
Dimitre

On Thu, Jun 8, 2017 at 10:25 AM, Michael Kay <[hidden email]> wrote:

> XSLT 3.0 becomes a Recommendation today!
>
> We kept you waiting for ten years, but it has finally happened.
>
> A reminder of some of the key features:
>
> * Streaming
>
> * Separately compiled packages
>
> * Higher-order functions
>
> * JSON, maps, and arrays
>
> and of course lots of goodies like trigonometric functions, dynamic XPath evaluation, a string concatenation operator, text value templates, a random number generator, and a function chaining operator.
>
> As a bonus, we thought you'd like an open-source implementation.
>
> So Saxon 9.8 is released today, and the open source Saxon-HE version now includes core support for XSLT 3.0 with XPath 3.1.
>
> There are lots of other new things in Saxon 9.8:
>
> * just-in-time compilation to reduce the cost of loading vast stylesheets like DocBook and DITA when you're only using a fraction of the template rules
>
> * hot-spot bytecode generation, again to put the compilation effort where it's needed
>
> * optimization of template rule sets like those found in DITA where the matching is all on attribute values rather than element names
>
> * a new approach to processing of DOM trees, which are now only twice as slow as Saxon's native TinyTree compared with 5-10 times slower the old way
>
> * some experimental syntax enhancements to enrich the type system: tuple types, union types, and type aliases
>
> * bytecode generation for validation of user-defined simple types in XSD
>
> At the same time as moving foward to XSLT 3.0, we're dropping support for older versions of the specs, so you can no longer run in XQuery 1.0 or XSLT 2.0 mode, for example - your code should continue to work, because the specs have a high level of backwards compatibility. A particular decision that will affect some of you is that we're dropping XSLT 1.0 backwards compatibility mode from Saxon-HE, and hope to eliminate it entirely in due course.
>
> Saxon-HE is available at http://saxon.sf.net/
>
> Saxon-PE and -EE are at http://www.saxonica.com - follow the links to products, downloads, and documentation.
> ------------------------------------------------------------------------------
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> _______________________________________________
> saxon-help mailing list archived at http://saxon.markmail.org/
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/saxon-help

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: XSLT 3.0 and Saxon 9.8

Martin Honnen-2
On 08.06.2017 22:37, Dimitre Novatchev wrote:

> Tremendous achievement and will need at least 3 - 5 years to be
> understood and to start to be used on a regular basis by a substantial
> developers base.

Are you helping developers to get up-to-date with another Pluralsight
course?


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: XSLT 3.0 and Saxon 9.8

Vasu Chakkera
Congratulations to all the developers,testers and the members of user groups who helped make this happen.
Vasu Chakkera

On Jun 8, 2017 4:11 PM, "Martin Honnen" <[hidden email]> wrote:
On 08.06.2017 22:37, Dimitre Novatchev wrote:

Tremendous achievement and will need at least 3 - 5 years to be
understood and to start to be used on a regular basis by a substantial
developers base.

Are you helping developers to get up-to-date with another Pluralsight course?


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: XSLT 3.0 and Saxon 9.8

debbie
In reply to this post by Martin Honnen-2
On 08/06/2017 21:09, Martin Honnen wrote:

> On 08.06.2017 19:25, Michael Kay wrote:
>>
>> So Saxon 9.8 is released today, and the open source Saxon-HE version
>> now includes core support for XSLT 3.0 with XPath 3.1.
>
> Simply wonderful, thanks a lot.
>
> Now for the funny part, it seems the code comment in
> https://dev.saxonica.com/repos/archive/opensource/trunk/bj/net/sf/saxon/Transform.java 
> never caught up with all the years of spec and version development as
> it still says:
>
> /**
>  * This <B>Transform</B> class is the entry point to the Saxon XSLT
> Processor. This
>  * class is provided to control the processor from the command line.<p>
>  * <p/>
>  * The XSLT syntax supported conforms to the W3C XSLT 1.0 and XPath
> 1.0 recommendation.
>
Hi Martin,

I can certainly believe that there are code comments in the 9.8 product
that are out of date (though we do our best maintain them), but it seems
that you are looking in the wrong place in this instance.

https://dev.saxonica.com/repos/archive/opensource/trunk/bj is actually
the code for the old Saxon-B product, so the comment is actually correct
there!

The 9.8 code is not under https://dev.saxonica.com/repos/archive/ just
yet, so currently for the latest 9.8 code you should refer to
SourceForge: https://sourceforge.net/projects/saxon/files/Saxon-HE/9.8/

The 9.7 code is of course found under
https://dev.saxonica.com/repos/archive/opensource/latest9.7

Debbie

--
Debbie Lockett
Saxonica



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: XSLT 3.0 and Saxon 9.8

Martin Honnen-2
On 13.06.2017 12:54, Debbie wrote:

> On 08/06/2017 21:09, Martin Honnen wrote:
>
>> On 08.06.2017 19:25, Michael Kay wrote:
>>>
>>> So Saxon 9.8 is released today, and the open source Saxon-HE version
>>> now includes core support for XSLT 3.0 with XPath 3.1.
>>
>> Simply wonderful, thanks a lot.
>>
>> Now for the funny part, it seems the code comment in
>> https://dev.saxonica.com/repos/archive/opensource/trunk/bj/net/sf/saxon/Transform.java 
>> never caught up with all the years of spec and version development as
>> it still says:
>>
>> /**
>>  * This <B>Transform</B> class is the entry point to the Saxon XSLT
>> Processor. This
>>  * class is provided to control the processor from the command line.<p>
>>  * <p/>
>>  * The XSLT syntax supported conforms to the W3C XSLT 1.0 and XPath
>> 1.0 recommendation.
>>
> Hi Martin,
>
> I can certainly believe that there are code comments in the 9.8 product
> that are out of date (though we do our best maintain them), but it seems
> that you are looking in the wrong place in this instance.
>
> https://dev.saxonica.com/repos/archive/opensource/trunk/bj is actually
> the code for the old Saxon-B product, so the comment is actually correct
> there!

Sorry then, I thought trunk to be the latest version. Although even
Saxon-B since 8.9 implemented XSLT and XPath 2.0 and not 1.0. But not
important anyway now with XSLT 3.0 and XPath 3.1 to be explored with
Saxon 9.8.

> The 9.8 code is not under https://dev.saxonica.com/repos/archive/ just
> yet, so currently for the latest 9.8 code you should refer to
> SourceForge: https://sourceforge.net/projects/saxon/files/Saxon-HE/9.8/

Thanks, will look there.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
saxon-help mailing list archived at http://saxon.markmail.org/
[hidden email]
https://lists.sourceforge.net/lists/listinfo/saxon-help 
Loading...