Impressum/Imprint Datenschutz

2 Step specific extension

2.1 p:file-delete

In the returned c:result document, an extension attribute mox:resource-deleted indicates, whether the resource was actually deleted ('true') or did not exist beforehand ('false').

2.2 p:file-mkdir

In the returned c:result document, an extension attribute mox:directory-created indicates, whether the resource was actually newly created ('true') or did exist beforehand ('false').

2.3 p:for-each

Extension attribute "mox:threads" controls the number of system threads used in this for-each when using Java 11 or later. The value must be a non-negative integer, 0 means no threading. With command line switch -no-threads, no threading is set globally.

By default MorganaXProc-III does not use threads, but executes the subpipeline for each document sequentially. Enabling threaded execution of p:for-each uses CPU's multi-core infrastructure. With this multiple documents for the iteration-source are proceseed by different cores and therefor are handled parallel. In some cases this can improve pipeline's execution speed significantly, in other cases it slows down execution as a consequence of threading overhead. Also speed improvement may vary from one computer to another if different processors and/or core numbers are used.

The use of mox:thread might lead to unexpected results in the order of [p:]message. while debugging pipelines it might therefor be a good idea to turn threading off.

2.4 p:http-request

Option map parameters now supports key mox:pause-before-request which must be associated with a non-negative integer. If the value is greater than 0 it causes the step to pause for the given number of seconds before the actual http-request is performed. Using this parameter is handy if a web server answers with status code 202 to reduce the number of waiting recursive calls.

2.5 p:load (and p:document)

For p:load and consequently in p:document is an option map parameters defined. For XML documents MorganaXProc-III recognizes the following keys:

  1. mox:use-line-numbers which has to be associated to a single boolean value. If the associated value is true, MorganaXProc-III will use line/column positions supplied by a parser for elements. This increases memory consumption, but improves error messages e.g. from static analysis of XSLT stylesheets.

  2. mox:remove-ignorable-whitespace which has to be associated to a single boolean value. If a DTD validation is performed, MorganaXProc-III uses the structure information, to detect (and if true is supplied for mox:remove-ignorable-whitespace) remove the ignorable whitespace.

For documents with content-type "text/html" there is an additional parsing parameter mox:use-xhtml-namespace. This parameter has to be associated to a single boolean value. By default (or if parameter is set to true) the resulting document will be in XHTML namespace. If mox:use-xhtml-namespace is associated to false, the resulting document is in no namespace. The parameter is ignored for all other content types.