XSLT/FO/XQuery

The XSLT/FO/XQuery preferences panel is opened from menu OptionsPreferences+XML+XSLT/FO/XQuery

 

Figure 20.41. The XSLT/FO/XQuery preferences panel

The XSLT/FO/XQuery preferences panel

Check the option Create transformation temporary files in system temporary directory when creating transformation temporary files in the same folder as the source of the transformation breaks the transformation, for example the transformation processes all the files located in the same folder as the source of the transformation, which will include the temporary files, which you probably do not want.

 XSLT

The XSLT preferences panel is opened from menu OptionsPreferences+XML+XSLT/FO/XQuery+XSLT

 

Figure 20.42. The XSLT preferences panel

The XSLT preferences panel

If you want to use an XSLT transformer different than the ones that ship with <oXygen/> namely Apache Xalan and Saxon all you have to do is to specify the name of the transformer's factory class which <oXygen/> will set as the value of the Java property "javax.xml.transform.TransformerFactory". To perform an XSLT transformation with Saxon 7 for instance you have to place the Saxon 7 jar file in the <oXygen/> libraries directory (the lib subdirectory of the installation directory), set "net.sf.saxon.TransformerFactoryImpl" as the property value and select JAXP as the XSLT processor in the transformation scenario associated to the transformed XML document.

Value

Allows the user to enter the name of the transformer factory Java class.

XSLT 1.0 Validate with

Allows the user to set the XSLT Engine used for validation of XSL 1.0 documents.

XSLT 2.0 Validate with

Allows the user to set the XSLT Engine used for validation of XSL 2.0 documents.

 Saxon6

The Saxon 6 preferences panel is opened from menu OptionsPreferences+XML+XSLT/FO/XQuery+XSLT+Saxon+Saxon 6

 

Figure 20.43. The Saxon 6 XSLT preferences panel

The Saxon 6 XSLT preferences panel

  • Line numbering: If checked line numbers are maintained for the source document.

  • Disable calls on extension functions: If checked external functions called is disallowed. Checking this is recommended in an environment where untrusted stylesheets may be executed. Also disables user-defined extension elements, together with the writing of multiple output files, all of which carry similar security risks.

  • Policy for handling recoverable errors in the stylesheet: Allows the user to choose how dynamic errors will be handled. Either one of the following options can be selected: recover silently, recover with warnings or signal the error and do not attempt recovery.

 Saxon HE/PE/EE

The Saxon HE/PE/EE preferences panel is opened from menu OptionsPreferences+XML+XSLT/FO/XQuery+XSLT+Saxon+Saxon HE/PE/EE

The XSLT options which can be configured for the Saxon 9 transformer (both the Basic and the Schema Aware versions) are:

 

Figure 20.44. The Saxon HE/PE/EE XSLT preferences panel

The Saxon HE/PE/EE XSLT preferences panel

  • Version warnings: If checked a warning will be generated when running an XSLT 2.0 processor against an XSLT 1.0 stylesheet. The XSLT specification requires this to be done by default.

  • Allows calls on extension functions: If checked external functions called is disallowed. Checking this is recommended in an environment where untrusted stylesheets may be executed. Also disables user-defined extension elements, together with the writing of multiple output files, all of which carry similar security risks.

  • DTD based validation of the source file: If checked XML source documents are validated against their DTD.

  • Line numbering: If checked line numbers are maintained for the source document.

  • Policy for handling recoverable errors in the stylesheet: Allows the user to choose how dynamic errors will be handled. Either one of the following options can be selected: recover silently, recover with warnings or signal the error and do not attempt recovery.

  • Strip whitespaces feature can be one of the three options: All, Ignorable, None.

    All

    strips all whitespace text nodes from source documents before any further processing, regardless of any xsl:strip-space declarations in the stylesheet, or any xml:space attributes in the source document.

    Ignorable

    strips all ignorable whitespace text nodes from source documents before any further processing, regardless of any xsl:strip-space declarations in the stylesheet, or 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

    strips no whitespace before further processing. (However, whitespace will still be stripped if this is specified in the stylesheet using xsl:strip-space).

Saxon9SA specific options

  • Schema based validation of the source file: This determines whether source documents should be parsed with schema-validation enabled.

  • Lax schema based validation of the source file: This determines whether source documents should be parsed with schema-validation enabled.

  • Validation errors in the result tree treated as warnings: If checked, all validation errors are treated as warnings, otherwise they are treated as fatal.

 Saxon HE/PE/EE Advanced options

The Saxon HE/PE/EE Advanced preferences panel is opened from menu OptionsPreferences+XML+XSLT/FO/XQuery+XSLT+Saxon+Saxon HE/PE/EE+Advanced

The advanced XSLT options which can be configured for the Saxon 9 transformer (both the Basic and the Schema Aware versions) are:

 

Figure 20.45. The Saxon HE/PE/EE XSLT Advanced preferences panel

The Saxon HE/PE/EE XSLT Advanced preferences panel

  • URI Resolver class name: Allows the user to specify a custom implementation for the URI resolver used by the XSLT Saxon 9 transformer ("-r" option when run from the command line). The class name must be fully specified and the corresponding jar or class extension must be configured from the dialog for configuring the XSLT extension for the particular scenario

  • Collection URI Resolver class name: Allows the user to specify a custom implementation for the Collection URI resolver used by the XSLT Saxon 9 transformer ("-cr" option when run from the command line). The class name must be fully specified and the corresponding jar or class extension must be configured from the dialog for configuring the XSLT extension for the particular scenario

 XSLTProc

The XSLTProc preferences panel is opened from menu OptionsPreferences+XML+XSLT/FO/XQuery+XSLT+XSLTProc

 

Figure 20.46. The XSLTProc preferences panel

The XSLTProc preferences panel

The options of the XSLTProc processor are the same as the ones available in the command line for the XSLTProc processor:

Enable XInclude processing

If checked XInclude references will be resolved when XSLTProc is used as transformer in the transformation scenario.

Skip loading the document's DTD

If checked the DTD specified in the DOCTYPE declaration will not be loaded.

Do not apply default attributes from document's DTD

If checked the default attributes declared in the DTD and not specified in the document are not included in the transformed document.

Do not use Internet to fetch DTD's, entities or docs

If checked the remote references to DTD's and entities are not followed.

Maximum depth in templates stack

If the limit of maximum templates is reached the transformation ends with an error.

Verbosity

If checked the transformation will output detailed status messages about the transformation process in the Warnings view.

Show version of libxml and libxslt used

If checked <oXygen/> will display in the Warnings view the version of the libxml and libxslt libraries invoked by XSLTProc.

Show time information

If checked the Warnings view will display the time necessary for running the transformation.

Show debug information

If checked the Warnings view will display debug information about what templates are matched, parameter values, etc.

Show all documents loaded during processing

If checked <oXygen/> will display in the Warnings view the URL of all the files loaded during transformation.

Show profile information

If checked <oXygen/> will display in the Warnings view a table with all the matched templates, and for each template: the match XPath expression, template name, number of template modes, number of calls, execution time.

Show the list of registered extensions

If checked <oXygen/> will display in the Warnings view a list with all the registered extension functions, extension elements and extension modules.

Refuses to write to any file or resource

If checked the XSLTProc processor will not write any part of the transformation result to an external file on disk. If such an operation is requested by the processed XSLT stylesheet the transformation ends with a runtime error.

Refuses to create directories

If checked the XSLTProc processor will not create any directory during the transformation process. If such an operation is requested by the processed XSLT stylesheet the transformation ends with a runtime error.

 MSXML

The MSXML preferences panel is opened from menu OptionsPreferences+XML+XSLT/FO/XQuery+XSLT+MSXML

 

Figure 20.47. The MSXML preferences panel

The MSXML preferences panel

The options of the MSXML 3.0 and 4.0 processors are the same as the ones available in the command line for the MSXML processors:

Validate documents during parse phase

If checked and either the source or style sheet document has a DTD or schema against which its content should be checked, validation is performed.

Do not resolve external definitions during parse phase

By default, MSXSL instructs the parser to resolve external definitions such as document type definition (DTD), external subsets or external entity references when parsing the source and style sheet documents. If this option is checked the resolution is disabled.

Strip non-significant whitespaces

If checked strip non-significant white space from the input XML document during the load phase. Enabling this option can lower memory usage and improve transformation performance while, in most cases, creating equivalent output.

Show time information

If checked the relative speed of various transformation steps can be measured: time to load, parse, and build the input document; time to load, parse, and build the style sheet document; time to compile the style sheet in preparation for the transformation; time to execute the style sheet.

Start transformation in this mode

Although style sheet execution usually begins in the empty mode, this default may be changed by specifying another mode. Changing the start mode allows execution to jump directly to an alternate group of templates.

 MSXML.NET

The MSXML.NET preferences panel is opened from menu OptionsPreferences+XML+XSLT/FO/XQuery+XSLT+MSXML.NET

 

Figure 20.48. The MSXML.NET preferences panel

The MSXML.NET preferences panel

The options of the MSXML.NET processor are the same as the ones available in the command line for the MSXML.NET processor:

Enable XInclude processing

If checked XInclude references will be resolved when MSXML.NET is used as transformer in the transformation scenario.

Validate documents during parse phase

If checked and either the source or style sheet document has a DTD or schema against which its content should be checked, validation is performed.

Do not resolve external definitions during parse phase

By default MSXML.NET resolves external definitions such as DTD external subsets or external entity references when parsing source XML document and stylesheet document. Using this option you can disable this behaviour. (Note, that it may affect also the validation process.)

Strip non-significant whitespaces

If checked strip non-significant white space from the input XML document during the load phase. Enabling this option can lower memory usage and improve transformation performance while, in most cases, creating equivalent output.

Show time information

If checked the relative speed of various transformation steps can be measured: time to load, parse, and build the input document; time to load, parse, and build the style sheet document; time to compile the style sheet in preparation for the transformation; time to execute the style sheet.

Forces ASCII output encoding

There is a known problem with .NET 1.X XSLT processor (System.Xml.Xsl.XslTransform class) - it doesn't support escaping of characters as XML character references when they cannot be represented in the output encoding. That means that when you output a character that cannot be represented in output encoding, it will be outputted as '?'. Usually this happens when output encoding is set to ASCII. With this option checked the output is forced to be ASCII encoded and all non-ASCII characters get escaped as XML character references (&#nnnn; form).

Allow multiple output documents

This option allows to create multiple result documents using the exsl:document extension element.

Use named URI resolver class

This option allows to specify a custom URI resolver class to resolve URI references in xsl:import/xsl:include instructions (during XSLT stylesheet loading phase) and in document() function (during XSL transformation phase).

Assembly file name for URI resolver class

The previous option specifies partially or fully qualified URI resolver class name, e.g. Acme.Resolvers.CacheResolver. Such name requires additional assembly specification using this option or the next option, but fully qualified class name (which always includes an assembly specifier) is all-sufficient. See MSDN for more info about fully qualified class names. This option specifies a file name of the assembly, where the specified resolver class can be found.

Assembly GAC name for URI resolver class

This option specifies partially or fully qualified name of the assembly in the global assembly cache (GAC), where the specified resolver class can be found. See MSDN for more info about partial assembly names. Also see the previous option.

List of extension object class names

This option allows to specify extension object classes, whose public methods then can be used as extension functions in an XSLT stylesheet. It is a comma-separated list of namespace-qualified extension object class names. Each class name must be bound to a namespace URI using prefixes as when providing XSLT parameters.

Use specified EXSLT assembly

MSXML.NET supports rich library of the EXSLT and EXSLT.NET extension functions via embedded or plugged in EXSLT.NET library. EXSLT support is enabled by default and cannot be disabled in this version. If you want to use an external EXSLT.NET implementation instead of a built-in one use this option.

Credential loading source xml

This option allows to specify user credentials to be used when loading XML source documents. The credentials should be provided in the "username:password@domain" format (all parts are optional).

Credential loading stylesheet

This option allows to specify user credentials to be used when loading XSLT stylesheet documents. The credentials should be provided in the "username:password@domain" format (all parts are optional).