Saxonica: XSLT and XQuery Processing: Beta 0.1 (February 2012)

Beta 0.1 (February 2012)

This first beta release of Saxon-CE follows a public alpha release phase that delivered some most useful feedback. In this beta we've focussed on providing a more productive platform for Saxon-CE development, improving processor performance and providing better standards compliance.

For the end-user, Saxon-CE-driven interactive web pages are noticeably more responsive. Bug fixes account for some of this performance improvement, but much is down to a redesign of the way Saxon-CE handles events. The new design avoids the need to re-register event-handlers on elements with HTML changes; this design also fixes issues related both to the returned event object and the context node for specific event types. The issue of unwanted event bubbling is also resolved through this change.

For the XSLT developer and tester, Saxon-CE now dispenses with the venerable message box and instead provides configurable XSLT diagnostics in the form of more detailed error and event logging. Log messages are output to the development console (such as Firebug), with the logging threshold level set using a combination of a URL parameter and console settings. For testing on browsers without a console, output is directed to a floating and resizable HTML panel which will show only when required. 'Native' JavaScript event handlers can also be used to monitor Saxon-CE log events.

A new regular expression engine for Saxon-CE (shared with the server-side product) provides compliance with theXPath 2.0 standard, one benefit of this is much broader support for Unicode character sets than found in JavaScript.

There's a new IXSL instruction, ixsl:remove-attribute; this is the counterpart toixsl:set-attribute and is useful for HTML attributes whose existence affects behaviour, such as thedisabled attribute.

Importantly, Saxon-CE now requires a license file. When you register, you will be prompted to provide the domain names for the license file, this is then sent to you by email and (for the beta) expires 90 days after registration. Saxon-CE uses the license file to verify the expiry date and, unless you're developing/testing on a local machine, it checks that the product is hosted on a listed domain name.

A summary of the changes: