Package net.sf.saxon

Class FeatureKeys

java.lang.Object
net.sf.saxon.FeatureKeys

public abstract class FeatureKeys extends Object
FeatureKeys defines a set of constants, names of Saxon configuration options which can be supplied to the Saxon implementations of the JAXP interfaces TransformerFactory, SchemaFactory, Validator, and ValidationHandler.
Author:
Michael H. Kay
  • Field Details

    • ALLOW_EXTERNAL_FUNCTIONS

      public static final String ALLOW_EXTERNAL_FUNCTIONS
      ALLOW_EXTERNAL_FUNCTIONS must be a Boolean; it determines whether calls to external functions are allowed. More specifically, it disallows all of the following:
      • Calls to Java extension functions
      • Use of the XSLT system-property() function to access Java system properties
      • Use of a relative URI in the xsl:result-document instruction
      • Calls to XSLT extension instructions

      Note that 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-supplied URIResolver

      See Also:
    • COLLATION_URI_RESOLVER

      public static final String COLLATION_URI_RESOLVER
      COLLATION_URI_RESOLVER must be a CollationURIResolver. This resolver will be used to resolve collation URIs used in stylesheets compiled or executed under the control of this TransformerFactory
      See Also:
    • COLLATION_URI_RESOLVER_CLASS

      public static final String COLLATION_URI_RESOLVER_CLASS
      COLLATION_URI_RESOLVER_CLASS must be the name of a class that implements the interface CollationURIResolver. The class will be instantiated, and the instance will act as the value of the COLLATION_URI_RESOLVER property.
      See Also:
    • COLLECTION_URI_RESOLVER

      public static final String COLLECTION_URI_RESOLVER
      COLLECTION_URI_RESOLVER must be a CollectionURIResolver. This resolver will be used to resolve collection URIs used in calls of the collection() function
      See Also:
    • COLLECTION_URI_RESOLVER_CLASS

      public static final String COLLECTION_URI_RESOLVER_CLASS
      COLLECTION_URI_RESOLVER must be must be the name of a class that implements the interface CollectionURIResolver. The class will be instantiated, and the instance will act as the value of the COLLECTION_URI_RESOLVER property.
      See Also:
    • COMPILE_WITH_TRACING

      public static final String COMPILE_WITH_TRACING
      COMPILE_WITH_TRACING must be a Boolean. If true, stylesheets and queries are compiled with tracing enabled, but the choice of a trace listener is deferred until run time (see Controller.addTraceListener(net.sf.saxon.trace.TraceListener))
      See Also:
    • CONFIGURATION

      public static final String CONFIGURATION
      CONFIGURATION must be an instance of Configuration. This attribute cannot be set on the Configuration itself, but it can be set on various JAXP factory objects such as a TransformerFactory or DocumentBuilderFactory, to ensure that several such factories use the same configuration. Note that other configuration options are held in the Configuration object, so setting this attribute will cancel all others that have been set. Also, if two factories share the same configuration, then setting an attribute on one affects all the others.
      See Also:
    • DTD_VALIDATION

      public static final String DTD_VALIDATION
      DTD_VALIDATION must be a Boolean. This determines whether source documents should be parsed with DTD-validation enabled.
      See Also:
    • EXPAND_ATTRIBUTE_DEFAULTS

      public static final String EXPAND_ATTRIBUTE_DEFAULTS
      EXPAND_ATTRIBUTE_DEFAULTS must be a Boolean; it determines whether fixed and default values defined in a schema or DTD will be expanded. 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 behaviour. 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:
    • LINE_NUMBERING

      public static final String LINE_NUMBERING
      LINE_NUMBERING must be a Boolean; it determines whether line and column numbers are maintained for source documents. Note that some tree implementations do not support line numbering, and some may support it only partially; the implementation always has the option of returning -1 as the line number or column number of a node if the location is unknown. This value sets the default for the Configuration; it can be overridden for individual documents, or for a PipelineConfiguration
      See Also:
    • MESSAGE_EMITTER_CLASS

      public static final String MESSAGE_EMITTER_CLASS
      MESSAGE_EMITTER_CLASS must be the class name of a class that implements net.sf.saxon.event.Receiver. Despite the name, it is not required to be an instance of net.sf.saxon.event.Emitter
      See Also:
    • MODULE_URI_RESOLVER

      public static final String MODULE_URI_RESOLVER
      MODULE_URI_RESOLVER must be an instance of ModuleURIResolver. This is a user-written class that takes responsibility for locating XQuery modules.
      See Also:
    • MODULE_URI_RESOLVER_CLASS

      public static final String MODULE_URI_RESOLVER_CLASS
      MODULE_URI_RESOLVER_CLASS must be the name of a class that implements the interface ModuleURIResolver. This is a user-written class that takes responsibility for locating XQuery modules.
      See Also:
    • NAME_POOL

      public static final String NAME_POOL
      NAME_POOL must be an instance of net.sf.saxon.om.NamePool
      See Also:
    • OUTPUT_URI_RESOLVER

      public static final String OUTPUT_URI_RESOLVER
      OUTPUT_URI_RESOLVER must be an instance of OutputURIResolver. This is a user-written class that takes responsibility for disposing of the result trees produced using XSLT xsl:result-document instruction
      See Also:
    • OUTPUT_URI_RESOLVER_CLASS

      public static final String OUTPUT_URI_RESOLVER_CLASS
      OUTPUT_URI_RESOLVER_CLASS must be the name of a class that implements the interface OutputURIResolver. This is a user-written class that takes responsibility for disposing of the result trees produced using XSLT xsl:result-document instruction
      See Also:
    • PRE_EVALUATE_DOC_FUNCTION

      public static final String PRE_EVALUATE_DOC_FUNCTION
      PRE_EVALUATE_DOC_FUNCTION is a boolean. If set, calls to the doc() or document() function with a statically-known document URI are evaluated at compile time, so that the document only needs to be parsed and constructed once. The effect of this is that subsequent changes to the contents of the file will not be reflected during query or stylesheet processing
      See Also:
    • PREFER_JAXP_PARSER

      public static final String PREFER_JAXP_PARSER
      PREFER_JAXP_PARSER is a boolean. It has no effect when running on the Java platform. When running on the .NET platform, it causes a JAXP XML parser to be used in preference to the .NET XML parser. By default, the .NET XML parser (System.Xml.XmlTextReader) is used. One advantageof this option is that the .NET XML parser does not report ID attributes, which means that the id() function does not work.
      See Also:
    • RECOGNIZE_URI_QUERY_PARAMETERS

      public static final String RECOGNIZE_URI_QUERY_PARAMETERS
      RECOGNIZE_URI_QUERY_PARAMETERS must be a Boolean; it determines whether query parameters (things after a question mark) in a URI passed to the document() or doc() function are specially recognized by the system default URIResolver. Allowed parameters include, for example validation=strict to perform schema validation, and strip-space=yes to perform stripping of all whitespace-only text nodes.
      See Also:
    • RECOVERY_POLICY

      public static final String RECOVERY_POLICY
      See Also:
    • RECOVERY_POLICY_NAME

      public static final String RECOVERY_POLICY_NAME
      RECOVERY_POLICY_NAME must be a string: one of "recoverSilently", "recoverWithWarnings", "doNotRecover"
      See Also:
    • SCHEMA_URI_RESOLVER

      public static final String SCHEMA_URI_RESOLVER
      SCHEMA_URI_RESOLVER must be an instance of SchemaURIResolver. This is a user-written class that takes responsibility for locating schema documents.
      See Also:
    • SCHEMA_URI_RESOLVER_CLASS

      public static final String SCHEMA_URI_RESOLVER_CLASS
      SCHEMA_URI_RESOLVER_CLASS must be the name of a class that implements SchemaURIResolver. This is a user-written class that takes responsibility for locating schema documents.
      See Also:
    • SCHEMA_VALIDATION

      public static final String SCHEMA_VALIDATION
      SCHEMA_VALIDATION must be an Integer. This determines whether source documents should be parsed with schema-validation enabled. The string takes one of the values Validation.STRICT, Validation.LAX, Validation.PRESERVE, Validation.SKIP.
      See Also:
    • SCHEMA_VALIDATION_MODE

      public static final String SCHEMA_VALIDATION_MODE
      SCHEMA_VALIDATION_MODE must be a String: one of "strict", "lax", "preserve", or "skip".
      See Also:
    • SOURCE_PARSER_CLASS

      public static final String SOURCE_PARSER_CLASS
      SOURCE_PARSER_CLASS must be the full class name of an XMLReader. This identifies the parser used for source documents.
      See Also:
    • STRIP_WHITESPACE

      public static final String STRIP_WHITESPACE
      STRIP_WHITESPACE must be a string set to one of the values "all", "none", or "ignorable". This determines what whitespace is stripped during tree construction: "all" removes all whitespace-only text nodes; "ignorable" removes whitespace text nodes in element-only content (as identified by a DTD or Schema), and "none" preserves all whitespace. This whitespace stripping is additional to any stripping caused by the xsl:strip-space declaration in a stylesheet.

      This option also controls stripping of whitespace by a JAXP identity Transformer or identity transformerHandler.

      See Also:
    • STYLE_PARSER_CLASS

      public static final String STYLE_PARSER_CLASS
      STYLE_PARSER_CLASS must be an XMLReader. This identifies the parser used for stylesheets and schema modules.
      See Also:
    • TIMING

      public static final String TIMING
      TIMING must be an Boolean; it determines whether basic timing information is output to System.err (This attribute is a bit of a misnomer; it outputs timing information when used from the command line, but also basic tracing information when used from the Java API: for example, names of output files written using xsl:result-document, and names of classes dynamically loaded)
      See Also:
    • TRACE_EXTERNAL_FUNCTIONS

      public static final String TRACE_EXTERNAL_FUNCTIONS
      TRACE_EXTERNAL_FUNCTIONS must be a Boolean; it determines whether the loading and binding of extension functions is traced
      See Also:
    • TRACE_OPTIMIZER_DECISIONS

      public static final String TRACE_OPTIMIZER_DECISIONS
      TRACE_OPTIMIZER_DECISIONS must be a Boolean; it determines whether decisions made by the optimizer are traced
      See Also:
    • TRACE_LISTENER

      public static final String TRACE_LISTENER
      TRACE_LISTENER must be an instance of a class that implements TraceListener. Setting this property automatically sets COMPILE_WITH_TRACING to true.
      See Also:
    • TRACE_LISTENER_CLASS

      public static final String TRACE_LISTENER_CLASS
      TRACE_LISTENER_CLASS must be the name of a class that implements TraceListener. A new instance of this class will be created as the trace listener for each query or transformation run under this Configuration. Setting this property automatically sets COMPILE_WITH_TRACING to true.
      See Also:
    • TREE_MODEL

      public static final String TREE_MODEL
      TREE_MODEL must be an Integer: Builder.LINKED_TREE or Builder.TINY_TREE
      See Also:
    • TREE_MODEL_NAME

      public static final String TREE_MODEL_NAME
      TREE_MODEL_NAME must be a string: "linkedTree" or "tinyTree"
      See Also:
    • USE_PI_DISABLE_OUTPUT_ESCAPING

      public static final String USE_PI_DISABLE_OUTPUT_ESCAPING
      USE_PI_DISABLE_OUTPUT_ESCAPING must be a Boolean. This determines whether a TransformerHandler created with this Factory or Configuration recognizes the processing instructions Result.PI_DISABLE_OUTPUT_ESCAPING and Result.PI_ENABLE_OUTPUT_ESCAPING in the input stream as instructions to disable or to re-enable output escaping.
      See Also:
    • USE_XSI_SCHEMA_LOCATION

      public static final String USE_XSI_SCHEMA_LOCATION
      USE_XSI_SCHEMA_LOCATION must be a Boolean. This determines whether the schema processor takes notice of (and attempts to dereference) URIs specified in the xsi:schemaLocation and xsi:noNamespaceSchemaLocation attributes of the instance document. The default is true.
      See Also:
    • VALIDATION_WARNINGS

      public static final String VALIDATION_WARNINGS
      VALIDATION_WARNINGS must be a Boolean. This determines whether validation errors in result documents should be treated as fatal. By default they are fatal; with this option set, they are treated as warnings.
      See Also:
    • VERSION_WARNING

      public static final String VERSION_WARNING
      VERSION_WARNING must be a Boolean. This determines whether a warning should be output when running an XSLT 2.0 processor against an XSLT 1.0 stylesheet. The XSLT specification requires this to be done by default.
      See Also:
    • XINCLUDE

      public static final String XINCLUDE
      XINCLUDE must be a Boolean. This determines whether XInclude processing should be performed by default when XML source documents (including stylesheets and schemas) are read.
      See Also:
    • XML_VERSION

      public static final String XML_VERSION
      XML_VERSION is a character string. This determines the XML version used by the Configuration: the value must be "1.0" or "1.1". For details, see Configuration.setXMLVersion(int).

      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 as Name and NCName, to change the meaning of \i and \c in regular expressions, and to determine whether the serializer allows XML 1.1 documents to be constructed.

      See Also:
    • XSD_VERSION

      public static final String XSD_VERSION
      XSD_VERSION is a character string. This determines the version of XML Schema used by the Configuration: the value must be "1.0" or "1.1".
      See Also: