Changes specific to .NET
Spellout numbering ("one", "two"; "first", "second"; etc) is now implemented in SaxonCS, using the ICU4N library (and therefore for all languages supported by ICU4N). The features and interfaces are essentially the same as for SaxonJ.
As with SaxonJ, there are API changes to allow multiple schemas to be compiled and
used for validation, rather than allowing only one schema per Configuration as
before. For details, see the description of the S9API Schema API changes - most of these changes apply
equally to the Saxon.Api interface in SaxonCS.
New capabilities are available when an XDM document is constructed by
wrapping a DOM (an instance of class System.Xml.XmlDocument). Provided DTD processing
is enabled when constructing the DOM, the XPath id() function will now locate
elements based on DTD-identified ID attributes, and the XSLT unparsed-entity-uri
and unparsed-entity-uri functions can be used to obtain information about
unparsed entities declared in the DTD. However, the Microsoft DOM does not provide information
enabling IDREF or IDREFS attributes, so the XPath idref()
function remains inoperative. These new capabilities are not available in an XDM tree
built using the System.Xml.XmlReader parser, because this parser does not provide
the application with sufficient information about the DTD.