MorganaXProc’s Implementation Report

This page is intended as an on going report on the implementation of XProc provided by MorganaXProc.

Deviance from the Recommendation

MorganaXProc is pretty close to XProc: An XML Pipeline Language. W3C Recommendation 11 May 2010. This page is to mark deviance from the Recommendation. The entries are ordered by step names, so you can easily find the information you need. p:validate-with-relax-ng The option "dtd-attribute-values" is not supported. Using the step with option value "true" will result in ...

Interpretation of the Recommendation

At one point while developing MorganaXProc we came to the need of interpreting the rules set out in the Recommendation. When it comes to implementing <p:unwrap> we are facing the problem about what to do, when the document element is unwrapped and the resulting document then is not well-formed XML. The Recommendation mentions this case, ...

MorganaXProc’s Extensions to XProc

Although MorganaXProc does strongly comply to the rules set out in the XProc Recommendation, is does one or two things not defined for XProc as a language to make it more useful: Storing binary data in <p:store> Using wrappers to convert non xml data on the fly in <p:data> Using self defined XQuery functions in XProc Using XPath functions ...

MorganaXProc 0.95-4 released

MorganaXProc 0.95-4 was released on 2015-03-08 New features are: Support for user defined XPath functions to XProc, XQueryConnector and XSLTConnector via XPathExtensionFunction. Improved usability of resolvers for XQuery, XSLT and XPath. Full access to XProcFilesystem from XQuery and XSLT. Finally module import in XQuery is implemented. New implementation for fn:collection(uri) in XPath and XQuery. Extension attributes as in "3.8 Extension attributes“ of ...

MorganaXProc 0.95-5 released

MorganaXProc 0.95-5 was released on 2015-05-16 MorganaXProc 0.95-5 is basically a service release with some bug fixes and some internal changes of classes and interfaces to prepare for XProc 2.0. New features: Support for proposed file extension steps: All steps proposed on EXProc.org are now implemented. Additionally <pxf:tempdir/> is also implemented. To use these steps in your pipeline, import ...

MorganaXProc 0.95-6 released

MorganaXProc 0.95-6 was released on 2015-05-30 This is a bug-fixing release: Fixed a bug that prevent p:pipeline to be used in the graphical user interface. Fixed a bug that lead to a null pointer exception when MorganaXProc is used from java application with unbound input ports. Improves error handling when a p:declare-step has just children "p:variable".

MorganaXProc 0.95-7 released

MorganaXProc 0.95-7 was released on 2015-06-03 This is a bug-fixing release: Fixes a bug which prevents access to context node in p:xslt when option „template-name“ is used. Changes interface „XSLTTemplate“ in XSLTConnector to cover this case. Fixes a bug when p:viewport has no p:viewport-source and there is no default readable port for p:viewport. Corrects error message when p:viewport matches document ...

MorganaXProc 0.95-8 released

MorganaXProc 0.95-8 was released on 2015-10-04 These are the basic new features: Functions from an XQuery module can be imported into the XPath context of XProc by using p:import (more), XPath functions written in Java can be imported into the XPath context of XProc (more), XProc steps written in Java can be imported into a pipeline using p:import (more), Dependencies ...

Additional steps for debugging introduced

MorganaXProc 0.95-10 introduced two new steps for debugging purposes: mod:report <p:declare-step type="mod:report" xmlns:mod="http://www.xml-project.com/nasp/debug"> <p:input port="source" primary="true" sequence="true" /> <p:output port="result" primary="true" seqeunce="true" /> <p:option name="message" required="true" /> /*xs:string*/ <p:option name="write-source" select='false'" /> /*xs:boolean*/ <p:declare-step/> Copies port "source" to port "result" and writes content of option message to the standard output port. If write-source is 'true' all documents an port "source" are written ...

XPath 3.0 support in MorganaXProc

In addition to XPath 1.0 and 2.0 MorganaXProc now also supports XPath 3.0. MorganaXProc's implementation of XPath 3.0 supports all features except schema awareness and higher order functions. It has been intensely tested against the test-suite and currently has a conformance of 99.xx%. However please keep in mind that these results are artificial and so please be careful when using ...