XML News from Tuesday, September 5, 2006

The W3C CSS working group has posted the first public working draft of CSS Module: Namespaces. "This CSS module defines the syntax for using namespaces in CSS. It introduces the @namespace rule for declaring the default namespace and binding namespaces to namespace prefixes, and it defines a syntax that other specifications can adopt for using those prefixes in namespace-qualified names."

Given the namespace declarations:

@namespace toto "http://toto.example.org";
@namespace "http://example.com/foo";

In a context where the default namespace applies

represents the name A in the http://toto.example.org namespace.
represents the name B that belongs to no namespace.
represents the name C in any namespace, including no namespace.
represents the name D in the http://example.com/foo namespace.

Michael Kay has released version 8.8 of Saxon, his XSLT 2.0 and XQuery processor for Java and .NET. According to Kay, "There's a long list of changes at http://www.saxonica.com/documentation/changes/intro.html but most of them taken individually are fairly small. Saxon now achieves 100% pass rates in both the W3C XQuery and XSLT 2.0 test suites (a unique achievement), and many of the changes that were needed to reach this target are in obscure corner cases that very few users are likely to notice. (Do you really care about the difference between a float NaN and a double NaN? - the conformance tests do.)" New features include:

Saxon is published in two versions for both of which Java 1.4 or later (or .NET) is required. Saxon 8.7B is an open source product published under the Mozilla Public License 1.0 that "implements the 'basic' conformance level for XSLT 2.0 and XQuery." Saxon 8.7SA is a £250.00 payware version that "allows stylesheets and queries to import an XML Schema, to validate input and output trees against a schema, and to select elements and attributes based on their schema-defined type. Saxon-SA also incorporates a free-standard XML Schema validator. In addition Saxon-SA incorporates some advanced extensions not available in the Saxon-B product. These include a try/catch capability for catching dynamic errors, improved error diagnostics, support for higher-order functions, and additional facilities in XQuery including support for grouping, advanced regular expression analysis, and formatting of dates and numbers."