<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet href="../make-menu.xsl" type="text/xsl"?><html>
   <head>
      <this-is section="configuration" page="config-features" subpage=""/>
      <!--
           Generated at 2010-10-29T18:20:48.427+01:00--><title>Saxonica: XSLT and XQuery Processing: Configuration Features</title>
      <meta name="coverage" content="Worldwide"/>
      <meta name="copyright" content="Copyright Saxonica Ltd"/>
      <meta name="title"
            content="Saxonica: XSLT and XQuery Processing: Configuration Features"/>
      <meta name="robots" content="noindex,nofollow"/>
      <link rel="stylesheet" href="../saxondocs.css" type="text/css"/>
   </head>
   <body class="main">
      <h1>Configuration Features</h1>
      <p>This page provides a complete list of the configuration features available.</p>
      <p>The properties are identified by a symbolic name and a URI value defined in the Java module <a class="bodylink" href="../javadoc/net/sf/saxon/lib/FeatureKeys.html"><code>FeatureKeys</code></a>.
      The table below gives summary information for each property, together with a link to the Javadoc, where more complete information is held.</p>
      <table>
         <tr>
            <td>
               <p>Name and URI</p>
            </td>
            <td>
               <p>Description</p>
            </td>
            <td>
               <p>Command line option</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#ALLOW_EXTERNAL_FUNCTIONS"><code>ALLOW_EXTERNAL_FUNCTIONS</code></a></p>
               <p>http://saxon.sf.net/feature/allow-external-functions</p>
            </td>
            <td valign="top">
               <p>ALLOW_EXTERNAL_FUNCTIONS determines whether calls to reflexive external functions are
                allowed. More specifically, if set to <b>false</b> it disallows all of the
                following:</p>
               <ul>
                  <li>
                     <p>Calls to reflexive Java extension functions</p>
                  </li>
                  <li>
                     <p>Use of the XSLT system-property() function to access Java system properties</p>
                  </li>
                  <li>
                     <p>Use of a relative URI in the <code>xsl:result-document</code> instruction</p>
                  </li>
                  <li>
                     <p>Calls to XSLT extension instructions</p>
                  </li>
               </ul>
               <p>The default value is <b>true</b>. The setting <b>false</b> is recommended in an
                environment where untrusted stylesheets may be executed.</p>
               <p>This option does not disable use of the <code>doc()</code> 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 <code>URIResolver</code></p>
               <p>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.</p>
            </td>
            <td valign="top">
               <p>-ext</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#ALLOW_MULTITHREADING"><code>ALLOW_MULTITHREADING</code></a></p>
               <p>http://saxon.sf.net/feature/allow-multithreading</p>
            </td>
            <td valign="top">
               <p>ALLOW_MULTITHREADING determines whether multi-threading is allowed.</p>
               <p>If true (the default), the presence of the attribute <code>saxon:threads="N"</code>
                on an <code>xsl:for-each</code> instruction, when running under Saxon-EE, causes
                multi-threaded execution. If set to false, the value of the
                    <code>saxon:threads</code> argument is ignored.</p>
               <p>The default value is true if Saxon-EE is in use, false otherwise.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#ALLOW_OLD_JAVA_URI_FORMAT"><code>ALLOW_OLD_JAVA_URI_FORMAT</code></a></p>
               <p>http://saxon.sf.net/feature/allow-old-java-uri-format</p>
            </td>
            <td valign="top">
               <p>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.</p>
               <p>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.</p>
               <p>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.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#COLLATION_URI_RESOLVER"><code>COLLATION_URI_RESOLVER</code></a></p>
               <p>http://saxon.sf.net/feature/collation-uri-resolver</p>
            </td>
            <td valign="top">
               <p>The supplied <code>CollationURIResolver</code> is used to process any collation URIs
                found in the query or stylesheet, returning an object of class
                    <a class="bodylink" href="../javadoc/StringCollator.html"><code>StringCollator</code></a> that implements the requested collation.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#COLLATION_URI_RESOLVER_CLASS"><code>COLLATION_URI_RESOLVER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/collation-uri-resolver-class</p>
            </td>
            <td valign="top">
               <p>The supplied class is instantiated and the resulting instance is used as the value of
                the <a class="bodylink" href="../javadoc/FeatureKeys.html#COLLATION_URI_RESOLVER"><code>FeatureKeys#COLLATION_URI_RESOLVER</code></a> property.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#COLLECTION_URI_RESOLVER"><code>COLLECTION_URI_RESOLVER</code></a></p>
               <p>http://saxon.sf.net/feature/collection-uri-resolver</p>
            </td>
            <td valign="top">
               <p>The supplied <code>CollectionURIResolver</code> is used to process any URIs used in
                calls to the <code>collection()</code> function. The
                    <code>CollectionURIResolver</code> may either return a sequence of URIs (which
                are then resolved in the same way as URIs passed to the <code>doc()</code>
                function), or it may return a sequence of (typically document) nodes.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#COLLECTION_URI_RESOLVER_CLASS"><code>COLLECTION_URI_RESOLVER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/collection-uri-resolver-class</p>
            </td>
            <td valign="top">
               <p>The supplied class is instantiated and the resulting instance is used as the value of
                the <a class="bodylink" href="../javadoc/FeatureKeys.html#COLLECTION_URI_RESOLVER"><code>FeatureKeys#COLLECTION_URI_RESOLVER</code></a> property.</p>
            </td>
            <td valign="top">
               <p>-cr</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#COMPILE_WITH_TRACING"><code>COMPILE_WITH_TRACING</code></a></p>
               <p>http://saxon.sf.net/feature/compile-with-tracing</p>
            </td>
            <td valign="top">
               <p>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 <a class="bodylink" href="../javadoc/net/sf/saxon/lib/TraceListener.html"><code>net.sf.saxon.lib.TraceListener</code></a>, but this has
            no effect unless a <code>TraceListener</code> is registered at execution time.</p>
            </td>
            <td valign="top">
               <p>automatically set when -T is present</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#CONFIGURATION"><code>CONFIGURATION</code></a></p>
               <p>http://saxon.sf.net/feature/configuration</p>
            </td>
            <td valign="top">
               <p>This attribute cannot be set on the <a class="bodylink" href="../javadoc/net/sf/saxon/Configuration.html"><code>net.sf.saxon.Configuration</code></a> 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.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#CONFIGURATION_FILE"><code>CONFIGURATION_FILE</code></a></p>
               <p>http://saxon.sf.net/feature/configuration-file</p>
            </td>
            <td valign="top">
               <p>Defines a configuration file to be applied to the configuration. This attribute cannot
            be set on the <a class="bodylink" href="../javadoc/net/sf/saxon/Configuration.html"><code>net.sf.saxon.Configuration</code></a> itself, but it can be set on
            various JAXP factory objects such as a <code>TransformerFactory</code> or
                <code>DocumentBuilderFactory</code>. It is particularly useful when running
            transformations via the Ant xslt task, where it can be set as follows to define all
            configuration settings: </p>
               <p>
          &lt;factory name="net.sf.saxon.TransformerFactoryImpl"&gt;
	 		  &lt;attribute name="http://saxon.sf.net/feature/configuration-file"
                        value="c:/saxon/config.xml"/&gt;
           &lt;/factory&gt;
      </p>
            </td>
            <td valign="top">
               <p>-config:filename</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#DEFAULT_COLLATION"><code>DEFAULT_COLLATION</code></a></p>
               <p>http://saxon.sf.net/feature/defaultCollation</p>
            </td>
            <td valign="top">
               <p>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.</p>
               <p>In XSLT it is possible to override this setting using the
                    <code>[xsl:]default-collation</code> attribute on any stylesheet element. In
                XQuery, it can be overridden using the <code>declare default collation</code>
                declaration in the query prolog, or via a setter method in class
                    <a class="bodylink" href="../javadoc/net/sf/saxon/query/StaticQueryContext.html"><code>net.sf.saxon.query.StaticQueryContext</code></a>.</p>
               <p>If no value is specified, the Unicode codepoint collation is used.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#DEFAULT_COLLECTION"><code>DEFAULT_COLLECTION</code></a></p>
               <p>http://saxon.sf.net/feature/defaultCollection</p>
            </td>
            <td valign="top">
               <p> This determines the collection that is used when the <code>fn:collection()</code>
                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.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#DEFAULT_COUNTRY"><code>DEFAULT_COUNTRY</code></a></p>
               <p>http://saxon.sf.net/feature/defaultCountry</p>
            </td>
            <td valign="top">
               <p> This determines the country that is used by <code>format-date()</code> 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.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#DEFAULT_LANGUAGE"><code>DEFAULT_LANGUAGE</code></a></p>
               <p>http://saxon.sf.net/feature/defaultLanguage</p>
            </td>
            <td valign="top">
               <p>This option determines the language that is used by <code>format-date()</code>,
                    <code>xsl:number</code> and 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.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#DTD_VALIDATION"><code>DTD_VALIDATION</code></a></p>
               <p>http://saxon.sf.net/feature/validation</p>
            </td>
            <td valign="top">
               <p>If true, the XML parser is requested to perform validation of source documents
                against their DTD. Default is false.</p>
               <p>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 <a class="bodylink" href="../javadoc/net/sf/saxon/lib/ParseOptions.html"><code>net.sf.saxon.lib.ParseOptions</code></a> for that
                individual document, for example from a <code>URIResolver</code>.</p>
            </td>
            <td valign="top">
               <p>-dtd:(on|off|recover)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#DTD_VALIDATION_RECOVERABLE"><code>DTD_VALIDATION_RECOVERABLE</code></a></p>
               <p>http://saxon.sf.net/feature/dtd-validation-recoverable</p>
            </td>
            <td valign="top">
               <p>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.</p>
               <p>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 <a class="bodylink" href="../javadoc/net/sf/saxon/lib/ParseOptions.html"><code>net.sf.saxon.lib.ParseOptions</code></a> for that
                individual document, for example from a <code>URIResolver</code>.</p>
            </td>
            <td valign="top">
               <p>-dtd:(on|off|recover)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#ERROR_LISTENER_CLASS"><code>ERROR_LISTENER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/errorListenerClass</p>
            </td>
            <td valign="top">
               <p>ERROR_LISTENER_CLASS is the name of the class used to implement the JAXP
                    <code>ErrorListener</code>. 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.</p>
               <p>Finer control can be obtained by setting the <code>ErrorListener</code> for a
                specific XSLT or XQuery compilation or evaluation.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#EXPAND_ATTRIBUTE_DEFAULTS"><code>EXPAND_ATTRIBUTE_DEFAULTS</code></a></p>
               <p>http://saxon.sf.net/feature/expandAttributeDefaults</p>
            </td>
            <td valign="top">
               <p>EXPAND_ATTRIBUTE_DEFAULTS determines 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.</p>
            </td>
            <td valign="top">
               <p>-expand:(on|off)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#LAZY_CONSTRUCTION_MODE"><code>LAZY_CONSTRUCTION_MODE</code></a></p>
               <p>http://saxon.sf.net/feature/lazyConstructionMode</p>
            </td>
            <td valign="top">
               <p>LAZY_CONSTRUCTION_MODE determines 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).</p>
               <p>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.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#LICENSE_FILE_LOCATION"><code>LICENSE_FILE_LOCATION</code></a></p>
               <p>http://saxon.sf.net/feature/licenseFileLocation</p>
            </td>
            <td valign="top">
               <p>LICENSE_FILE_LOCATION holds 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.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#LINE_NUMBERING"><code>LINE_NUMBERING</code></a></p>
               <p>http://saxon.sf.net/feature/linenumbering</p>
            </td>
            <td valign="top">
               <p>Default is false. If true, line and column number information is retained for all
                source documents. This information is accessible using the
                    <code>saxon:line-number()</code> and <code>saxon:column-number()</code>
                extension functions.</p>
               <p>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 "&gt;" character that forms the last character of the start tag.</p>
            </td>
            <td valign="top">
               <p>-l:(on|off)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#MESSAGE_EMITTER_CLASS"><code>MESSAGE_EMITTER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/messageEmitterClass</p>
            </td>
            <td valign="top">
               <p>Use the specified Receiver to process the output from <code>xsl:message</code>. The
                class must implement the <code>net.sf.saxon.event.Receiver</code> interface. This
                interface is similar to a SAX <code>ContentHandler</code>, in that it takes a stream
                of events to generate output.</p>
               <p> By default the standard XML emitter is used, configured to write to the standard
                error stream, and to include no XML declaration. </p>
               <p>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 Receiver is as follows: there is a
                single <code>open()</code> call at the start of the transformation, and a single
                    <code>close()</code> call at the end; and each evaluation of an
                    <code>xsl:message</code> instruction starts with a <code>startDocument()</code>
                call and ends with <code>endDocument()</code>. </p>
               <p>The <code>startDocument()</code> event has a <code>properties</code> argument
                indicating whether <code>terminate="yes"</code> was specified, and the
                    <code>locationId</code> on calls such as <code>startElement()</code> and
                    <code>characters()</code> can be used to identify the location in the stylesheet
                where the message data originated (this is achieved by passing the supplied
                    <code>locationId</code> in a call to
                    <code>getPipelineConfiguration().getLocator().getSystemId(locationId)</code>, or
                to <code>getLineNumber()</code> on the same object). </p>
               <p>Select the class <code>net.sf.saxon.event.MessageWarner</code> to have
                    <code>xsl:message</code> output notified to the JAXP <code>ErrorListener</code>,
                as described in the JAXP documentation.</p>
            </td>
            <td valign="top">
               <p>-m:classname</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#MODULE_URI_RESOLVER"><code>MODULE_URI_RESOLVER</code></a></p>
               <p>http://saxon.sf.net/feature/moduleURIResolver</p>
            </td>
            <td valign="top">
               <p>Affects XQuery only. An instance of a user-written class implementing Saxon's
                    <a class="bodylink" href="../javadoc/net/sf/saxon/lib/ModuleURIResolver.html"><code>net.sf.saxon.lib.ModuleURIResolver</code></a> interface. This is used to
                process any URIs used in <code>import module</code> directives in XQuery.</p>
            </td>
            <td valign="top">
               <p>-mr:classname</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#MODULE_URI_RESOLVER_CLASS"><code>MODULE_URI_RESOLVER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/moduleURIResolverClass</p>
            </td>
            <td valign="top">
               <p>Affects XQuery only. The name of a user-written class implementing Saxon's
                    <a class="bodylink" href="../javadoc/net/sf/saxon/lib/ModuleURIResolver.html"><code>net.sf.saxon.lib.ModuleURIResolver</code></a> interface. This is used to
                process any URIs used in <code>import module</code> directives in XQuery.</p>
            </td>
            <td valign="top">
               <p>-mr:classname</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink" href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#NAME_POOL"><code>NAME_POOL</code></a></p>
               <p>http://saxon.sf.net/feature/namePool</p>
            </td>
            <td valign="top">
               <p>Indicates that the supplied <code>NamePool</code> should be used as the target
                (run-time) NamePool by all stylesheets compiled (using <code>newTemplates()</code>)
                after this call on <code>setAttribute</code>. Normally a single system-allocated
                    <code>NamePool</code> is 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 same <code>NamePool</code> that is used when the stylesheet is compiled: this
                will happen automatically if the input to a transformation is supplied as a
                    <code>SAXSource</code> or <code>StreamSource</code> but it is under user control
                if you build the source tree yourself.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#OCCURRENCE_LIMITS"><code>OCCURRENCE_LIMITS</code></a></p>
               <p>http://saxon.sf.net/feature/occurrenceLimits</p>
            </td>
            <td valign="top">
               <p>OCCURRENCE_LIMITS determines the largest values of <code>minOccurs</code> and
                    <code>maxOccurs</code> that 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
                    <code>minOccurs</code> value greater than the first integer is reduced to the
                value of the first integer, and any <code>maxOccurs</code> value greater than the
                second integer is treated as "unbounded".</p>
            </td>
            <td valign="top">
               <p>-limits:min,max</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#OPTIMIZATION_LEVEL"><code>OPTIMIZATION_LEVEL</code></a></p>
               <p>http://saxon.sf.net/feature/optimizationLevel</p>
            </td>
            <td valign="top">
               <p>A string whose value is an integer in the range 0 (no optimization) to 10 (full
                optimization); currently all values other than 0 result in full optimization but
                this is likely to change in future. 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.) </p>
            </td>
            <td valign="top">
               <p>-opt:integer</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#OUTPUT_URI_RESOLVER"><code>OUTPUT_URI_RESOLVER</code></a></p>
               <p>http://saxon.sf.net/feature/outputURIResolver</p>
            </td>
            <td valign="top">
               <p>The supplied <code>OutputURIResolver</code> will be used to resolve URIs of secondary
                result documents selected in the <code>href</code> attribute of the
                    <code>xsl:result-document</code> instruction</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#OUTPUT_URI_RESOLVER_CLASS"><code>OUTPUT_URI_RESOLVER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/outputURIResolverClass</p>
            </td>
            <td valign="top">
               <p>The supplied class will be instantiated, and the resulting
                    <code>OutputURIResolver</code> will be used to resolve URIs of secondary result
                documents selected in the <code>href</code> attribute of the
                    <code>xsl:result-document</code> instruction</p>
            </td>
            <td valign="top">
               <p>-or:classname</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#PRE_EVALUATE_DOC_FUNCTION"><code>PRE_EVALUATE_DOC_FUNCTION</code></a></p>
               <p>http://saxon.sf.net/feature/preEvaluateDocFunction</p>
            </td>
            <td valign="top">
               <p>If true, calls on the <code>doc()</code> and <code>document()</code> 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 Saxon
                    <a class="bodylink" href="../javadoc/net/sf/saxon/Configuration.html"><code>net.sf.saxon.Configuration</code></a> and shared by all queries and
                transformations running within that <code>Configuration</code>. 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.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#PREFER_JAXP_PARSER"><code>PREFER_JAXP_PARSER</code></a></p>
               <p>http://saxon.sf.net/feature/preferJaxpParser</p>
            </td>
            <td valign="top">
               <p>This option has no effect on the Java platform. The default is <b>true</b>. 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 (<code>System.Xml.XmlTextReader</code>) is used. One
                reason for using this option is that the .NET XML parser does not report ID
                attributes, which means that the id() function does not work.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#RECOGNIZE_URI_QUERY_PARAMETERS"><code>RECOGNIZE_URI_QUERY_PARAMETERS</code></a></p>
               <p>http://saxon.sf.net/feature/recognize-uri-query-parameters</p>
            </td>
            <td valign="top">
               <p>True if the the standard URI resolver is to recognize query parameters included in
                the URI (for example, <code>?val=strict</code>). Such parameters can then be used in
                URIs passed to the <code>doc()</code> or <code>document()</code> functions. For
                details of the query parameters available, see <a class="bodylink" href="../sourcedocs/intro.xml">Source
                    Documents</a>. The default is false.</p>
               <p>This option has no effect if a user-supplied <code>URIResolver</code> is in use,
                unless the user-supplied <code>URIResolver</code> chooses to inherit this
                functionality from the standard <code>URIResolver</code>.</p>
               <p>Allowed parameters include <code>validation=strict|lax|strip</code> to perform schema
                validation, <code>strip-space=yes|ignorable|no</code> to control whitespace
                stripping, and <code>xinclude=yes|no</code> to control whether XInclude processing
                takes place (assuming the XML parser supports it).</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#RECOVERY_POLICY"><code>RECOVERY_POLICY</code></a></p>
               <p>http://saxon.sf.net/feature/recoveryPolicy</p>
            </td>
            <td valign="top">
               <p>An Integer, one of <a class="bodylink"
                     href="../javadoc/net/sf/saxon/Configuration.html#RECOVER_SILENTLY"><code>net.sf.saxon.Configuration#RECOVER_SILENTLY</code></a>,
                    <a class="bodylink"
                     href="../javadoc/net/sf/saxon/Configuration.html#RECOVER_WITH_WARNINGS"><code>net.sf.saxon.Configuration#RECOVER_WITH_WARNINGS</code></a>, or
                    <a class="bodylink"
                     href="../javadoc/net/sf/saxon/Configuration.html#DO_NOT_RECOVER"><code>net.sf.saxon.Configuration#DO_NOT_RECOVER</code></a>. Indicates the policy for
                handling dynamic errors that the XSLT specification defines as recoverable. 0 means
                recover silently; 1 means recover after signalling a warning to the
                    <code>ErrorListener</code>; 2 means treat the error as fatal. An example of a
                recoverable error is when two template rules match the same node.</p>
            </td>
            <td valign="top">
               <p>-warnings:(silent|recover|fatal)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#RECOVERY_POLICY_NAME"><code>RECOVERY_POLICY_NAME</code></a></p>
               <p>http://saxon.sf.net/feature/recoveryPolicyName</p>
            </td>
            <td valign="top">
               <p>Indicates the policy for handling dynamic errors that the XSLT specification defines
                as recoverable. "recoverSilently" means recover silently; "recoverWithWarnings"
                means recover after signalling a warning to the <code>ErrorListener</code>;
                "doNotRecover" means treat the error as fatal. An example of a recoverable error is
                when two template rules match the same node. </p>
            </td>
            <td valign="top">
               <p>-warnings:(silent|recover|fatal)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#SCHEMA_URI_RESOLVER"><code>SCHEMA_URI_RESOLVER</code></a></p>
               <p>http://saxon.sf.net/feature/schemaURIResolver</p>
            </td>
            <td valign="top">
               <p>The supplied <code>SchemaURIResolver</code> will be used to resolve URIs of schema
                documents referenced in <code>xsl:import-schema</code> declarations in XSLT,
                    <code>import schema</code> in XQuery, references from one schema document to
                another using <code>xs:include</code> or <code>xs:import</code>, and references from
                an instance document to a schema using <code>xsi:schemaLocation</code>.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#SCHEMA_URI_RESOLVER_CLASS"><code>SCHEMA_URI_RESOLVER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/schemaURIResolverClass</p>
            </td>
            <td valign="top">
               <p>The name of a class that implements the interface <code>SchemaURIResolver</code>;
                this class will be instantiated and the resulting instance will be used as the value
                of the <a class="bodylink" href="../javadoc/FeatureKeys.html#SCHEMA_URI_RESOLVER"><code>FeatureKeys#SCHEMA_URI_RESOLVER</code></a> property.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#SCHEMA_VALIDATION"><code>SCHEMA_VALIDATION</code></a></p>
               <p>http://saxon.sf.net/feature/schema-validation</p>
            </td>
            <td valign="top">
               <p>Indicates whether and how schema validation should be applied to source
                documents.</p>
            </td>
            <td valign="top">
               <p>-val:(strict|lax|strip|preserve)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#SCHEMA_VALIDATION_MODE"><code>SCHEMA_VALIDATION_MODE</code></a></p>
               <p>http://saxon.sf.net/feature/schema-validation-mode</p>
            </td>
            <td valign="top">
               <p>Indicates whether and how schema validation should be applied to source
                documents.</p>
            </td>
            <td valign="top">
               <p>-val:(strict|lax|strip|preserve)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#SERIALIZER_FACTORY_CLASS"><code>SERIALIZER_FACTORY_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/serializerFactoryClass</p>
            </td>
            <td valign="top">
               <p>The class will be instantiated and the resulting <code>SerializerFactory</code> will
                be used to create the serialization pipeline for XSLT and XQuery results. By
                subclassing the standard <code>SerializerFactory</code> it is possible to customize
                many aspects of the output produced by the Serializer, or to introduce new
                serialization methods and parameters.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#SOURCE_PARSER_CLASS"><code>SOURCE_PARSER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/sourceParserClass</p>
            </td>
            <td valign="top">
               <p>The class will be instantiated and the resulting <code>XMLReader</code> will be used
                to parse source documents (that is, the principal source document plus any secondary
                source documents read using the <code>doc()</code>, <code>document()</code>, or
                    <code>collection()</code> function)</p>
            </td>
            <td valign="top">
               <p>-x:classname</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#SOURCE_RESOLVER_CLASS"><code>SOURCE_RESOLVER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/sourceResolverClass</p>
            </td>
            <td valign="top">
               <p>On interfaces that allow a <code>org.xml.sax.Source</code> to be supplied, if a kind
                of <code>Source</code> is provided that Saxon does not recognize, it will be passed
                to the user-supplied <code>SourceResolver</code>, which has the opportunity to
                convert it to a kind of <code>Source</code> that Saxon does recognize. This allows
                new kinds of input to be supplied as input to Saxon's query, transformation, and
                validation engines.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#STANDARD_ERROR_OUTPUT_FILE"><code>STANDARD_ERROR_OUTPUT_FILE</code></a></p>
               <p>http://saxon.sf.net/feature/standardErrorOutputFile</p>
            </td>
            <td valign="top">
               <p>STANDARD_ERROR_OUTPUT_FILE is 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.</p>
               <p>Note that this property is write-only, and cannot be set from the configuration
                file.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#STRIP_WHITESPACE"><code>STRIP_WHITESPACE</code></a></p>
               <p>http://saxon.sf.net/feature/strip-whitespace</p>
            </td>
            <td valign="top">
               <p>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 <code>xsl:strip-space</code> declaration in an
                XSLT stylesheet.</p>
            </td>
            <td valign="top">
               <p>-strip:(all|none|ignorable)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#STYLE_PARSER_CLASS"><code>STYLE_PARSER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/sourceParserClass</p>
            </td>
            <td valign="top">
               <p>The class will be instantiated, and the resulting <code>XMLReader</code> will be used
            to parse stylesheet documents (that is, the principal stylesheet module plus any
            secondary source documents read using xsl:include or xsl:import) and also schema
            documents.</p>
            </td>
            <td valign="top">
               <p>-y:classname</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink" href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#TIMING"><code>TIMING</code></a></p>
               <p>http://saxon.sf.net/feature/timing</p>
            </td>
            <td valign="top">
               <p>This is set to true to cause basic timing and tracing information is 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 <code>xsl:result-document</code> are traced.</p>
            </td>
            <td valign="top">
               <p>-t</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#TRACE_EXTERNAL_FUNCTIONS"><code>TRACE_EXTERNAL_FUNCTIONS</code></a></p>
               <p>http://saxon.sf.net/feature/trace-external-functions</p>
            </td>
            <td valign="top">
               <p>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.</p>
            </td>
            <td valign="top">
               <p>-TJ</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#TRACE_OPTIMIZER_DECISIONS"><code>TRACE_OPTIMIZER_DECISIONS</code></a></p>
               <p>http://saxon.sf.net/feature/trace-optimizer-decisions</p>
            </td>
            <td valign="top">
               <p>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.</p>
            </td>
            <td valign="top">
               <p>-explain</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#TRACE_LISTENER"><code>TRACE_LISTENER</code></a></p>
               <p>http://saxon.sf.net/feature/traceListener</p>
            </td>
            <td valign="top">
               <p>The <code>TraceListener</code> will be notified of significant events occurring
                during a query or transformation, for tracing or debugging purposes.</p>
               <p>Setting a <code>TraceListener</code> automatically sets the
                    <a class="bodylink" href="../javadoc/FeatureKeys.html#COMPILE_WITH_TRACING"><code>FeatureKeys#COMPILE_WITH_TRACING</code></a> option.</p>
               <p>Avoid this option if more than one transformation or query is running concurrently:
                use the feature <a class="bodylink" href="../javadoc/FeatureKeys.html#TRACE_LISTENER_CLASS"><code>FeatureKeys#TRACE_LISTENER_CLASS</code></a> instead.
                Alternatively, it is possible to set a <code>TraceListener</code> for an individual
                query or transformation.</p>
            </td>
            <td valign="top">
               <p>-TL:classname</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#TRACE_LISTENER_CLASS"><code>TRACE_LISTENER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/traceListenerClass</p>
            </td>
            <td valign="top">
               <p>The class will be instantiated once for each query or transformation, and the
                resulting <code>TraceListener</code> will be notified of significant events
                occurring during that query or transformation, for tracing or debugging
                purposes.</p>
               <p>Setting a <code>TraceListener</code> automatically sets the
                    <a class="bodylink" href="../javadoc/FeatureKeys.html#COMPILE_WITH_TRACING"><code>FeatureKeys#COMPILE_WITH_TRACING</code></a> option.</p>
            </td>
            <td valign="top">
               <p>-TL:classname</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink" href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#TREE_MODEL"><code>TREE_MODEL</code></a></p>
               <p>http://saxon.sf.net/feature/treeModel</p>
            </td>
            <td valign="top">
               <p>Selects an implementation of the Saxon tree model. The default is
                    <code>TINY_TREE</code>.</p>
               <p>For running XQuery Update, use the linked tree, because it is the only implementation
                that is updateable.</p>
            </td>
            <td valign="top">
               <p>-tree:(linked|tiny|tinyc)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#TREE_MODEL_NAME"><code>TREE_MODEL_NAME</code></a></p>
               <p>http://saxon.sf.net/feature/treeModelName</p>
            </td>
            <td valign="top">
               <p>Selects an implementation of the Saxon tree model. The default is
                    <code>tinyTree</code>.</p>
               <p>For running XQuery Update, use the linked tree, because it is the only implementation
                that is updateable.</p>
            </td>
            <td valign="top">
               <p>-tree:(linked|tiny|tinyc)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#URI_RESOLVER_CLASS"><code>URI_RESOLVER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/uriResolverClass</p>
            </td>
            <td valign="top">
               <p>An instance of the specified <code>URIResolver</code> class will be created, and used
                to resolve (dereference) all URIs specifed in calls to the <code>doc()</code> and
                    <code>document()</code> functions, as well as URIs used in
                    <code>xsl:include</code> and <code>xsl:import</code> and location hints for
                XQuery modules and XSD schema documents.</p>
            </td>
            <td valign="top">
               <p>-r:classname</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#USE_PI_DISABLE_OUTPUT_ESCAPING"><code>USE_PI_DISABLE_OUTPUT_ESCAPING</code></a></p>
               <p>http://saxon.sf.net/feature/use-pi-disable-output-escaping</p>
            </td>
            <td valign="top">
               <p>This option determines whether a <code>TransformerHandler</code> created with this
                    <code>TransformerFactory</code> or <code>Configuration</code> recognizes the
                JAXP-defined processing instructions <code>Result.PI_DISABLE_OUTPUT_ESCAPING</code>
                and <code>Result.PI_ENABLE_OUTPUT_ESCAPING</code> in the input stream as
                instructions to disable or to re-enable output escaping. The default value is
                    <b>false</b>.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#USE_TYPED_VALUE_CACHE"><code>USE_TYPED_VALUE_CACHE</code></a></p>
               <p>http://saxon.sf.net/feature/use-typed-value-cache</p>
            </td>
            <td valign="top">
               <p>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.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#USE_XSI_SCHEMA_LOCATION"><code>USE_XSI_SCHEMA_LOCATION</code></a></p>
               <p>http://saxon.sf.net/feature/useXsiSchemaLocation</p>
            </td>
            <td valign="top">
               <p>This option determines whether or not to use the <code>xsi:schemaLocation</code>
                    and<code> xsi:noNamespaceSchemaLocation</code> attributes in an instance
                document to locate a schema for validation.</p>
               <p>Note, these attribute are only consulted if validation is requested; the presence of
                one of these attributes never by itself triggers validation.</p>
            </td>
            <td valign="top">
               <p>-xsiloc:(on|off)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#VALIDATION_COMMENTS"><code>VALIDATION_COMMENTS</code></a></p>
               <p>http://saxon.sf.net/feature/validation-comments</p>
            </td>
            <td valign="top">
               <p>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 <code>-outval:recover</code> sets both this option and the
                    <a class="bodylink" href="../javadoc/FeatureKeys.html#VALIDATION_WARNINGS"><code>FeatureKeys#VALIDATION_WARNINGS</code></a> option.</p>
            </td>
            <td valign="top">
               <p>-outval:recover</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#VALIDATION_WARNINGS"><code>VALIDATION_WARNINGS</code></a></p>
               <p>http://saxon.sf.net/feature/validation-warnings</p>
            </td>
            <td valign="top">
               <p>This option indicates (if true) that errors occuring while validating a final result
                tree are to be treated as warnings rather than fatal errors. Although the XSLT and
                XQuery specifications state that validation errors are fatal, this switch can be
                useful during debugging because it enables the invalid output to be inspected.</p>
            </td>
            <td valign="top">
               <p>-outval:recover</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#VERSION_WARNING"><code>VERSION_WARNING</code></a></p>
               <p>http://saxon.sf.net/feature/version-warning</p>
            </td>
            <td valign="top">
               <p>Indicates whether a warning message should be notified (to the
                    <code>ErrorListener</code>) if running Saxon against an XSLT stylesheet that
                specifies <code>version="1.0"</code>. The warning that an XSLT 1.0 stylesheet is
                being processed using an XSLT 2.0 processor is output by default (because the W3C
                specification requires it), but it may be suppressed using this option.</p>
            </td>
            <td valign="top">
               <p>-versmsg:(on|off)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink" href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XINCLUDE"><code>XINCLUDE</code></a></p>
               <p>http://saxon.sf.net/feature/xinclude-aware</p>
            </td>
            <td valign="top">
               <p>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 <a class="bodylink" href="../javadoc/net/sf/saxon/lib/ParseOptions.html"><code>net.sf.saxon.lib.ParseOptions</code></a> class.</p>
               <p>This option relies on support in the underlying XML parser. If the XML parser does
                not support XInclude processing, the option is ignored.</p>
            </td>
            <td valign="top">
               <p>-versmsg:(on|off)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XML_VERSION"><code>XML_VERSION</code></a></p>
               <p>http://saxon.sf.net/feature/xml-version</p>
            </td>
            <td valign="top">
               <p>This determines the XML version used by the Configuration.</p>
               <p>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 <code>xs:Name</code> and <code>xs:NCName</code>, to change
                the characters allowed in names within XPath expressions (etc.), to change the
                meaning of <code>\i</code> and <code>\c</code> in regular expressions, and to
                determine whether the serializer allows XML 1.1 documents to be constructed. </p>
               <p>The default is currently 1.0, but may change.</p>
            </td>
            <td valign="top">
               <p>-xmlversion:(1.0|1.1)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_ALLOW_UPDATE"><code>XQUERY_ALLOW_UPDATE</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryAllowUpdate</p>
            </td>
            <td valign="top">
               <p>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.</p>
               <p>Note that XQuery Update syntax and XQuery 3.0 syntax cannot currently be mixed.</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
               <p>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.</p>
            </td>
            <td valign="top">
               <p>-update:(on|off|discard)</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_CONSTRUCTION_MODE"><code>XQUERY_CONSTRUCTION_MODE</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryConstructionMode</p>
            </td>
            <td valign="top">
               <p>This option defines the default value of the construction mode in the XQuery static
                context (overridable in the query prolog)</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_DEFAULT_ELEMENT_NAMESPACE"><code>XQUERY_DEFAULT_ELEMENT_NAMESPACE</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryDefaultElementNamespace</p>
            </td>
            <td valign="top">
               <p>This property defines the default namespace for elements and types that are not
                qualified by a namespace prefix.</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_DEFAULT_FUNCTION_NAMESPACE"><code>XQUERY_DEFAULT_FUNCTION_NAMESPACE</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryDefaultFunctionNamespace</p>
            </td>
            <td valign="top">
               <p>This property defines the default namespace for function names that are not
                qualified by a namespace prefix.</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_EMPTY_LEAST"><code>XQUERY_EMPTY_LEAST</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryEmptyLeast</p>
            </td>
            <td valign="top">
               <p>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.</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_INHERIT_NAMESPACES"><code>XQUERY_INHERIT_NAMESPACES</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryInheritNamespaces</p>
            </td>
            <td valign="top">
               <p>This property defines the default value of the inherit-namespaces property in the
                XQuery static context.</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_PRESERVE_BOUNDARY_SPACE"><code>XQUERY_PRESERVE_BOUNDARY_SPACE</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryPreserveBoundarySpace</p>
            </td>
            <td valign="top">
               <p>This property defines whether "boundary space" (insignificant space in direct element
                constructors) should be retained or not</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_PRESERVE_NAMESPACES"><code>XQUERY_PRESERVE_NAMESPACES</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryPreserveNamespaces</p>
            </td>
            <td valign="top">
               <p>This property defines whether unused namespace declarations are retained by XQuery
                element copy operations</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_REQUIRED_CONTEXT_ITEM_TYPE"><code>XQUERY_REQUIRED_CONTEXT_ITEM_TYPE</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryRequiredContextItemType</p>
            </td>
            <td valign="top">
               <p>This property defines the default expected context item type for a query.</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_SCHEMA_AWARE"><code>XQUERY_SCHEMA_AWARE</code></a></p>
               <p>http://saxon.sf.net/feature/xquerySchemaAware</p>
            </td>
            <td valign="top">
               <p>A query will automatically be schema-aware if it contains an <code>import
                schema</code> declaration. This property allows a query to be marked as
                schema-aware even if it contains no <code>import schema</code> declaration. 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.</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_STATIC_ERROR_LISTENER_CLASS"><code>XQUERY_STATIC_ERROR_LISTENER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryStaticErrorListenerClass</p>
            </td>
            <td valign="top">
               <p>The specified class is instantiated to create an <code>ErrorListener</code>,
                and all reports of static errors in a query will go to this
                <code>ErrorListener</code>.</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
               <p>In the absence of this property, the global <code>ErrorListener</code>
            specified as the value of the <a class="bodylink" href="../javadoc/.html#ERROR_LISTENER_CLASS"><code>#ERROR_LISTENER_CLASS</code></a> property is used.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XQUERY_VERSION"><code>XQUERY_VERSION</code></a></p>
               <p>http://saxon.sf.net/feature/xqueryVersion</p>
            </td>
            <td valign="top">
               <p>This property determines the version of XQuery used by the Configuration. In order
                to use XQuery 3.0, it is necessary both to set the XQuery compiler to process XQuery
                3.0, and to specify XQuery 3.0 in the query prolog of each module that uses XQuery
                3.0 features.</p>
               <p>This option can be set for a particular XQuery compilation. When the option is set at
                the <code>Configuration</code> level, it acts as a default.</p>
               <p>Note that XQuery 3.0 features cannot be used with XQuery Update.</p>
               <p>XQuery 3.0 is supported only in Saxon EE.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XSD_VERSION"><code>XSD_VERSION</code></a></p>
               <p>http://saxon.sf.net/feature/xsd-version</p>
            </td>
            <td valign="top">
               <p>This property determines the version of XML Schema used by the Configuration. The
                default is XSD 1.0. 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.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XSLT_INITIAL_MODE"><code>XSLT_INITIAL_MODE</code></a></p>
               <p>http://saxon.sf.net/feature/initialMode</p>
            </td>
            <td valign="top">
               <p>This property indicates the name of a mode within a stylesheet in which execution
            (using template rules) should begin</p>
               <p>This option can be set for a particular XSLT transformation. When the option is set at
                the <code>Configuration</code> (or on a <code>TransformerFactory</code>), it acts as a default.</p>
            </td>
            <td valign="top">
               <p>-im:mode-name</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XSLT_INITIAL_TEMPLATE"><code>XSLT_INITIAL_TEMPLATE</code></a></p>
               <p>http://saxon.sf.net/feature/initialTemplate</p>
            </td>
            <td valign="top">
               <p>This property indicates the name of a named template within a stylesheet where
            execution should begin</p>
               <p>This option can be set for a particular XSLT transformation. When the option is set at
                the <code>Configuration</code> level (or on a <code>TransformerFactory</code>), it acts as a default.</p>
            </td>
            <td valign="top">
               <p>-it:template-name</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XSLT_SCHEMA_AWARE"><code>XSLT_SCHEMA_AWARE</code></a></p>
               <p>http://saxon.sf.net/feature/xsltSchemaAware</p>
            </td>
            <td valign="top">
               <p>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 <code>xsl:import-schema</code> instruction, 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.</p>
               <p>This option can be set for a particular XSLT compilation. When the option is set at
                the <code>Configuration</code> level (or on a <code>TransformerFactory</code>), it acts as a default.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XSLT_STATIC_ERROR_LISTENER_CLASS"><code>XSLT_STATIC_ERROR_LISTENER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/stylesheetErrorListener</p>
            </td>
            <td valign="top">
               <p>The specified class is instantiated to create an <code>ErrorListener</code>,
                and all reports of static errors in a stylesheet will go to this
                <code>ErrorListener</code>.</p>
               <p>This option can be set for a particular XSLT compilation. When the option is set at
                the <code>Configuration</code> level (or on a <code>TransformerFactory</code>), it acts as a default.</p>
               <p>In the absence of this property, the global <code>ErrorListener</code>
                specified as the value of the <a class="bodylink" href="../javadoc/.html#ERROR_LISTENER_CLASS"><code>#ERROR_LISTENER_CLASS</code></a> property is used.</p>
            </td>
            <td valign="top">
               <p/>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XSLT_STATIC_URI_RESOLVER_CLASS"><code>XSLT_STATIC_URI_RESOLVER_CLASS</code></a></p>
               <p>http://saxon.sf.net/feature/stylesheetURIResolver</p>
            </td>
            <td valign="top">
               <p>This property defines a <code>URIResolver</code> used when dereferencing the URIs
                that appear in the <code>href</code> attributes of the <code>xsl:include</code> and
                    <code>xsl:import</code> declarations. Note that this defaults to the setting of
                the global <code>URI_RESOLVER</code> property.</p>
               <p>This option can be set for a particular XSLT compilation. When the option is set at
                the <code>Configuration</code> level (or on a <code>TransformerFactory</code>), it acts as a default.</p>
               <p>In the absence of this property, the global <code>URIResolver</code>
                specified as the value of the <a class="bodylink" href="../javadoc/.html#URI_RESOLVER_CLASS"><code>#URI_RESOLVER_CLASS</code></a> property is used.</p>
            </td>
            <td valign="top">
               <p>-r:classname</p>
            </td>
         </tr>
         <tr>
            <td valign="top">
               <p><a class="bodylink"
                     href="../javadoc/net/sf/saxon/lib/FeatureKeys.html#XSLT_VERSION"><code>XSLT_VERSION</code></a></p>
               <p>http://saxon.sf.net/feature/xsltVersion</p>
            </td>
            <td valign="top">
               <p>This property determines the version of XSLT to be supported by default</p>
               <p>XSLT 3.0 is supported only in Saxon EE. If no value is specified for the property,
            an XSLT 2.0 or XSLT 3.0 processor is used depending on the value of the <code>version</code>
            attribute of the <code>xsl:stylesheet</code> element.</p>
            </td>
            <td valign="top">
               <p>-xsltversion:(2.0|3.0)</p>
            </td>
         </tr>
      </table>
      <table width="100%">
         <tr>
            <td>
               <p align="right"/>
            </td>
         </tr>
      </table>
   </body>
</html>