[ANN] Saxon 9.1 is available

Saxon 9.1 has been released. The schema-aware version, Saxon-SA, is
available on both Java and .NET.

Download links are at http://saxon.sf.net/.

Details of changes in the new release are at 

http://www.saxonica.com/documentation/changes/intro.html

>From the XML Schema perspective, the most significant developments are:

(A) Further implementation of features from the XML Schema 1.1 drafts
(including features first published in the Last Call working drafts of 20
June 2008). Notably:

- Assertions are now available on both complex and simple types. They can
use the full power of the XPath 2.0 language to define constraints on
document content, making use of separate validation technologies such as
Schematron largely unnecessary.

- Conditional Type Assignment is implemented. This feature is better known
as "co-occurrence constraints", and allows the type (and hence the content
model) of an element to depend on the values of the element's attributes.

- Generalized <xs:all> groups. Also known as "interleaving", this allows you
to specify a content model for an element that constrains the number of
occurrences of child elements without constraining their order. All groups
can also now contain wildcards.

- Local element declarations can now specify a target namespace different
from that of the containing schema, making it much easier to define local
restrictions of types defined in industry-standard schemas.

(B) Content models using occurrence bounds other than 0, 1, and infinity are
now much more efficiently handled, using a finite state machine with
counters. This change reduces memory requirements (sometimes dramatically)
as well as schema compilation speed.

(C) The ability to export a compiled schema in XML (the SCM format) and to
re-import the result later was first introduced experimentally in Saxon 9.0
but has been greatly strengthened. It now handles all schemas without
restriction and is validated against the full W3C test suite. The SCM format
is now documented in a well-annotated XML schema, making it feasible to use
as a way of getting programmatic access to schema information. The format
has also been aligned more closely with the description of the schema
component model in the W3C specification.

(D) The performance of schema compilation in cases where large numbers of
types extend a single base type (as in FpML) or where large numbers of
elements participate in the same substitution group (as in XBRL) is greatly
improved (in one case from 400 seconds to 0.5 seconds). This is achieved by
deferring the construction of the finite state machine until all the
affecting elements/types are known.

Michael Kay
http://www.saxonica.com/

Received on Thursday, 3 July 2008 10:10:15 UTC