XML Schema 1.0 implementation
The implementation of xs:redefine
has been revised slightly, to better reflect the notion of "pervasiveness"
described (with tantalising lack of detail) in the language specification. Every component now has a redefinition level;
a component defined within xs:redefine
has a redefinition level one higher than that of the component it
redefines. If two different but identically-named components have the same redefinition level, this is an error; but if they
have different redefinition levels, the higher one wins. An example where this comes into play is if a module R.XSD contains
two xs:redefine
elements; the first one redefines A.XSD, which itself includes B.XSD, and the second redefines
B.XSD, providing a revised version of a type T contained in B.XSD. Previously Saxon reported this as an error, on the grounds
that the schema returned by the first xs:redefine
and the schema returned by the second xs:redefine
could not be combined because they contained incompatible definitions of type T. This schema is now accepted as valid,
and the redefined type T wins.
In the command line interface, a new option -config:filename
is available. This refers to a configuration
file in which many
configuration options can be specified. The configuration described by this file must be an EnterpriseConfiguration.
Options specified directly on the command line override corresponding options
in the configuration file. The format of the configuration file is given in
The Saxon configuration file.
The bogus gMonth
format --MM--
is no longer accepted. This format appeared in error in the
original XML Schema 1.0 Recommendation, and was subsequently corrected by erratum. It still appears in a number of books on XML Schema.
It was recognized in all Saxon releases until and including 9.1. The correct format is --MM
.