MorganaXProc 1.0.7 released

MorganaXProc 1.0.7 was released on 2017-08-14.

It is a service release improving usability and fixing some bugs:

  • Improved error messages: A dynamic error (XD0030) is raised, if the namespace URI is not valid when creating an element or attribute (replaces an unspecific java exception wrap in c:error).
  • Improved error message when an element/attribute with a prefix is created, but no namespace is associated with this prefix.
  • Improved attribute creation with names in namespaces: Using existing prefixes if possible.
  • Improved element creation with names in namespaces: Removing unnecessary prefixes. (Thanks to Gerrit for pointing this out.)
  • Changed initialization process for XMLCatalog resolver: If this resolver is not used, resolver.jar is not required on the classpath anymore.
  • Changed mechanism in p:validate-with-schematron, so that XSLT 2.0 implementation is used as default, if selected XSLT processor supports 2.0 or higher.
  • Fixed a Nullpointer bug when <p:choose /> has no children <p:when /> or <p:otherwise />.
  • Improved import of XSLT-functions from stylesheet with @version="3.0": Only functions marked as "public" are visible in XProc pipelines.
  • Tested with Saxon HE and Saxon HE
  • Experimental implementation of support for Saxon 9.8.x.
    Some tests in test suite fail, because Saxon HE 9.8.x does not support XSLT 1.0 compatibility:

    • <p:xslt /> will raise error for stylesheets with @version="1.0".
    • <p:validate-schematron fails, because 1.0 stylesheets are imported even if queryBinding explicitly asks for "2.0". A patched version passes tests with Saxon HE.