Advanced Saxon HE/PE/EE XSLT Transformation Options
The XSLT transformation scenario allows you to configure advanced options that are specific for the Saxon HE (Home Edition), PE (Professional Edition), and EE (Enterprise Edition) engines. They are the same options as those in the Saxon HE/PE/EE preferences page but they are configured as a specific set of transformation options for each transformation scenario, while the values set in the preferences page apply as global options. The advanced options configured in a transformation scenario override the global options defined in the preferences page.
Saxon-HE/PE/EE Options
- Mode ("-im")
- A Saxon-specific option that sets the initial mode for the transformation. If this value is also specified in a configuration file, the value in this option takes precedence.
- Template ("-it")
- A Saxon-specific option that sets the name of the initial XSLT template to be
executed. If this value is also specified in a configuration
file, the value in this option takes precedence.Tip: If your stylesheet includes
<xsl:template name="xsl:initial-template">
, Oxygen XML Developer Eclipse plugin will automatically detect and use it as the initial template, so this option is not needed in this case. - Use a configuration file ("-config")
- Select this option if you want to use a Saxon 12.3 configuration file that will be executed for the XSLT transformation and validation processes. You can specify the path to the configuration file by entering it in the URL field, or by using the Insert Editor Variables button, or using the browsing actions in the Browse drop-down list.
- Debugger trace into XPath expressions (applies to debugging sessions)
- Instructs the XSLT Debugger to step into XPath expressions.
- Enable Optimizations ("-opt")
- This option is selected by default, which means that optimization is enabled. If not selected, the optimization is suppressed, which is helpful when reducing the compiling time is important, optimization conflicts with debugging, or optimization causes extension functions with side-effects to behave unpredictably.
- Line numbering ("-l")
- Line numbers where errors occur are included in the output messages.
- Expand attributes defaults ("-expand")
- Specifies whether or not the attributes defined in the associated DTD or XML Schema are expanded in the output of the transformation you are executing.
- DTD validation of the source ("-dtd")
- Specifies whether or not the source document will be validated against their
associated DTD. You can choose from the following:
-
On - Requests DTD validation of the source file and of any
files read using the
document()
function. - Off - (default setting) Suppresses DTD validation.
-
Recover - Performs DTD validation but treats the errors as
non-fatal.Note: Any external DTD is likely to be read even if not used for validation, since DTDs can contain definitions of entities.
-
On - Requests DTD validation of the source file and of any
files read using the
- Strip whitespaces ("-strip")
- Specifies how the strip whitespaces operation is handled. You can choose one of
the following values:
- All ("all") - Strips all whitespace text nodes from
source documents before any further processing, regardless of any
@xml:space
attributes in the source document. - Ignore ("ignorable") - Strips all ignorable
whitespace text nodes from source documents before any further processing,
regardless of any
@xml:space
attributes in the source document. Whitespace text nodes are ignorable if they appear in elements defined in the DTD or schema as having element-only content. - None ("none") - Strips no whitespace before further processing.
- All ("all") - Strips all whitespace text nodes from
source documents before any further processing, regardless of any
- Enable profiling ("-TP")
- If selected, profiling of the execution time in a stylesheet is enabled. The corresponding text field is used to specify the path to the output file where the profiling information will be saved. As long as the option is selected, and the output file specified, it will gather timed tracing information and create a profile report to the specified file.
Saxon-PE/EE Options
- Register Saxon-JS extension functions and instructions
- Registers the Saxon-CE extension functions and instructions when compiling a
stylesheet using the Saxon 12.3 processors.Note: Saxon-CE, being JavaScript-based, was designed to run inside a web browser. This means that you will use Oxygen XML Developer Eclipse plugin only for developing the Saxon-CE stylesheet, leaving the execution part to a web browser. See more details about executing such a stylesheet on Saxonica's website.
- Allow calls on extension functions ("-ext")
- If selected, the stylesheet is allowed to call external Java functions. This does not affect calls on integrated extension functions, including Saxon and EXSLT extension functions. This option is useful when loading an untrusted stylesheet (such as from a remote site using http://[URL]). It ensures that the stylesheet cannot call arbitrary Java methods and thus gain privileged access to resources on your machine.
- Enable assertions ("-ea")
- In XSLT 3.0, you can use the
<xsl:assert>
element to make assertions in the form of XPath expressions, causing a dynamic error if the assertion turns out to be false. If this option is selected, XSLT 3.0<xsl:assert>
instructions are enabled. If it is not selected (default), the assertions are ignored.
Saxon-EE Options
- XML Schema version
- Use this option to change the default XML Schema version for this transformation. To change the default XML Schema version globally, open the Preferences dialog box and go to and use the Default XML Schema version option.
- Validation of the source file ("-val")
- Requests schema-based validation of the source file and of any files read using
document()
or similar functions. It can have the following values:- Schema validation ("strict") - This mode requires an XML Schema and allows for parsing the source documents with strict schema-validation enabled.
- Lax schema validation ("lax") - If an XML Schema is provided, this mode allows for parsing the source documents with schema-validation enabled but the validation will not fail if, for example, element declarations are not found.
- Disable schema validation - This specifies that the source documents should be parsed with schema-validation disabled.
- Validation errors in the result tree treated as warnings ("-outval")
-
Normally, if validation of result documents is requested, a validation error is fatal. Selecting this option causes such validation failures to be treated as warnings.
- Write comments for non-fatal validation errors of the result document
- The validation messages for non-fatal errors are written (wherever possible) as a comment in the result document itself.
- Enable streaming mode
- Selecting this option will allow an XSLT to run in streaming mode. It is not selected by default. However, in certain instances, the Saxon XSLT processor may auto detect and use streaming even if this option is not selected.
Other Options
- Initializer class
- Equivalent to the
-init
Saxon command-line argument. The value is the name of a user-supplied class that implements the net.sf.saxon.lib.Initializer interface. This initializer is called during the initialization process, and may be used to set any options required on the configuration programmatically. It is particularly useful for tasks such as registering extension functions, collations, or external object models, especially in Saxon-HE where the option cannot be set via a configuration file. Saxon only calls the initializer when running from the command line, but the same code may be invoked to perform initialization when running user application code.