Class FeatureKeys
- java.lang.Object
-
- net.sf.saxon.lib.FeatureKeys
-
public abstract class FeatureKeys extends java.lang.ObjectFeatureKeys defines a set of constants, representing the names of Saxon configuration options which can be supplied to the Saxon implementations of the JAXP interfaces TransformerFactory, SchemaFactory, Validator, and ValidationHandler, and to other interfaces such as the s9apiProcessor
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringALLOW_EXTERNAL_FUNCTIONSALLOW_EXTERNAL_FUNCTIONS determines whether calls to reflexive external functions are allowed.static java.lang.StringALLOW_MULTITHREADINGALLOW_MULTITHREADING determines whether multi-threading is allowed.static java.lang.StringALLOW_OLD_JAVA_URI_FORMATALLOW_OLD_JAVA_URI_FORMAT determines whether extension function calls to dynamically-loaded Java extension functions may use the URI format supported in older Saxon releases.static java.lang.StringALLOW_SYNTAX_EXTENSIONSThis flag must be set to enable use of extensions to XPath, XQuery and XSLT syntax that go beyond what is allowed by the extensibility mechanisms in the spec.static java.lang.StringALLOW_UNRESOLVED_SCHEMA_COMPONENTSThe W3C XSD specification (both 1.0 and 1.1) states that an unresolved reference to an absent schema component does not automatically make the schema invalid; the schema should be usable for validation provided that the missing components are not actually needed in a particular validation episode.static java.lang.StringALLOWED_PROTOCOLSThe value is a comma-separated list of permitted protocols.static java.lang.StringASSERTIONS_CAN_SEE_COMMENTSASSERTIONS_CAN_SEE_COMMENTS determines whether comment and processing instructions in a document being validated are visible to assertions in an XSD 1.1 schema.static java.lang.StringCOLLATION_URI_RESOLVERThe suppliedCollationURIResolveris used to process any collation URIs found in the query or stylesheet, returning an object of classStringCollatorthat implements the requested collation.static java.lang.StringCOLLATION_URI_RESOLVER_CLASSThe supplied class is instantiated and the resulting instance is used as the value of theCOLLATION_URI_RESOLVERproperty.static java.lang.StringCOLLECTION_FINDERThe suppliedCollectionFinderis used to retrieve aResourceCollectionobject given by any URI defined in calls to thecollection()or theuri-collection()function.static java.lang.StringCOLLECTION_FINDER_CLASSThe supplied class is instantiated and the resulting instance is used as the value of theCOLLECTION_FINDERproperty.static java.lang.StringCOMPILE_WITH_TRACINGIf run-time tracing of stylesheet or query execution is required, then the code must be compiled with tracing enabled.static java.lang.StringCONFIGURATIONThis attribute cannot be set on theConfigurationitself, but it can be set on various JAXP factory objects such as aTransformerFactoryorDocumentBuilderFactory, to ensure that several such factories use the sameConfiguration.static java.lang.StringCONFIGURATION_FILEDefines a configuration file to be applied to the configuration.static java.lang.StringDEBUG_BYTE_CODEThis option is set to indicate that bytecode generation should be run in debugging mode; it injects diagnostic tracing calls into the generated bytecode.static java.lang.StringDEBUG_BYTE_CODE_DIRThis option is relevant only ifDISPLAY_BYTE_CODEis set to true.static java.lang.StringDEFAULT_COLLATIONThis option determines the collation that is used for comparing strings when no explicit collation is requested.static java.lang.StringDEFAULT_COLLECTIONThis determines the collection that is used when thefn:collection()function is called with no arguments; the effect is the same as if it were called passing the URI that is the value of this configuration property.static java.lang.StringDEFAULT_COUNTRYThis determines the country that is used byformat-date()and similar functions if no country code is supplied explicitly.static java.lang.StringDEFAULT_LANGUAGEThis option determines the language that is used byformat-date(),xsl:numberand similar constructs if no language code is supplied explicitly.static java.lang.StringDEFAULT_REGEX_ENGINEDetermines which regular expression engine should be used for evaluating regular expressions occuring in constructs such asfn:matches(),fn:replace, andxsl:analyze-string, and also in the pattern facet of a schema.static java.lang.StringDISABLE_XSL_EVALUATEThis option disables thexsl:evaluateinstruction.static java.lang.StringDISPLAY_BYTE_CODEThis option is set to indicate that bytecode generation should be run in display mode.static java.lang.StringDTD_VALIDATIONIf true, the XML parser is requested to perform validation of source documents against their DTD.static java.lang.StringDTD_VALIDATION_RECOVERABLEThis option determines whether DTD validation failures should be treated as recoverable.static java.lang.StringEAGER_EVALUATIONForces Saxon to do eager evaluation of expressions in contexts where normally it would do lazy evaluation, for example when evaluating variables and function results.static java.lang.StringENTITY_RESOLVER_CLASSThe supplied class is instantiated and the resultingEntityResolveris used whenever Saxon itself creates anXMLReaderfor parsing source documents.static java.lang.StringENVIRONMENT_VARIABLE_RESOLVERSetting theENVIRONMENT_VARIABLE_RESOLVERcauses the supplied object to be registered as the environment variable resolver for theConfiguration.static java.lang.StringENVIRONMENT_VARIABLE_RESOLVER_CLASSSettingENVIRONMENT_VARIABLE_RESOLVER_CLASScauses an instance of the supplied class to be created, and registered as the environment variable resolver for theConfiguration.static java.lang.StringERROR_LISTENER_CLASSERROR_LISTENER_CLASSis the name of the class used to implement the JAXPErrorListener.static java.lang.StringEXPAND_ATTRIBUTE_DEFAULTSEXPAND_ATTRIBUTE_DEFAULTSdetermines whether fixed and default values defined in a schema or DTD will be expanded (both on input and on output documents, if validation is requested).static java.lang.StringEXPATH_FILE_DELETE_TEMPORARY_FILESEXPATH_FILE_DELETE_TEMPORARY_FILESdetermines whether temporary files and directories created in the EXPath File module should be automatically deleted on closure of the JVM.static java.lang.StringGENERATE_BYTE_CODEBy default, Saxon-EE attempts to generate Java bytecode for evaluation of parts of a query or stylesheet that are amenable to such treatment.static java.lang.StringIGNORE_SAX_SOURCE_PARSERIf this option is set to true, then when aSAXSourceis supplied as the input to an XSLT transformation, Saxon will ignore theXMLReadersupplied in theSAXSource(in fact, it will modify the suppliedSAXSourcesetting theXMLReaderto null) and use anXMLReadercreated using the value of theSOURCE_PARSER_CLASSoption in preference.static java.lang.StringIMPLICIT_SCHEMA_IMPORTSIMPLICIT_SCHEMA_IMPORTSallows reference to schema components without anxs:importfor the relevant namespace being present in the containing schema document.static java.lang.StringLAZY_CONSTRUCTION_MODELAZY_CONSTRUCTION_MODEdetermines whether temporary trees are constructed lazily.static java.lang.StringLICENSE_FILE_LOCATIONLICENSE_FILE_LOCATIONholds the filename in which the Saxon license file is held.static java.lang.StringLINE_NUMBERINGDefault is false.static java.lang.StringMARK_DEFAULTED_ATTRIBUTESSetting theMARK_DEFAULTED_ATTRIBUTESoption causes Saxon to retain details of attributes that were notified by the XML parser as being defaulted (that is, the attribute was not present in the instance document but was defined by a default value in a DTD or schema).static java.lang.StringMAX_COMPILED_CLASSESPlaces a limit on the number of classes for which Saxon will generate bytecode.static java.lang.StringMESSAGE_EMITTER_CLASSUse the specifiedReceiverto process the output fromxsl:message.static java.lang.StringMODULE_URI_RESOLVERAffects XQuery only.static java.lang.StringMODULE_URI_RESOLVER_CLASSAffects XQuery only.static java.lang.StringMONITOR_HOT_SPOT_BYTE_CODEWhen set from the Transform or Query command line, a report on bytecode generation is produced at the end of the transformation or query.static java.lang.StringMULTIPLE_SCHEMA_IMPORTSAffects schema construction (whether for standalone validation, or in the context of XSLT or XQuery).static java.lang.StringNAME_POOLIndicates that the suppliedNamePoolshould be used as the target (run-time)NamePoolby all stylesheets compiled (usingnewTemplates()) after this call onsetAttribute.static java.lang.StringOCCURRENCE_LIMITSOCCURRENCE_LIMITSdetermines the largest values ofminOccursandmaxOccursthat can be accommodated when compiling an "expanded" finite state machine to represent an XSD content model grammar.static java.lang.StringOPTIMIZATION_LEVELAllows individual optimizations to be enabled or disabled selectively.static java.lang.StringOUTPUT_URI_RESOLVERThe suppliedOutputURIResolverwill be used to resolve URIs of secondary result documents selected in thehrefattribute of the XSLTxsl:result-documentinstruction.static java.lang.StringOUTPUT_URI_RESOLVER_CLASSThe supplied class will be instantiated, and the resultingOutputURIResolverwill be used to resolve URIs of secondary result documents selected in thehrefattribute of the XSLTxsl:result-documentinstruction.static java.lang.StringPRE_EVALUATE_DOC_FUNCTIONIf true, calls on thedoc()anddocument()functions, if their arguments are known at compile time, will be evaluated at compile time, and the resulting document will be stored as part of the SaxonConfigurationand shared by all queries and transformations running within thatConfiguration.static java.lang.StringPREFER_JAXP_PARSERRelevant only on .NET, determines whether the Java Classpath parser is used in preference to the Microsoft .NET parser.static java.lang.StringRECOGNIZE_URI_QUERY_PARAMETERSTrue if the standard URI resolver is to recognize query parameters included in the URI (for example,?validation=strict).static java.lang.StringRECOVERY_POLICYAt one time this property controlled how recoverable errors were handled (fatal error, warning, or ignored).static java.lang.StringRECOVERY_POLICY_NAMEAt one time this property controlled how recoverable errors were handled (fatal error, warning, or ignored).static java.lang.StringREGEX_BACKTRACKING_LIMITThis property sets a limit on the amount of backtracking performed during regular expression evaluation.static java.lang.StringRESULT_DOCUMENT_THREADSIndicates the maximum number of threads to be used for processingxsl:result-documentinstructions in parallel.static java.lang.StringRETAIN_DTD_ATTRIBUTE_TYPESIf set to true, indicates that when input is obtained from a SAX parser, the DTD-based attribute type notified by the XML parser should be used to set the type annotation of the resulting node: for example a DTD type of NMTOKENS results in a type annotation of xs:NMTOKENS.static java.lang.StringRETAIN_NODE_FOR_DIAGNOSTICSBy default, Saxon attempts to ensure that the run-time code contains no links to the original source stylesheet tree.static java.lang.StringSCHEMA_URI_RESOLVERThe suppliedSchemaURIResolverwill be used to resolve URIs of schema documents referenced inxsl:import-schemadeclarations in XSLT,import schemain XQuery, references from one schema document to another usingxs:includeorxs:import, and references from an instance document to a schema usingxsi:schemaLocation.static java.lang.StringSCHEMA_URI_RESOLVER_CLASSThe name of a class that implements the interfaceSchemaURIResolver; this class will be instantiated and the resulting instance will be used as the value of theSCHEMA_URI_RESOLVERproperty.static java.lang.StringSCHEMA_VALIDATIONIndicates whether and how schema validation should be applied to source documents.static java.lang.StringSCHEMA_VALIDATION_MODEIndicates whether and how schema validation should be applied to source documents.static java.lang.StringSERIALIZER_FACTORY_CLASSThe class will be instantiated and the resultingSerializerFactorywill be used to create the serialization pipeline for XSLT and XQuery results.static java.lang.StringSOURCE_PARSER_CLASSXML parser used for source documents.static java.lang.StringSOURCE_RESOLVER_CLASSOn interfaces that allow anorg.xml.sax.Sourceto be supplied, if a kind ofSourceis provided that Saxon does not recognize, it will be passed to the user-suppliedSourceResolver, which has the opportunity to convert it to a kind ofSourcethat Saxon does recognize.static java.lang.StringSTABLE_COLLECTION_URISTABLE_COLLECTION_URI, if set, indicates that collections returned by thefn:collection()andfn:uri-collection()functions should be stable, that is, repeated calls on these functions with the same collection URI (within the scope of a single query or transformation) should return identical results.static java.lang.StringSTABLE_UNPARSED_TEXTSTABLE_UNPARSED_TEXT, if set, indicates that the results returned by repeated calls ofunparsed-text(),unparsed-text-lines(), andunparsed-text-available()are consistent: calling these functions twice during the evaluation of a stylesheet or query will return the same results.static java.lang.StringSTANDARD_ERROR_OUTPUT_FILESTANDARD_ERROR_OUTPUT_FILEis the name of a file to which Saxon will redirect output that would otherwise go to the operating system standard error stream (System.err).static java.lang.StringSTREAMABILITYTheSTREAMABILITYoption can be used to disable streaming.static java.lang.StringSTREAMING_FALLBACKIf theSTREAMING_FALLBACKoption is set, then constructs for which streaming is requested (such as templates in a streaming mode, thexsl:source-documentinstruction with attributestreamable="yes", and streamable accumulators) will be executed in non-streaming mode if the code is not actually streamable.static java.lang.StringSTRICT_STREAMABILITYCauses the XSLT processor to verify that constructs that are declared streamable are in fact "guaranteed streamable" according to the W3C rules.static java.lang.StringSTRIP_WHITESPACEIndicates whether all whitespace, no whitespace, or whitespace in elements defined in a DTD or schema as having element-only content should be stripped from source documents.static java.lang.StringSTYLE_PARSER_CLASSXML parser used for stylesheets and schema documents.static java.lang.StringSUPPRESS_EVALUATION_EXPIRY_WARNINGThis is set to true to suppress the warning otherwise issued by command-line interfaces indicating that an evaluation license is in use and is due to expire in a set number of days.static java.lang.StringSUPPRESS_XPATH_WARNINGSSuppresses all warnings issued by the XPath and XQuery parsers.static java.lang.StringSUPPRESS_XSLT_NAMESPACE_CHECKThis is set to true to suppress the warning when there is no commonality between the namespaces used in stylesheet match patterns and the namespaces used in the source document.static java.lang.StringTHRESHOLD_FOR_COMPILING_TYPESIndicates how often an XSD simple type definition must be used before Saxon generates bytecode to implement validation of input data against that type.static java.lang.StringTHRESHOLD_FOR_FUNCTION_INLININGSaxon-EE performs inlining of user-defined functions that are sufficiently simple: they must not be recursive, and they must be below a certain size.static java.lang.StringTHRESHOLD_FOR_HOTSPOT_BYTE_CODESaxon-EE generates bytecode to give faster execution of frequently-evaluated subexpressions.static java.lang.StringTIMINGThis is set to true to cause basic timing and tracing information to be output to the standard error output stream.static java.lang.StringTRACE_EXTERNAL_FUNCTIONSIf this option is set, Saxon will output (to the standard error output) progress information about its attempts to locate and disambiguate references to reflexive Java extension functions.static java.lang.StringTRACE_LISTENERTheTraceListenerwill be notified of significant events occurring during a query or transformation, for tracing or debugging purposes.static java.lang.StringTRACE_LISTENER_CLASSThe class will be instantiated once for each query or transformation, and the resultingTraceListenerwill be notified of significant events occurring during that query or transformation, for tracing or debugging purposes.static java.lang.StringTRACE_LISTENER_OUTPUT_FILEWhen trace listening is switched on (for example by using -T on the command line), this file will be supplied to the trace listener to use as the output destination.static java.lang.StringTRACE_OPTIMIZER_DECISIONSIf this option is set, Saxon will output (to the standard error output) detailed information about the rewrites to the expression tree made by the optimizer.static java.lang.StringTREE_MODELSelects an implementation of the Saxon tree model.static java.lang.StringTREE_MODEL_NAMESelects an implementation of the Saxon tree model.static java.lang.StringUNPARSED_TEXT_URI_RESOLVERThe suppliedUnparsedTextURIResolverwill be used to resolve (dereference) all URIs specifed in calls to theunparsed-text(),unparsed-text-lines(), andunparsed-text-available()functions.static java.lang.StringUNPARSED_TEXT_URI_RESOLVER_CLASSAn instance of the specifiedUnparsedTextURIResolverclass will be created, and used to resolve (dereference) all URIs specifed in calls to theunparsed-text(),unparsed-text-lines(), andunparsed-text-available()functions.static java.lang.StringURI_RESOLVER_CLASSAn instance of the specifiedURIResolverclass will be created, and used to resolve (dereference) all URIs specifed in calls to thedoc()anddocument()functions, as well as URIs used inxsl:includeandxsl:importand location hints for XQuery modules and XSD schema documents.static java.lang.StringUSE_PI_DISABLE_OUTPUT_ESCAPINGThis option determines whether aTransformerHandlercreated with thisTransformerFactoryorConfigurationrecognizes the JAXP-defined processing instructionsResult.PI_DISABLE_OUTPUT_ESCAPINGandResult.PI_ENABLE_OUTPUT_ESCAPINGin the input stream as instructions to disable or to re-enable output escaping.static java.lang.StringUSE_TYPED_VALUE_CACHEThis option is relevant only when the TinyTree is used; it determines whether (for a validated document) a cache will be maintained containing the typed values of nodes.static java.lang.StringUSE_XSI_SCHEMA_LOCATIONThis option determines whether or not to use thexsi:schemaLocationandxsi:noNamespaceSchemaLocationattributes in an instance document to locate a schema for validation.static java.lang.StringVALIDATION_COMMENTSThis option determines whether non-fatal validation errors in XQuery or XSLT result documents should result in comments being inserted into the result tree.static java.lang.StringVALIDATION_WARNINGSThis option indicates (if true) that errors occuring while validating a final result tree are not to be treated as fatal.static java.lang.StringVERSION_WARNINGIndicates whether a warning message should be notified (to theErrorListener) if running Saxon against an XSLT stylesheet that specifiesversion="1.0".static java.lang.StringXINCLUDEIndicates whether source documents should have any XInclude directives expanded.static java.lang.StringXML_PARSER_FEATURESets the value of a parser feature flag.static java.lang.StringXML_PARSER_PROPERTYSets the value of a parser property flag.static java.lang.StringXML_VERSIONThis determines the XML version used by theConfiguration.static java.lang.StringXPATH_VERSION_FOR_XSDThe XSD 1.1 specification states that XPath version 2.0 is used for expressions appearing in assertions and type alternatives.static java.lang.StringXPATH_VERSION_FOR_XSLTThe XSLT 3.0 specification states that processors are required to support XPath 3.0 expressions within stylesheets, together with some extensions (maps) selected from the XPath 3.1 specification.static java.lang.StringXQUERY_ALLOW_UPDATEDetermines whether XQuery Update syntax is accepted.static java.lang.StringXQUERY_CONSTRUCTION_MODEThis option defines the default value of the construction mode in the XQuery static context (overridable in the query prolog).static java.lang.StringXQUERY_DEFAULT_ELEMENT_NAMESPACEThis property defines the default namespace for elements and types that are not qualified by a namespace prefix.static java.lang.StringXQUERY_DEFAULT_FUNCTION_NAMESPACEThis property defines the default namespace for function names that are not qualified by a namespace prefix.static java.lang.StringXQUERY_EMPTY_LEASTThis property defines how the empty sequence is handled in XQuery sorting (the "order by" clause).static java.lang.StringXQUERY_INHERIT_NAMESPACESThis property defines the default value of theinherit-namespacesproperty in the XQuery static context.static java.lang.StringXQUERY_MULTIPLE_MODULE_IMPORTSIf the value is false, then when animport moduledeclaration is encountered for a module URI that is already among the known loaded modules (or modules in the process of being compiled), theimport moduleis treated as a reference to the existing module.static java.lang.StringXQUERY_PRESERVE_BOUNDARY_SPACEThis property defines whether "boundary space" (insignificant space in direct element constructors) should be retained or not.static java.lang.StringXQUERY_PRESERVE_NAMESPACESThis property defines whether unused namespace declarations are retained by XQuery element copy operations.static java.lang.StringXQUERY_REQUIRED_CONTEXT_ITEM_TYPEThis property defines the default expected context item type for a query.static java.lang.StringXQUERY_SCHEMA_AWAREA query will automatically be schema-aware if it contains animport schemadeclaration.static java.lang.StringXQUERY_STATIC_ERROR_LISTENER_CLASSThe specified class is instantiated to create anErrorListener, and all reports of static errors in a query will go to thisErrorListener.static java.lang.StringXQUERY_VERSIONThis property determines the version of XQuery used by theConfiguration.static java.lang.StringXSD_VERSIONThis property determines the version of XML Schema used by theConfiguration.static java.lang.StringXSLT_ENABLE_ASSERTIONSThis property indicates whether assertions (XSLT 3.0 xsl:assert instructions) are enabled or disabled.static java.lang.StringXSLT_INITIAL_MODEThis property indicates the name of a mode within a stylesheet in which execution (using template rules) should begin.static java.lang.StringXSLT_INITIAL_TEMPLATEThis property indicates the name of a named template within a stylesheet where execution should begin.static java.lang.StringXSLT_SCHEMA_AWAREThis property indicates whether stylesheets should be compiled with the ability to handle schema-typed input documents.static java.lang.StringXSLT_STATIC_ERROR_LISTENER_CLASSThe specified class is instantiated to create anErrorListener, and all reports of static errors in a stylesheet will go to thisErrorListener.static java.lang.StringXSLT_STATIC_URI_RESOLVER_CLASSThis property defines aURIResolverused when dereferencing the URIs that appear in thehrefattributes of thexsl:includeandxsl:importdeclarations.static java.lang.StringXSLT_VERSIONThis property determines the version of XSLT to be supported by default.static java.lang.StringZIP_URI_PATTERNThis is used by the standard Collection Finder and may not be relevant if a custom Collection Finder is in use.
-
Constructor Summary
Constructors Constructor Description FeatureKeys()
-
-
-
Field Detail
-
ALLOW_EXTERNAL_FUNCTIONS
public static final java.lang.String ALLOW_EXTERNAL_FUNCTIONS
ALLOW_EXTERNAL_FUNCTIONS determines whether calls to reflexive external functions are allowed.
More specifically, if set to false it disallows all of the following:
- Calls to reflexive Java extension functions
- Use of the XSLT
system-property()function to access Java system properties - Use of a URI in the
hrefattribute of anxsl:result-documentinstruction - Calls to XSLT extension instructions
The default value is true. The setting false is recommended in an environment where untrusted stylesheets may be executed.
This option does not disable use of the
doc()function or similar functions to access the filestore of the machine where the transformation or query is running. That should be done using a user-suppliedURIResolver.Note that integrated extension functions are trusted; calls to such functions are allowed even if this configuration option is false. In cases where an integrated extension function is used to load and execute untrusted code, it should check this configuration option before doing so.
If the value of the property is false, then it will also be set to false on any new Configuration created using the
fn:transform()function.- See Also:
- Constant Field Values
-
ALLOW_MULTITHREADING
public static final java.lang.String ALLOW_MULTITHREADING
ALLOW_MULTITHREADING determines whether multi-threading is allowed.
If true (the default), the presence of the attribute
saxon:threads="N"on anxsl:for-eachinstruction, when running under Saxon-EE, causes multi-threaded execution. If set to false, the value of thesaxon:threadsargument is ignored.Setting the value to false also disables asynchronous processing of
xsl:result-documentinstructions.The default value is true if Saxon-EE is in use, false otherwise.
- See Also:
- Constant Field Values
-
ALLOW_OLD_JAVA_URI_FORMAT
public static final java.lang.String ALLOW_OLD_JAVA_URI_FORMAT
ALLOW_OLD_JAVA_URI_FORMAT determines whether extension function calls to dynamically-loaded Java extension functions may use the URI format supported in older Saxon releases.
If the value is false (the default), the only URI format accepted is (for example) "java:java.util.Date" - that is, a URI consisting of the string "java:" followed by the Java qualified class name of the class containing the implementation of the extension function.
If the value is true, then in addition to this format, the following are accepted: (a) the Java class name on its own ("java.util.Date"), and (b) any URI in which the Java class name follows the last "/" character (for example "http://my.com/extensions/java.util.Date"). This last format was originally provided for compatibility with xt and xalan, but it causes problems because it leads to unnecessary attempts to load spurious classes when the user did not intend the URI to represent a dynamically-loaded Java class.
- See Also:
- Constant Field Values
-
ALLOW_SYNTAX_EXTENSIONS
public static final java.lang.String ALLOW_SYNTAX_EXTENSIONS
This flag must be set to enable use of extensions to XPath, XQuery and XSLT syntax that go beyond what is allowed by the extensibility mechanisms in the spec. In some cases these extensions are experimental and may not be carried forward to future Saxon releases.
Syntax extensions in Saxon 10 include the use of type aliases (
type(...)where an item type is expected, anddeclare type NAME = item-typein the XQuery Prolog); and simple inline functions (for example.{. + 1}).- See Also:
- Constant Field Values
-
ASSERTIONS_CAN_SEE_COMMENTS
public static final java.lang.String ASSERTIONS_CAN_SEE_COMMENTS
ASSERTIONS_CAN_SEE_COMMENTS determines whether comment and processing instructions in a document being validated are visible to assertions in an XSD 1.1 schema.
If the value is false (the default), comments and processing instructions are stripped from the view of the document that is made visible to the XPath expression that implements the assertion. If this creates adjacent text nodes, they are collapsed into a single text node.
If the value is true, then comments and processing instructions are visible to the XPath assertion.
- See Also:
- Constant Field Values
-
COLLATION_URI_RESOLVER
public static final java.lang.String COLLATION_URI_RESOLVER
The supplied
CollationURIResolveris used to process any collation URIs found in the query or stylesheet, returning an object of classStringCollatorthat implements the requested collation.- See Also:
- Constant Field Values
-
COLLATION_URI_RESOLVER_CLASS
public static final java.lang.String COLLATION_URI_RESOLVER_CLASS
The supplied class is instantiated and the resulting instance is used as the value of the
COLLATION_URI_RESOLVERproperty.- See Also:
- Constant Field Values
-
COLLECTION_FINDER
public static final java.lang.String COLLECTION_FINDER
The supplied
CollectionFinderis used to retrieve aResourceCollectionobject given by any URI defined in calls to thecollection()or theuri-collection()function.If the argument is not specified then a default
ResourceCollectionshould be handled.CollectionFinderreturns aResourceCollectionwhich is used to map the URI of collection into a sequence ofResourceobjects (which are then resolved in the same way as URIs passed to thedoc()function), or it may return an item (typically a node but can handle JSON documents).- See Also:
- Constant Field Values
-
COLLECTION_FINDER_CLASS
public static final java.lang.String COLLECTION_FINDER_CLASS
The supplied class is instantiated and the resulting instance is used as the value of the
COLLECTION_FINDERproperty.- See Also:
- Constant Field Values
-
COMPILE_WITH_TRACING
public static final java.lang.String COMPILE_WITH_TRACING
If run-time tracing of stylesheet or query execution is required, then the code must be compiled with tracing enabled.
Default is false. This option causes code to be compiled that makes calls to a
TraceListener, but this has no effect unless aTraceListeneris registered at execution time.- See Also:
- Constant Field Values
-
CONFIGURATION
public static final java.lang.String CONFIGURATION
This attribute cannot be set on the
Configurationitself, but it can be set on various JAXP factory objects such as aTransformerFactoryorDocumentBuilderFactory, to ensure that several such factories use the sameConfiguration.Note that other configuration options are held in the
Configurationobject, so setting this attribute will cancel all others that have been set. Also, if two factories share the sameConfiguration, then setting an attribute on one affects all the others.- See Also:
- Constant Field Values
-
CONFIGURATION_FILE
public static final java.lang.String CONFIGURATION_FILE
Defines a configuration file to be applied to the configuration.
This attribute cannot be set on the
Configurationitself, but it can be set on various JAXP factory objects such as aTransformerFactoryorDocumentBuilderFactory. It is particularly useful when running transformations via the Ant xslt task, where it can be set as follows to define all configuration settings:<factory name="net.sf.saxon.TransformerFactoryImpl"> <attribute name="http://saxon.sf.net/feature/configuration-file" value="c:/saxon/config.xml"/> </factory>- See Also:
- Constant Field Values
-
DEBUG_BYTE_CODE
public static final java.lang.String DEBUG_BYTE_CODE
This option is set to indicate that bytecode generation should be run in debugging mode; it injects diagnostic tracing calls into the generated bytecode. This should be used only if requested by Saxonica support to diagnose a problem related to bytecode generation.
- See Also:
- Constant Field Values
-
DEBUG_BYTE_CODE_DIR
public static final java.lang.String DEBUG_BYTE_CODE_DIR
This option is relevant only if
DISPLAY_BYTE_CODEis set to true. It defines a directory to which files containing bytecode in human-readable form will be written. There will be one such file for each generated class, with a filename designed to give some kind of clue as to its relationship to the source code.The default value is the directory
saxonByteCodewithin the current working directory.The named directory is created if it does not already exist.
Because the generation of class names involves random numbers, files will tend to accumulate in the supplied directory, even when the same source code is compiled repeatedly.
- See Also:
- Constant Field Values
-
DEFAULT_COLLATION
public static final java.lang.String DEFAULT_COLLATION
This option determines the collation that is used for comparing strings when no explicit collation is requested. It is not necessary for this collation to exist (or to have been registered) when setting this option; it only needs to exist by the time it is used.
In XSLT it is possible to override this setting using the
[xsl:]default-collationattribute on any stylesheet element. In XQuery, it can be overridden using thedeclare default collationdeclaration in the query prolog, or via a setter method in classStaticQueryContext.If no value is specified, the Unicode codepoint collation is used.
- See Also:
- Constant Field Values
-
DEFAULT_COLLECTION
public static final java.lang.String DEFAULT_COLLECTION
This determines the collection that is used when the
fn:collection()function is called with no arguments; the effect is the same as if it were called passing the URI that is the value of this configuration property.- See Also:
- Constant Field Values
-
DEFAULT_COUNTRY
public static final java.lang.String DEFAULT_COUNTRY
This determines the country that is used by
format-date()and similar functions if no country code is supplied explicitly. If no value is given for this property, the default is taken from the Java Locale, which in turn typically depends on settings for the current user in the operating system.- See Also:
- Constant Field Values
-
DEFAULT_LANGUAGE
public static final java.lang.String DEFAULT_LANGUAGE
This option determines the language that is used by
format-date(),xsl:numberand similar constructs if no language code is supplied explicitly. If no value is given for this property, the default is taken from the Java Locale, which in turn typically depends on settings for the current user in the operating system.- See Also:
- Constant Field Values
-
DEFAULT_REGEX_ENGINE
public static final java.lang.String DEFAULT_REGEX_ENGINE
Determines which regular expression engine should be used for evaluating regular expressions occuring in constructs such as
fn:matches(),fn:replace, andxsl:analyze-string, and also in the pattern facet of a schema.On the Java platform the permitted values are "S" (default), and "J". The value "J" selects the regex engine provided in the JDK in preference to the Saxon regular expression engine. This means that regular expressions must follow the Java syntax and semantics rather than the XPath syntax and semantics.
On the .NET platform the permitted values are "S" (default), "J", and "N". The value "J" selects the regex engine provided in the IKVMC run-time, which is derived from OpenJDK. The value "N" selects the regex engine provided in the Microsoft .NET platform. In each case, the regular expression must follow the syntax and semantics of the selected regex engine.
The choice of regular expression may be overridden in a particular invocation by appending the value ";s", ";j", or ";n" to the flags argument of the relevant call. (This does not apply to XSD patterns, where no flags argument is available)
Use of this feature is not conformant with W3C specifications. Use of the setting "N", however, can be useful when schemas have been written with the Microsoft schema processor in mind, since this uses the Microsoft regular expression dialect rather than the W3C dialect.
- See Also:
- Constant Field Values
-
DISABLE_XSL_EVALUATE
public static final java.lang.String DISABLE_XSL_EVALUATE
This option disables the
xsl:evaluateinstruction.If set at stylesheet compile time, the feature is statically disabled. If set at run-time it is dynamically disabled. (These terms are defined in the XSLT 3.0 spec.) By default, the feature is enabled.
The XSLT 3.0 specification requires conformant processors to provide a way of disabling
xsl:evaluate. This shouldn't be taken as meaning thatxsl:evaluateposes particular security risks. The main reason for disabling it is if you want to carry out static analysis or inspection of stylesheet code to see what features it uses. But if you're doing such inspection, it's not difficult to check thatxsl:evaluateis only being used to execute trusted code. Note also thatfn:transform()can similarly be used to execute dynamically-constructed code, and there is no switch to disable that function.- See Also:
- Constant Field Values
-
DISPLAY_BYTE_CODE
public static final java.lang.String DISPLAY_BYTE_CODE
This option is set to indicate that bytecode generation should be run in display mode. The effect is to output files (one per class) containing a human-readable print of the generated bytecode. The files are placed in the directory identified by the
DEBUG_BYTE_CODE_DIRoption.- See Also:
- Constant Field Values
-
DTD_VALIDATION
public static final java.lang.String DTD_VALIDATION
If true, the XML parser is requested to perform validation of source documents against their DTD. Default is false.
This option establishes a default for use whenever source documents (not stylesheets or schema documents) are parsed. The option can be overridden for individual documents by setting the
ParseOptionsfor that individual document, for example from aURIResolver.- See Also:
- Constant Field Values
-
DTD_VALIDATION_RECOVERABLE
public static final java.lang.String DTD_VALIDATION_RECOVERABLE
This option determines whether DTD validation failures should be treated as recoverable. If the option is set, a validation failure is reported as a warning rather than an error. The default is false.
This option establishes a default for use whenever source documents (not stylesheets or schema documents) are parsed. The option can be overridden for individual documents by setting the
ParseOptionsfor that individual document, for example from aURIResolver.- See Also:
- Constant Field Values
-
EAGER_EVALUATION
public static final java.lang.String EAGER_EVALUATION
Forces Saxon to do eager evaluation of expressions in contexts where normally it would do lazy evaluation, for example when evaluating variables and function results. This can make for easier debugging.
Note that this only applies to situations where Saxon would normally save a
Closureobject as the result of an expression. It does not prevent Saxon from using pipelined evaluation of intermediate expressions using iterators.- See Also:
- Constant Field Values
-
ENTITY_RESOLVER_CLASS
public static final java.lang.String ENTITY_RESOLVER_CLASS
The supplied class is instantiated and the resulting
EntityResolveris used whenever Saxon itself creates anXMLReaderfor parsing source documents. It is not used with a user-suppliedXMLReader.The default value is
StandardEntityResolver. This is an entity resolver that recognizes the names of many standard W3C DTDs and external entity files, and resolves them against local copies issued with the Saxon software, to avoid the need to fetch them from the web.The property can be set to a zero-length string, in which case no
EntityResolverwill be used.- See Also:
- Constant Field Values
-
ENVIRONMENT_VARIABLE_RESOLVER
public static final java.lang.String ENVIRONMENT_VARIABLE_RESOLVER
Setting the
ENVIRONMENT_VARIABLE_RESOLVERcauses the supplied object to be registered as the environment variable resolver for theConfiguration. The setting is global: it affects all queries and transformations using this configuration.The environment variable resolver is used when the XPath functions
available-environment-variables()orenvironment-variable()are called. Saxon essentially delegates the evaluation of the function to the external resolver.- See Also:
- Constant Field Values
-
ENVIRONMENT_VARIABLE_RESOLVER_CLASS
public static final java.lang.String ENVIRONMENT_VARIABLE_RESOLVER_CLASS
Setting
ENVIRONMENT_VARIABLE_RESOLVER_CLASScauses an instance of the supplied class to be created, and registered as the environment variable resolver for theConfiguration. The setting is global: it affects all queries and transformations using this configuration.The environment variable resolver is used when the XPath functions
available-environment-variables()orenvironment-variable()are called. Saxon essentially delegates the evaluation of the function to the external resolver.- See Also:
- Constant Field Values
-
ERROR_LISTENER_CLASS
public static final java.lang.String ERROR_LISTENER_CLASS
ERROR_LISTENER_CLASSis the name of the class used to implement the JAXPErrorListener. This is used both at compile time and at run-time.Currently if this option is specified, the class is instantiated, and the same instance is used for all processes running under this configuration. This may change in future so that a new instance is created for each compilation or evaluation.
Finer control can be obtained by setting the
ErrorListenerfor a specific XSLT or XQuery compilation or evaluation.- See Also:
- Constant Field Values
-
EXPAND_ATTRIBUTE_DEFAULTS
public static final java.lang.String EXPAND_ATTRIBUTE_DEFAULTS
EXPAND_ATTRIBUTE_DEFAULTSdetermines whether fixed and default values defined in a schema or DTD will be expanded (both on input and on output documents, if validation is requested).By default (and for conformance with the specification) validation against a DTD or schema will cause default values defined in the schema or DTD to be inserted into the document. Setting this feature to false suppresses this behavior. In the case of DTD-defined defaults this only works if the XML parser reports whether each attribute was specified in the source or generated by expanding a default value. Not all XML parsers report this information.
- See Also:
- Constant Field Values
-
EXPATH_FILE_DELETE_TEMPORARY_FILES
public static final java.lang.String EXPATH_FILE_DELETE_TEMPORARY_FILES
EXPATH_FILE_DELETE_TEMPORARY_FILESdetermines whether temporary files and directories created in the EXPath File module should be automatically deleted on closure of the JVM.The default value is false, to align with the standard. The setting false is recommended when external 'sweep-up' features aren't available.
- See Also:
- Constant Field Values
-
GENERATE_BYTE_CODE
public static final java.lang.String GENERATE_BYTE_CODE
By default, Saxon-EE attempts to generate Java bytecode for evaluation of parts of a query or stylesheet that are amenable to such treatment. Setting this option to false disables this.
For backwards compatibility, this option when used at the level of
Configuration.setConfigurationProperty()can also be used to set the value ofTHRESHOLD_FOR_HOTSPOT_BYTECODE. If the value on that interface is supplied as an integer (or a string in the form of an integer) then a value of 1 or more sets the threshold for hotspot detection, while a value of zero or less disables bytecode generation entirely. On other interfaces the value of the property must be a boolean.- See Also:
- Constant Field Values
-
IGNORE_SAX_SOURCE_PARSER
public static final java.lang.String IGNORE_SAX_SOURCE_PARSER
If this option is set to true, then when a
SAXSourceis supplied as the input to an XSLT transformation, Saxon will ignore theXMLReadersupplied in theSAXSource(in fact, it will modify the suppliedSAXSourcesetting theXMLReaderto null) and use anXMLReadercreated using the value of theSOURCE_PARSER_CLASSoption in preference.The defining use case for this feature is when calling a Saxon transformation from Ant. Ant always supplies the source document as a
SAXSourceusing a parser instantiated using the default JAXP mechanism. A different parser set using the propertyhttp://saxon.sf.net/feature/sourceParserClasswill normally be ignored in this case; setting theignoreSAXSourceParseroption overrides this. This is especially useful if the input format is not in fact XML, but some other format converted to a SAX event stream by means of a custom parser.- See Also:
- Constant Field Values
-
IMPLICIT_SCHEMA_IMPORTS
public static final java.lang.String IMPLICIT_SCHEMA_IMPORTS
IMPLICIT_SCHEMA_IMPORTSallows reference to schema components without anxs:importfor the relevant namespace being present in the containing schema document.This only works if the referenced components are already present among the schema components known to the configuration, perhaps because they were part of a different schema, or because there are cyclic references within a schema.
This option is not conformant with the XSD specification, which requires explicit
xs:importdeclarations for all cross-namespace component references. However, some "industry-standard" schemas are known to violate this rule, and setting this option allows such schemas to be loaded by Saxon.- See Also:
- Constant Field Values
-
LAZY_CONSTRUCTION_MODE
public static final java.lang.String LAZY_CONSTRUCTION_MODE
LAZY_CONSTRUCTION_MODEdetermines whether temporary trees are constructed lazily. The default setting is false; there are a few situations (but not many) where setting this to true can give a performance benefit (especially a memory saving).The option is most likely to be effective when executing XQuery in "pull" mode, that is, when the client calls the query processor to deliver the result as a stream of nodes, rather than running the query and piping the results into a serializer.
- See Also:
- Constant Field Values
-
LICENSE_FILE_LOCATION
public static final java.lang.String LICENSE_FILE_LOCATION
LICENSE_FILE_LOCATIONholds the filename in which the Saxon license file is held.This is the full file name, for example
c:/saxon/license/license.lic. Setting this property causes Saxon to immediately read the specified file and register the license data, assuming it can be found at this location. The property is not recognized for reading, and it is not recognized for writing except in Saxon-PE and Saxon-EE.- See Also:
- Constant Field Values
-
LINE_NUMBERING
public static final java.lang.String LINE_NUMBERING
Default is false. If true, line and column number information is retained for all source documents. This information is accessible using the
saxon:line-number()andsaxon:column-number()extension functions.Note that the information is only as good as the XML parser supplies. SAX parsers generally report the position of an element node using the line and column number of the ">" character that forms the last character of the start tag.
When this option is set, location information attached to a node (system ID, line number, and column number) is retained when the node is copied. This has the side effect that the base URI of a node is also copied, which in some cases runs contrary to the XSLT or XQuery specification.
- See Also:
- Constant Field Values
-
MARK_DEFAULTED_ATTRIBUTES
public static final java.lang.String MARK_DEFAULTED_ATTRIBUTES
Setting the
MARK_DEFAULTED_ATTRIBUTESoption causes Saxon to retain details of attributes that were notified by the XML parser as being defaulted (that is, the attribute was not present in the instance document but was defined by a default value in a DTD or schema). This information is available to applications via thesaxon:is-defaulted()extension function.Note: information about defaulted attributes is retained automatically where the attribute is processed using Saxon's schema processor; but in the case where the information comes from an external XML parser, it is retained only if this option is set.
- See Also:
- Constant Field Values
-
MAX_COMPILED_CLASSES
public static final java.lang.String MAX_COMPILED_CLASSES
Places a limit on the number of classes for which Saxon will generate bytecode.
If bytecode generation is enabled, Saxon will generate bytecode for frequently used constructs appearing in stylesheets or queries. This can become problematic if a configuration uses a very large number of different stylesheets and queries, because it creates memory pressure (in some environments classes are never garbage collected). When this limit (which defaults to 10,000) is exceeded, no more bytecode is generated, and queries/stylesheets are interpreted instead.
- See Also:
- Constant Field Values
-
MESSAGE_EMITTER_CLASS
public static final java.lang.String MESSAGE_EMITTER_CLASS
Use the specified
Receiverto process the output fromxsl:message. The class must implement thenet.sf.saxon.event.Receiverinterface. This interface is similar to a SAXContentHandler, in that it takes a stream of events to generate output.By default the standard XML emitter is used, configured to write to the standard error stream, and to include no XML declaration.
In general the content of a message is an XML fragment. Each message is output as a new document. The sequence of calls to this
Receiveris as follows: there is a singleopen()call at the start of the transformation, and a singleclose()call at the end; and each evaluation of anxsl:messageinstruction starts with astartDocument()call and ends withendDocument().The
startDocument()event has apropertiesargument indicating whetherterminate="yes"was specified, and thelocationIdon calls such asstartElement()andcharacters()can be used to identify the location in the stylesheet where the message data originated (this is achieved by passing the suppliedlocationIdin a call togetPipelineConfiguration().getLocator().getSystemId(locationId), or togetLineNumber()on the same object).Select the class
net.sf.saxon.event.MessageWarnerto havexsl:messageoutput notified to the JAXPErrorListener, as described in the JAXP documentation.- See Also:
- Constant Field Values
-
MODULE_URI_RESOLVER
public static final java.lang.String MODULE_URI_RESOLVER
Affects XQuery only. An instance of a user-written class implementing Saxon's
ModuleURIResolverinterface. This is used to process any URIs used inimport moduledirectives in XQuery.- See Also:
- Constant Field Values
-
MODULE_URI_RESOLVER_CLASS
public static final java.lang.String MODULE_URI_RESOLVER_CLASS
Affects XQuery only. The name of a user-written class implementing Saxon's
ModuleURIResolverinterface. This is used to process any URIs used inimport moduledirectives in XQuery.- See Also:
- Constant Field Values
-
MONITOR_HOT_SPOT_BYTE_CODE
public static final java.lang.String MONITOR_HOT_SPOT_BYTE_CODE
When set from the Transform or Query command line, a report on bytecode generation is produced at the end of the transformation or query.
When set from an application, the bytecode report is produced only on request, by calling
Configuration.createByteCodeReport(fileName).The bytecode report is an XML file containing one entry for each expression that has been compiled into bytecode. Each entry contains the following details, where applicable:
textAbbreviated text of the expressionintCountNumber of times the expression was evaluated in the interpreterintTimeCumulative time spent evaluating the expression (including subexpressions) in the interpreterbcCountNumber of times the expression was evaluated as byte-codebcTimeCumulative time spent evaluating the expression (including subexpressions) as byte-codecompileTimeTime spent generating bytecode for the expressionratioAverage byte-code execution time as a proportion of average interpreted execution timeebvNumber of evaluations of the expressionseffectiveBooleanValue()methodevalNumber of evaluations of the expressionsevaluateItem()methoditerateNumber of evaluations of the expressionsiterate()methodprocessNumber of evaluations of the expressionsprocess()methodmoduleURI of the module containing the expressionlineLine number of the expression within this module
- See Also:
- Constant Field Values
-
MULTIPLE_SCHEMA_IMPORTS
public static final java.lang.String MULTIPLE_SCHEMA_IMPORTS
Affects schema construction (whether for standalone validation, or in the context of XSLT or XQuery).
If set to true, the schema processor attempts to fetch a schema document appearing in an
xs:importdirective, whether or not a schema for that namespace has already been loaded, unless the absolute URI formed from theschemaLocationis the same as the absolute URI that was used to load that namespace. If set to false, the schema processor ignores theschemaLocationon anxs:importdeclaration if schema components for the requested namespace are already available. Note that setting the value to true might cause spurious errors due to like-named schema components being loaded more than once. On the other hand, setting the value to false might result in validation failing because schema components are missing.Note: Both settings are conformant with the W3C recommendation, which leaves the details implementation-defined. It is possible (and advisable) to write schemas in such a way that this setting makes no difference, by ensuring that all imports for a particular namespace go via a "home" schema document for that namespace, where the home schema document contains
xs:includedeclarations for all the schema documents defining components in that namespace.- See Also:
- Constant Field Values
-
NAME_POOL
public static final java.lang.String NAME_POOL
Indicates that the supplied
NamePoolshould be used as the target (run-time)NamePoolby all stylesheets compiled (usingnewTemplates()) after this call onsetAttribute.Normally a single system-allocated
NamePoolis used for all stylesheets compiled while the Java VM remains loaded; this attribute allows user control over the allocation of name pools. Note that source trees used as input to a transformation must be built using the sameNamePoolthat is used when the stylesheet is compiled: this will happen automatically if the input to a transformation is supplied as aSAXSourceorStreamSourcebut it is under user control if you build the source tree yourself.This option can be used to make two
Configurationobjects share aNamePooleven though they differ in other respects.- See Also:
- Constant Field Values
-
OCCURRENCE_LIMITS
public static final java.lang.String OCCURRENCE_LIMITS
OCCURRENCE_LIMITSdetermines the largest values ofminOccursandmaxOccursthat can be accommodated when compiling an "expanded" finite state machine to represent an XSD content model grammar.These limits do not apply in the common cases where the grammar can be implemented using a counting finite-state-machine, but in those cases where this is not possible, any
minOccursvalue greater than the first integer is reduced to the value of the first integer, and anymaxOccursvalue greater than the second integer is treated as "unbounded".Setting these values too high may cause an
OutOfMemoryExceptionsince the size of the finite state machine constructed by Saxon increases linearly with the values ofminOccursandmaxOccurs.- See Also:
- Constant Field Values
-
OPTIMIZATION_LEVEL
public static final java.lang.String OPTIMIZATION_LEVEL
Allows individual optimizations to be enabled or disabled selectively.
There is a set of single-letter flags identifying particular optimizations:
- c: generate bytecode
- e: cache regular expressions
- f: inline functions
- g: extract global variables
- j: just-in-time compilation of template rules
- k: create keys
- l: loop lifting
- m: miscellaneous
- n: constant folding
- r: template rule-sets
- s: extract common subexpressions
- v: inline variables
- w: create switch statements
- x: index predicates
A value such as
gsruns with only the selected optimizations;-gsruns with the selected optimizations disabled and all others enabled. The value0suppresses all optimizations. The default is full optimization; this feature allows optimization to be suppressed in cases where reducing compile time is important, or where optimization gets in the way of debugging, or causes extension functions with side-effects to behave unpredictably. (Note however, that even with no optimization, lazy evaluation may still cause the evaluation order to be not as expected.)Note that disabling optimizations may prevent streamed execution. This is because there are cases where streamed execution is only possible because the optimizer is able to detect that sorting nodes into document order is unnecessary.
- See Also:
- Constant Field Values
-
OUTPUT_URI_RESOLVER
public static final java.lang.String OUTPUT_URI_RESOLVER
The supplied
OutputURIResolverwill be used to resolve URIs of secondary result documents selected in thehrefattribute of the XSLTxsl:result-documentinstruction.- See Also:
- Constant Field Values
-
OUTPUT_URI_RESOLVER_CLASS
public static final java.lang.String OUTPUT_URI_RESOLVER_CLASS
The supplied class will be instantiated, and the resulting
OutputURIResolverwill be used to resolve URIs of secondary result documents selected in thehrefattribute of the XSLTxsl:result-documentinstruction.- See Also:
- Constant Field Values
-
PRE_EVALUATE_DOC_FUNCTION
public static final java.lang.String PRE_EVALUATE_DOC_FUNCTION
If true, calls on the
doc()anddocument()functions, if their arguments are known at compile time, will be evaluated at compile time, and the resulting document will be stored as part of the SaxonConfigurationand shared by all queries and transformations running within thatConfiguration.This is useful for reference documents that have stable content and are used by many different queries and transformations. The default is false, which means each query or transformation will reload the document from disk.
In XSLT 3.0 a better way of having external documents pre-loaded at stylesheet compile time is to use the new facility of static global variables.
- See Also:
- Constant Field Values
-
PREFER_JAXP_PARSER
public static final java.lang.String PREFER_JAXP_PARSER
Relevant only on .NET, determines whether the Java Classpath parser is used in preference to the Microsoft .NET parser.
This option has no effect on the Java platform. The default is true. When running on the .NET platform, if the option is true it causes the Apache Xerces parser (cross-compiled using IKVMC) to be used in preference to the .NET XML parser. If false the .NET XML parser (
System.Xml.XmlTextReader) is used. One reason for providing this option is that the .NET XML parser does not report ID attributes, which means that theid()function does not work.- See Also:
- Constant Field Values
-
RECOGNIZE_URI_QUERY_PARAMETERS
public static final java.lang.String RECOGNIZE_URI_QUERY_PARAMETERS
True if the standard URI resolver is to recognize query parameters included in the URI (for example,
?validation=strict). Such parameters can then be used in URIs passed to thedoc()ordocument()functions. The default is false.This option has no effect if a user-supplied
URIResolveris in use, unless the user-suppliedURIResolverchooses to inherit this functionality from the standardURIResolver.The allowed parameters are:
validation=strict|lax|stripto perform schema validation (see Validation of Source Documents);strip-space=yes|ignorable|noto control whitespace stripping (see Whitespace Stripping in Source Documents);parser=full.class.nameto determine the name of the parser (XMLReader) to be used (see Controlling Parsing of Source Documents); andxinclude=yes|noto control whether XInclude processing takes place, assuming the XML parser supports it (see XInclude processing).- See Also:
- Constant Field Values
-
RECOVERY_POLICY
public static final java.lang.String RECOVERY_POLICY
At one time this property controlled how recoverable errors were handled (fatal error, warning, or ignored). XSLT 3.0 has eliminated all recoverable errors from the specification, so the property is now deprecated.
- See Also:
- Constant Field Values
-
RECOVERY_POLICY_NAME
public static final java.lang.String RECOVERY_POLICY_NAME
At one time this property controlled how recoverable errors were handled (fatal error, warning, or ignored). XSLT 3.0 has eliminated all recoverable errors from the specification, so the property is now deprecated.
- See Also:
- Constant Field Values
-
RESULT_DOCUMENT_THREADS
public static final java.lang.String RESULT_DOCUMENT_THREADS
Indicates the maximum number of threads to be used for processing
xsl:result-documentinstructions in parallel. If the maximum number of threads are already in use, thexsl:result-documentinstruction will be executed synchronously within its parent thread.The default value is initialized to
Runtime.getRuntime().availableProcessors()which is intended to represent the number of "processors" (under some definition) available from the hardware.The limit applies per
Configuration. If multiple workloads are running on the same server under separate SaxonConfigurationobjects, then it may be desirable to lower the limit.Setting a value of zero or one suppresses multithreading entirely. This can also be achieved (for a specific
xsl:result-documentinstruction) by setting the attributesaxon:asynchronous="no"in the stylesheet. Suppressing multithreading may be desirable in a stylesheet that calls extension functions with side-effects.- See Also:
- Constant Field Values
-
RETAIN_DTD_ATTRIBUTE_TYPES
public static final java.lang.String RETAIN_DTD_ATTRIBUTE_TYPES
If set to true, indicates that when input is obtained from a SAX parser, the DTD-based attribute type notified by the XML parser should be used to set the type annotation of the resulting node: for example a DTD type of NMTOKENS results in a type annotation of xs:NMTOKENS.
This option is retained for backwards compatibility (at some time in the past, it was the default), but is deprecated.
- See Also:
- Constant Field Values
-
SCHEMA_URI_RESOLVER
public static final java.lang.String SCHEMA_URI_RESOLVER
The supplied
SchemaURIResolverwill be used to resolve URIs of schema documents referenced inxsl:import-schemadeclarations in XSLT,import schemain XQuery, references from one schema document to another usingxs:includeorxs:import, and references from an instance document to a schema usingxsi:schemaLocation.- See Also:
- Constant Field Values
-
SCHEMA_URI_RESOLVER_CLASS
public static final java.lang.String SCHEMA_URI_RESOLVER_CLASS
The name of a class that implements the interface
SchemaURIResolver; this class will be instantiated and the resulting instance will be used as the value of theSCHEMA_URI_RESOLVERproperty.- See Also:
- Constant Field Values
-
SCHEMA_VALIDATION
public static final java.lang.String SCHEMA_VALIDATION
Indicates whether and how schema validation should be applied to source documents.
- See Also:
- Constant Field Values
-
SCHEMA_VALIDATION_MODE
public static final java.lang.String SCHEMA_VALIDATION_MODE
Indicates whether and how schema validation should be applied to source documents.
- See Also:
- Constant Field Values
-
SERIALIZER_FACTORY_CLASS
public static final java.lang.String SERIALIZER_FACTORY_CLASS
The class will be instantiated and the resulting
SerializerFactorywill be used to create the serialization pipeline for XSLT and XQuery results.By subclassing the standard
SerializerFactoryit is possible to customize many aspects of the output produced by the Serializer, or to introduce new serialization methods and parameters.- See Also:
- Constant Field Values
-
SOURCE_PARSER_CLASS
public static final java.lang.String SOURCE_PARSER_CLASS
XML parser used for source documents.
The class will be instantiated. If it is an
XMLReaderit is used directly; if it is aSAXParserFactoryit is used to instantiate anXMLReader. The resultingXMLReaderwill be used to parse source documents (that is, the principal source document plus any secondary source documents read using thedoc(),document(), orcollection()function).Note that the selected parser is used only when the input is supplied in the form of a
StreamSource; it is ignored when aSAXSourcewith a pre-initializedXMLReaderis supplied. A consequence is that this configuration option has no effect when running transformations from an Ant script, since the Antxslttask always supplies the input in the form of aSAXSource.- See Also:
- Constant Field Values
-
SOURCE_RESOLVER_CLASS
public static final java.lang.String SOURCE_RESOLVER_CLASS
On interfaces that allow an
org.xml.sax.Sourceto be supplied, if a kind ofSourceis provided that Saxon does not recognize, it will be passed to the user-suppliedSourceResolver, which has the opportunity to convert it to a kind ofSourcethat Saxon does recognize. This allows new kinds of input to be supplied as input to Saxon's query, transformation, and validation engines.- See Also:
- Constant Field Values
-
STABLE_COLLECTION_URI
public static final java.lang.String STABLE_COLLECTION_URI
STABLE_COLLECTION_URI, if set, indicates that collections returned by thefn:collection()andfn:uri-collection()functions should be stable, that is, repeated calls on these functions with the same collection URI (within the scope of a single query or transformation) should return identical results.Setting this option may be expensive because it requires that the entire collection be saved in memory; it is rarely necessary in practice, but is required for strict conformance with the W3C specifications.
It is also possible to indicate that a collection is stable by means of the
CollectionFinderAPI.- See Also:
- Constant Field Values
-
STABLE_UNPARSED_TEXT
public static final java.lang.String STABLE_UNPARSED_TEXT
STABLE_UNPARSED_TEXT, if set, indicates that the results returned by repeated calls ofunparsed-text(),unparsed-text-lines(), andunparsed-text-available()are consistent: calling these functions twice during the evaluation of a stylesheet or query will return the same results.Setting this option may be expensive because it requires that the file contents be saved in memory; it is rarely necessary in practice, but is required for strict conformance with the W3C specifications.
- See Also:
- Constant Field Values
-
STANDARD_ERROR_OUTPUT_FILE
public static final java.lang.String STANDARD_ERROR_OUTPUT_FILE
STANDARD_ERROR_OUTPUT_FILEis the name of a file to which Saxon will redirect output that would otherwise go to the operating system standard error stream (System.err). This is the fallback destination for various tracing and diagnostic output. In some cases a more specific mechanism exists to select the destination for particular kinds of output.Note that if the
Configurationis used in more than one processing thread, the messages from different threads will be interleaved in the output file. A more selective approach is to use a differentErrorListenerin different processing threads, and arrange for eachErrorListenerto write to its own logging destination.- See Also:
- Constant Field Values
-
STREAMABILITY
public static final java.lang.String STREAMABILITY
The
STREAMABILITYoption can be used to disable streaming.In earlier Saxon releases a third value "extended" was supported, to enable Saxon streaming extensions. Since nearly all these extensions found their way into the W3C specification, the distinction between "standard" and "extended" became meaningless, so the value "extended" has been dropped.
The value "off" causes Saxon to behave as a non-streaming processor; that is, it does not analyze constructs that are declared streamable, and it processes them as if streaming were not requested. This is the only option available when using a Saxon version or license that does not enable streaming.
The value "standard" is a misnomer. For strict adherence to W3C streamability rules, set the property
STRICT_STREAMABILITY. The streamability rules applied by default are (in nearly all cases) identical to the W3C rules, but by default they are applied to the expression tree after type-checking and optimization, which makes some constructs streamable that would not be so otherwise.Whichever option is chosen, the
STREAMING_FALLBACKoption can be used to control what happens when code is deemed non-streamable; it provides a choice between throwing a static (compile-time) error, and falling back to a non-streaming implementation.- See Also:
- Constant Field Values
-
STRICT_STREAMABILITY
public static final java.lang.String STRICT_STREAMABILITY
Causes the XSLT processor to verify that constructs that are declared streamable are in fact "guaranteed streamable" according to the W3C rules.
Normally, Saxon performs a variety of simplifications and optimizations on the expression tree before performing streamability analysis. Sometimes these tree rewrites will turn a non-streamable expression into a streamable one. An obvious example is variable inlining: the expression
let $x := ./item/price return sum($x)is not streamable, but the rewritten formsum(./item/price)is.The XSLT 3.0 specification requires conformant streaming processors to have a mode of operation in which the streamability rules are enforced as they appear in the spec, and this option enables this mode.
This analysis is expensive, and should only be used during development when testing stylesheet code for portability. When this mode is enabled, Saxon applies the streamability rules at the earliest possible stage of processing; it then performs its normal type checking and optimization phases, before doing a second stage of streamability analysis to construct a streamed execution plan.
- See Also:
- Constant Field Values
-
STREAMING_FALLBACK
public static final java.lang.String STREAMING_FALLBACK
If the
STREAMING_FALLBACKoption is set, then constructs for which streaming is requested (such as templates in a streaming mode, thexsl:source-documentinstruction with attributestreamable="yes", and streamable accumulators) will be executed in non-streaming mode if the code is not actually streamable. A compile-time warning will always be given when the fallback option is taken.- See Also:
- Constant Field Values
-
STRIP_WHITESPACE
public static final java.lang.String STRIP_WHITESPACE
Indicates whether all whitespace, no whitespace, or whitespace in elements defined in a DTD or schema as having element-only content should be stripped from source documents.
The default is "ignorable". This whitespace stripping is additional to any stripping done as a result of the
xsl:strip-spacedeclaration in an XSLT stylesheet.- See Also:
- Constant Field Values
-
STYLE_PARSER_CLASS
public static final java.lang.String STYLE_PARSER_CLASS
XML parser used for stylesheets and schema documents.
The class will be instantiated. If it is an
XMLReaderit is used directly; if it is aSAXParserFactoryit is used to instantiate anXMLReader. The resultingXMLReaderwill be used to parse stylesheet documents (that is, the principal stylesheet module plus any secondary source documents read usingxsl:includeorxsl:import) and also schema documents.- See Also:
- Constant Field Values
-
SUPPRESS_EVALUATION_EXPIRY_WARNING
public static final java.lang.String SUPPRESS_EVALUATION_EXPIRY_WARNING
This is set to true to suppress the warning otherwise issued by command-line interfaces indicating that an evaluation license is in use and is due to expire in a set number of days.
- See Also:
- Constant Field Values
-
SUPPRESS_XPATH_WARNINGS
public static final java.lang.String SUPPRESS_XPATH_WARNINGS
Suppresses all warnings issued by the XPath and XQuery parsers.
Examples of warnings that are suppressed are the warning produced when keywords such as
trueandreturnare interpreted as element names.- See Also:
- Constant Field Values
-
SUPPRESS_XSLT_NAMESPACE_CHECK
public static final java.lang.String SUPPRESS_XSLT_NAMESPACE_CHECK
This is set to true to suppress the warning when there is no commonality between the namespaces used in stylesheet match patterns and the namespaces used in the source document.
- See Also:
- Constant Field Values
-
THRESHOLD_FOR_COMPILING_TYPES
public static final java.lang.String THRESHOLD_FOR_COMPILING_TYPES
Indicates how often an XSD simple type definition must be used before Saxon generates bytecode to implement validation of input data against that type.
By default, Saxon-EE generates Java bytecode to speed up the validation of input strings against user-defined simple types after the type has been used 100 times (during the life of a Saxon Configuration). This threshold may be changed using this configuration option. It may be useful to raise the threshold if the number of user-defined types is large, and the bytecode is creating memory pressure.
- See Also:
- Constant Field Values
-
TIMING
public static final java.lang.String TIMING
This is set to true to cause basic timing and tracing information to be output to the standard error output stream.
The name of the feature is poorly chosen, since much of the information that is output has nothing to do with timing, for example the names of output files for
xsl:result-documentare traced, as are the names of schema documents loaded.- See Also:
- Constant Field Values
-
TRACE_EXTERNAL_FUNCTIONS
public static final java.lang.String TRACE_EXTERNAL_FUNCTIONS
If this option is set, Saxon will output (to the standard error output) progress information about its attempts to locate and disambiguate references to reflexive Java extension functions. This is useful for diagnostics if the XQuery or XSLT compiler is failing to locate user-written extension functions.
- See Also:
- Constant Field Values
-
TRACE_LISTENER
public static final java.lang.String TRACE_LISTENER
The
TraceListenerwill be notified of significant events occurring during a query or transformation, for tracing or debugging purposes.Setting a
TraceListenerautomatically sets theCOMPILE_WITH_TRACINGoption.Avoid this option if more than one transformation or query is running concurrently: use the feature
TRACE_LISTENER_CLASSinstead. Alternatively, it is possible to set aTraceListenerfor an individual query or transformation.- See Also:
- Constant Field Values
-
TRACE_LISTENER_CLASS
public static final java.lang.String TRACE_LISTENER_CLASS
The class will be instantiated once for each query or transformation, and the resulting
TraceListenerwill be notified of significant events occurring during that query or transformation, for tracing or debugging purposes.Setting a
TraceListenerautomatically sets theCOMPILE_WITH_TRACINGoption.- See Also:
- Constant Field Values
-
TRACE_LISTENER_OUTPUT_FILE
public static final java.lang.String TRACE_LISTENER_OUTPUT_FILE
When trace listening is switched on (for example by using -T on the command line), this file will be supplied to the trace listener to use as the output destination. If the option is not supplied, trace listener output is sent to the standard error stream.
- See Also:
- Constant Field Values
-
TRACE_OPTIMIZER_DECISIONS
public static final java.lang.String TRACE_OPTIMIZER_DECISIONS
If this option is set, Saxon will output (to the standard error output) detailed information about the rewrites to the expression tree made by the optimizer. This information is mainly useful for internal system debugging, but it is also possible to digest it to analyze the ways in which the expression has been optimized for the purpose of performance analysis and tuning.
- See Also:
- Constant Field Values
-
TREE_MODEL
public static final java.lang.String TREE_MODEL
Selects an implementation of the Saxon tree model. The default is
TINY_TREE.For running XQuery Update, use the linked tree, because it is the only implementation that is updateable.
- See Also:
- Constant Field Values
-
TREE_MODEL_NAME
public static final java.lang.String TREE_MODEL_NAME
Selects an implementation of the Saxon tree model. The default is
tinyTree.For running XQuery Update, use the linked tree, because it is the only implementation that is updateable.
- See Also:
- Constant Field Values
-
UNPARSED_TEXT_URI_RESOLVER
public static final java.lang.String UNPARSED_TEXT_URI_RESOLVER
The supplied
UnparsedTextURIResolverwill be used to resolve (dereference) all URIs specifed in calls to theunparsed-text(),unparsed-text-lines(), andunparsed-text-available()functions.- See Also:
- Constant Field Values
-
UNPARSED_TEXT_URI_RESOLVER_CLASS
public static final java.lang.String UNPARSED_TEXT_URI_RESOLVER_CLASS
An instance of the specified
UnparsedTextURIResolverclass will be created, and used to resolve (dereference) all URIs specifed in calls to theunparsed-text(),unparsed-text-lines(), andunparsed-text-available()functions.- See Also:
- Constant Field Values
-
URI_RESOLVER_CLASS
public static final java.lang.String URI_RESOLVER_CLASS
An instance of the specified
URIResolverclass will be created, and used to resolve (dereference) all URIs specifed in calls to thedoc()anddocument()functions, as well as URIs used inxsl:includeandxsl:importand location hints for XQuery modules and XSD schema documents.- See Also:
- Constant Field Values
-
USE_PI_DISABLE_OUTPUT_ESCAPING
public static final java.lang.String USE_PI_DISABLE_OUTPUT_ESCAPING
This option determines whether a
TransformerHandlercreated with thisTransformerFactoryorConfigurationrecognizes the JAXP-defined processing instructionsResult.PI_DISABLE_OUTPUT_ESCAPINGandResult.PI_ENABLE_OUTPUT_ESCAPINGin the input stream as instructions to disable or to re-enable output escaping. The default value is false.- See Also:
- Constant Field Values
-
USE_TYPED_VALUE_CACHE
public static final java.lang.String USE_TYPED_VALUE_CACHE
This option is relevant only when the TinyTree is used; it determines whether (for a validated document) a cache will be maintained containing the typed values of nodes.
Typed values are held in the cache only for elements and attributes whose type is other than string, untypedAtomic, or anyURI. The default value is true. Setting this value to false can reduce memory requirements at the cost of requiring recomputation of typed values on each access.
- See Also:
- Constant Field Values
-
USE_XSI_SCHEMA_LOCATION
public static final java.lang.String USE_XSI_SCHEMA_LOCATION
This option determines whether or not to use the
xsi:schemaLocationandxsi:noNamespaceSchemaLocationattributes in an instance document to locate a schema for validation.Note, these attribute are only consulted if validation is requested; the presence of one of these attributes never by itself triggers validation.
- See Also:
- Constant Field Values
-
VALIDATION_COMMENTS
public static final java.lang.String VALIDATION_COMMENTS
This option determines whether non-fatal validation errors in XQuery or XSLT result documents should result in comments being inserted into the result tree. The command-line flag
-outval:recoversets both this option and theVALIDATION_WARNINGSoption.- See Also:
- Constant Field Values
-
VALIDATION_WARNINGS
public static final java.lang.String VALIDATION_WARNINGS
This option indicates (if true) that errors occuring while validating a final result tree are not to be treated as fatal.
Regardless of the setting of this option, all validation errors are reported to the
error()method of theErrorListener, and validation is terminated if theerror()method throws an exception, or if the error limit set in theParseOptionsobject is reached.This option primarily controls what happens at the end of a validation episode. If the validation episode detected one or more validation errors, then when this option is off, an exception is thrown, which will normally result in any query or stylesheet failing with a dynamic error, and no output file being written. If the option is on, no exception is thrown, and the output is written as if validation had been successful. Note in this case that any type annotations present in a result document are unreliable.
If this option is set when running XSLT or XQuery, it is ignored as far as input files are concerned: validation errors in input files are still fatal. However, if the option is set and a validation error occurs in a final output file, the output file is still written and the process terminates as if successful.
The detailed interpretation of this option changed in Saxon 9.5.
- See Also:
- Constant Field Values
-
VERSION_WARNING
public static final java.lang.String VERSION_WARNING
Indicates whether a warning message should be notified (to the
ErrorListener) if running Saxon against an XSLT stylesheet that specifiesversion="1.0".From Saxon 9.8, the warning is no longer output (since XSLT 3.0 does not require it), so this option is ignored.
- See Also:
- Constant Field Values
-
XINCLUDE
public static final java.lang.String XINCLUDE
Indicates whether source documents should have any XInclude directives expanded.
The default is false. The option applies to all input XML documents, including stylesheets and schema documents. It can be overridden for individual documents using the
ParseOptionsclass.This option relies on support in the underlying XML parser. If the XML parser does not support XInclude processing, setting this option results in a parsing failure.
- See Also:
- Constant Field Values
-
XML_VERSION
public static final java.lang.String XML_VERSION
This determines the XML version used by the
Configuration.Note that source documents specifying
xml version="1.0"or"1.1"are accepted regardless of this setting. The effect of this switch is to change the validation rules for types such asxs:Nameandxs:NCName, to change the characters allowed in names within XPath expressions (etc.), to change the meaning of\iand\cin regular expressions, and to determine whether the serializer allows XML 1.1 documents to be constructed.The default is currently 1.0, but may change.
- See Also:
- Constant Field Values
-
XML_PARSER_FEATURE
public static final java.lang.String XML_PARSER_FEATURE
Sets the value of a parser feature flag. The feature name is any fully-qualified URI.
For example if the parser supports a feature
http://xml.org/sax/features/external-parameter-entitiesthen this can be set by setting the value of the Configuration property:http://saxon.sf.net/feature/parserFeature?uri=http%3A//xml.org/sax/features/external-parameter-entitiesto true.- See Also:
- Constant Field Values
-
XML_PARSER_PROPERTY
public static final java.lang.String XML_PARSER_PROPERTY
Sets the value of a parser property flag. The property name is any fully-qualified URI.
For example if the parser supports a property
http://apache.org/xml/properties/schema/external-schemaLocationthen this can be set using the value of the Configuration property:http://saxon.sf.net/feature/parserProperty?uri=http%3A//apache.org/xml/properties/schema/external-schemaLocationto the required value.- See Also:
- Constant Field Values
-
XQUERY_ALLOW_UPDATE
public static final java.lang.String XQUERY_ALLOW_UPDATE
Determines whether XQuery Update syntax is accepted.
If true, update syntax is accepted, if false, it is not accepted. Setting the value to true does not mean that the query has to use update syntax, only that it may do so.
From Saxon 9.6, XQuery Update syntax and XQuery 3.0 syntax can be mixed, although this combination is not defined by any W3C specification at the time of writing.
This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.On the command line, this option is combined with the option "discard" which indicates that updates are allowed, but the updates are not written back to filestore. This does not correspond to any option in the Java API, where writing an updated document back to filestore only happens if explicitly requested.
- See Also:
- Constant Field Values
-
XQUERY_CONSTRUCTION_MODE
public static final java.lang.String XQUERY_CONSTRUCTION_MODE
This option defines the default value of the construction mode in the XQuery static context (overridable in the query prolog).
This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.- See Also:
- Constant Field Values
-
XQUERY_DEFAULT_ELEMENT_NAMESPACE
public static final java.lang.String XQUERY_DEFAULT_ELEMENT_NAMESPACE
This property defines the default namespace for elements and types that are not qualified by a namespace prefix.
This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.- See Also:
- Constant Field Values
-
XQUERY_DEFAULT_FUNCTION_NAMESPACE
public static final java.lang.String XQUERY_DEFAULT_FUNCTION_NAMESPACE
This property defines the default namespace for function names that are not qualified by a namespace prefix.
This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.- See Also:
- Constant Field Values
-
XQUERY_EMPTY_LEAST
public static final java.lang.String XQUERY_EMPTY_LEAST
This property defines how the empty sequence is handled in XQuery sorting (the "order by" clause). If true,
()comes at the start of the sorted sequence; if false, it comes last.This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.- See Also:
- Constant Field Values
-
XQUERY_INHERIT_NAMESPACES
public static final java.lang.String XQUERY_INHERIT_NAMESPACES
This property defines the default value of the
inherit-namespacesproperty in the XQuery static context.This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.- See Also:
- Constant Field Values
-
XQUERY_MULTIPLE_MODULE_IMPORTS
public static final java.lang.String XQUERY_MULTIPLE_MODULE_IMPORTS
If the value is false, then when an
import moduledeclaration is encountered for a module URI that is already among the known loaded modules (or modules in the process of being compiled), theimport moduleis treated as a reference to the existing module. If the value is true, the system first checks whether the supplied "location hints" match the known location of the existing module, and the existing module is used only if there is a match.- See Also:
- Constant Field Values
-
XQUERY_PRESERVE_BOUNDARY_SPACE
public static final java.lang.String XQUERY_PRESERVE_BOUNDARY_SPACE
This property defines whether "boundary space" (insignificant space in direct element constructors) should be retained or not.
This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.- See Also:
- Constant Field Values
-
XQUERY_PRESERVE_NAMESPACES
public static final java.lang.String XQUERY_PRESERVE_NAMESPACES
This property defines whether unused namespace declarations are retained by XQuery element copy operations.
This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.- See Also:
- Constant Field Values
-
XQUERY_REQUIRED_CONTEXT_ITEM_TYPE
public static final java.lang.String XQUERY_REQUIRED_CONTEXT_ITEM_TYPE
This property defines the default expected context item type for a query.
This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.- See Also:
- Constant Field Values
-
XQUERY_SCHEMA_AWARE
public static final java.lang.String XQUERY_SCHEMA_AWARE
A query will automatically be schema-aware if it contains an
import schemadeclaration. This property allows a query to be marked as schema-aware even if it contains noimport schemadeclaration. It is necessary for a query to be compiled as schema-aware if it is to handle typed (validated) input documents in which nodes have type annotations based on their schema-defined type.This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.- See Also:
- Constant Field Values
-
XQUERY_STATIC_ERROR_LISTENER_CLASS
public static final java.lang.String XQUERY_STATIC_ERROR_LISTENER_CLASS
The specified class is instantiated to create an
ErrorListener, and all reports of static errors in a query will go to thisErrorListener.This option can be set for a particular XQuery compilation. When the option is set at the
Configurationlevel, it acts as a default.In the absence of this property, the global
ErrorListenerspecified as the value of theERROR_LISTENER_CLASSproperty is used.- See Also:
- Constant Field Values
-
XQUERY_VERSION
public static final java.lang.String XQUERY_VERSION
This property determines the version of XQuery used by the
Configuration.From Saxon 9.8, an XQuery 3.1 processor is always used by default. So setting this property has no effect.
- See Also:
- Constant Field Values
-
XSD_VERSION
public static final java.lang.String XSD_VERSION
This property determines the version of XML Schema used by the
Configuration.From Saxon 9.8, the default is XSD 1.1. If XSD 1.0 is selected, XSD 1.1 features will be rejected, with the exception of the version control attributes that allow sections of the schema to be marked as requiring XSD 1.0 or XSD 1.1.
- See Also:
- Constant Field Values
-
XSLT_ENABLE_ASSERTIONS
public static final java.lang.String XSLT_ENABLE_ASSERTIONS
This property indicates whether assertions (XSLT 3.0 xsl:assert instructions) are enabled or disabled. They are disabled by default. Setting this property on causes assertions to be enabled at compile time for all XSLT packages compiled using the default configuration options.
This option can be set for a particular XSLT compilation. When the option is set at the
Configurationlevel (or on aTransformerFactory), it acts as a default.If assertions have been enabled at compile time for a particular package, they can still be disabled at run-time (for all packages) by setting an option on the
Xslt30Transformer. But if assertions were disabled at compile time, enabling them at run-time has no effect.- See Also:
- Constant Field Values
-
XSLT_INITIAL_MODE
public static final java.lang.String XSLT_INITIAL_MODE
This property indicates the name of a mode within a stylesheet in which execution (using template rules) should begin.
This option can be set for a particular XSLT transformation. When the option is set at the
Configuration(or on aTransformerFactory), it acts as a default.- See Also:
- Constant Field Values
-
XSLT_INITIAL_TEMPLATE
public static final java.lang.String XSLT_INITIAL_TEMPLATE
This property indicates the name of a named template within a stylesheet where execution should begin.
This option can be set for a particular XSLT transformation. When the option is set at the
Configurationlevel (or on aTransformerFactory), it acts as a default.Specifically, if the transformation is performed using the
transform()method of classnet.sf.saxon.s9api.XsltTransformer, then the transformation will proceed by calling the relevant named template, rather than by applying templates to the supplied source node. It will also affect other APIs built on top of theXsltTransformer, notably the JAXP transformation interface, which in turn is used by many higher-level interfaces such as Ant. Indeed, the main purpose of this configuration option is to allow named-template stylesheet invocation using the JAXP interface, which was designed without this feature in mind.This configuration option is ignored when using an
net.sf.saxon.s9api.Xslt30Transformer, or other interfaces built on top of anXslt30Transformer, for example thenet.sf.saxon.Transformcommand line interface.- See Also:
- Constant Field Values
-
XSLT_SCHEMA_AWARE
public static final java.lang.String XSLT_SCHEMA_AWARE
This property indicates whether stylesheets should be compiled with the ability to handle schema-typed input documents. By default a stylesheet is compiled to handle such input if it contains an
xsl:import-schemainstruction, and not otherwise. It is necessary for a stylesheet to be compiled as schema-aware if it is to handle typed (validated) input documents in which nodes have type annotations based on their schema-defined type.This option can be set for a particular XSLT compilation. When the option is set at the
Configurationlevel (or on aTransformerFactory), it acts as a default.- See Also:
- Constant Field Values
-
XSLT_STATIC_ERROR_LISTENER_CLASS
public static final java.lang.String XSLT_STATIC_ERROR_LISTENER_CLASS
The specified class is instantiated to create an
ErrorListener, and all reports of static errors in a stylesheet will go to thisErrorListener.This option can be set for a particular XSLT compilation. When the option is set at the
Configurationlevel (or on aTransformerFactory), it acts as a default.In the absence of this property, the global
ErrorListenerspecified as the value of theERROR_LISTENER_CLASSproperty is used.- See Also:
- Constant Field Values
-
XSLT_STATIC_URI_RESOLVER_CLASS
public static final java.lang.String XSLT_STATIC_URI_RESOLVER_CLASS
This property defines a
URIResolverused when dereferencing the URIs that appear in thehrefattributes of thexsl:includeandxsl:importdeclarations. Note that this defaults to the setting of the globalURI_RESOLVERproperty.This option can be set for a particular XSLT compilation. When the option is set at the
Configurationlevel (or on aTransformerFactory), it acts as a default.In the absence of this property, the global
URIResolverspecified as the value of theURI_RESOLVER_CLASSproperty is used.- See Also:
- Constant Field Values
-
XSLT_VERSION
public static final java.lang.String XSLT_VERSION
This property determines the version of XSLT to be supported by default.
From Saxon 9.8, an XSLT 3.0 processor is always used by default. So setting this property has no effect.
- See Also:
- Constant Field Values
-
REGEX_BACKTRACKING_LIMIT
public static final java.lang.String REGEX_BACKTRACKING_LIMIT
This property sets a limit on the amount of backtracking performed during regular expression evaluation.
The default is 10000000 (ten million) which typically represents an evaluation time of about ten seconds. After this time, evaluation of the regular expression will fail rather than making further attempts to find a match. If this limit is reached, it often suggests that there might be a better way of writing the regular expression. The value can be set to -1 (minus one) to mean "unlimited".
Excessive backtracking is usually caused by nested loops in the regular expression, combined with processing of long input strings. Try to ensure that when nested loops are used, there is an unambiguous condition that causes the inner loop to terminate. For example
(/[^/]*)+is fine (it matches a sequence of path segments separated by/characters), because the presence of/forces the inner loop to terminate. By contrast,(/.*)+matches the same input, but in many different ways, which could lead to excessive backtracking to no useful purpose.- See Also:
- Constant Field Values
-
XPATH_VERSION_FOR_XSD
public static final java.lang.String XPATH_VERSION_FOR_XSD
The XSD 1.1 specification states that XPath version 2.0 is used for expressions appearing in assertions and type alternatives. This option allows XPath 3.0 or 3.1 to be used instead.
The recognized values are the integers 20, 30, and 31 representing versions 2.0, 3.0, and 3.1 respectively.
- See Also:
- Constant Field Values
-
XPATH_VERSION_FOR_XSLT
public static final java.lang.String XPATH_VERSION_FOR_XSLT
The XSLT 3.0 specification states that processors are required to support XPath 3.0 expressions within stylesheets, together with some extensions (maps) selected from the XPath 3.1 specification. Support for the full syntax of XPath 3.1 is optional, but it is the default in Saxon. This option allows a different XPath language level to be selected.
The integer values 20, 30, and 31 denote XPath 2.0, 3.0, and 3.1 respectively, while the value 305 denotes XPath 3.0 with the extensions defined in the XSLT 3.0 specification.
- See Also:
- Constant Field Values
-
THRESHOLD_FOR_FUNCTION_INLINING
public static final java.lang.String THRESHOLD_FOR_FUNCTION_INLINING
Saxon-EE performs inlining of user-defined functions that are sufficiently simple: they must not be recursive, and they must be below a certain size. This option defines the size.
The value is (roughly) the number of nodes in the expression tree representing the function body. This includes both explicit subexpressions, and subexpressions added by Saxon itself to perform implicit operations such as type checking or conversion of function arguments. The default value is 100.
- See Also:
- Constant Field Values
-
THRESHOLD_FOR_HOTSPOT_BYTE_CODE
public static final java.lang.String THRESHOLD_FOR_HOTSPOT_BYTE_CODE
Saxon-EE generates bytecode to give faster execution of frequently-evaluated subexpressions. Bytecode is generated when a candidate expression has been evaluated a certain number of times, controlled by this parameter.
Setting this parameter to 0 (or any negative value) has the effect of disabling bytecode generation completely. Setting the parameter to a positive value has the effect of enabling bytecode generation if it is not already enabled. Setting the value to 1 (one) causes bytecode to be generated for candidate expressions the first time it is executed.
- See Also:
- Constant Field Values
-
ALLOWED_PROTOCOLS
public static final java.lang.String ALLOWED_PROTOCOLS
The value is a comma-separated list of permitted protocols. A protocol is the scheme portion of a URI, or in the case of the JAR protocol, "jar" plus the scheme portion separated by colon. The value "all" gives access to all protocols (which is the default). The value "" (empty string) disallows all external resource access. (The format is thus the same as for
XMLConstants.ACCESS_EXTERNAL_SCHEMAand similar attributes.)The value constrains access by Saxon (but not by underlying software, such as the XML parser) to resources including the following:
- Stylesheet modules
- Schema documents
- Query modules
- Documents referenced from a stylesheet or query using functions such
as
fn:doc,fn:document,fn:unparsed-text,fn:collection,fn:json-doc,fn:transform, or by thexsl:source-documentinstruction. - Resources obtained using Saxon-supplied extension functions such as those in the EXPath file library (but it does not affect user-supplied extension functions).
The constraint applies to the URI used to request the resource; the constraint is applied by the standard URI resolvers, but if user-supplied resolvers are used (such as a
URIResolver), they can decide whether to apply the restrictions or not.The constraint applies to URIs used as locations or location hints, not to URIs used as names. So for XSD it applies to a schemaLocation, not a targetNamespace; for XQuery it applies to module location hints, not to module URIs. In the case of XSLT packages, resolution from a package name to a location is always under user/application control, so Saxon imposes no restrictions.
The format is the same as for
XMLConstants.ACCESS_EXTERNAL_SCHEMA: either"all"to allow all schemes/protocols, or a comma-separated list of scheme names such as"http","file","ftp". For a JAR file scheme, use the format"jar:scheme", for example"jar:file". A zero-length string disallows all schemes.- See Also:
- Constant Field Values
-
RETAIN_NODE_FOR_DIAGNOSTICS
public static final java.lang.String RETAIN_NODE_FOR_DIAGNOSTICS
By default, Saxon attempts to ensure that the run-time code contains no links to the original source stylesheet tree. This allows the garbage collector to free memory.
If this option is set, then
Locationobjects held in the run-time expression tree may contain a link to an element node in the source stylesheet, enabling a user-writtenErrorListenerto produce improved diagnostics. This may be an appropriate setting to use, for example, in an IDE.Links to source nodes are not retained in an exported SEF file, regardless of this setting.
- See Also:
- Constant Field Values
-
ALLOW_UNRESOLVED_SCHEMA_COMPONENTS
public static final java.lang.String ALLOW_UNRESOLVED_SCHEMA_COMPONENTS
The W3C XSD specification (both 1.0 and 1.1) states that an unresolved reference to an absent schema component does not automatically make the schema invalid; the schema should be usable for validation provided that the missing components are not actually needed in a particular validation episode.
However, the W3C XSD conformance tests treat such an unresolved reference as an error; the test is expected to report the schema as invalid. And this is the way most schema processors actually operate, and probably what most users would expect.
By default, the Saxon schema processor reports an unresolved reference as an error in the schema.
If this option is set, then Saxon attempts to repair the schema so that it is usable for validation, by substituting the missing components with default components: for example if an attribute declaration refers to a type that has not been defined, then
xs:erroris substituted, making any instance of the attribute invalid.- See Also:
- Constant Field Values
-
ZIP_URI_PATTERN
public static final java.lang.String ZIP_URI_PATTERN
This is used by the standard Collection Finder and may not be relevant if a custom Collection Finder is in use.
If the absolutized URI passed to the collection() function matches this pattern, then the URI will be treated as a reference to a ZIP file (and will therefore fail if the URI does not resolve to a resource that can be opened as a ZIP file).
- See Also:
- Constant Field Values
-
-