<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Processor</title> <meta name="keywords" content="Saxon.Api.Processor class"> <link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style"> </head> <body> <div style="width:20%; float:left; background-color:#c1cede; overflow:auto; height:100%"> <h2>Saxon.Api</h2> <div style="position:relative; height:4pt"> <p>Class <a href="DocumentBuilder.html">DocumentBuilder</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="DomDestination.html">DomDestination</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="DynamicContext.html">DynamicContext</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="DynamicError.html">DynamicError</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="EmptyEnumerator.html">EmptyEnumerator</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="ExtensionFunctionCall.html">ExtensionFunctionCall</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="ExtensionFunctionDefinition.html">ExtensionFunctionDefinition</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="NullDestination.html">NullDestination</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="Processor.html">Processor</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="QName.html">QName</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="SchemaManager.html">SchemaManager</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="SchemaValidator.html">SchemaValidator</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="Serializer.html">Serializer</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="StaticContext.html">StaticContext</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="StaticError.html">StaticError</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="TextWriterDestination.html">TextWriterDestination</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XPathCompiler.html">XPathCompiler</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XPathExecutable.html">XPathExecutable</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XPathSelector.html">XPathSelector</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XQueryCompiler.html">XQueryCompiler</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XQueryEvaluator.html">XQueryEvaluator</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XQueryExecutable.html">XQueryExecutable</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmAnyFunctionType.html">XdmAnyFunctionType</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmAnyItemType.html">XdmAnyItemType</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmAnyNodeType.html">XdmAnyNodeType</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmAtomicType.html">XdmAtomicType</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmAtomicValue.html">XdmAtomicValue</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmDestination.html">XdmDestination</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmEmptySequence.html">XdmEmptySequence</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmFunctionItem.html">XdmFunctionItem</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmItem.html">XdmItem</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmItemType.html">XdmItemType</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmNode.html">XdmNode</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmNodeKind.html">XdmNodeKind</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmSequenceType.html">XdmSequenceType</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XdmValue.html">XdmValue</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XmlDestination.html">XmlDestination</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XsltCompiler.html">XsltCompiler</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XsltExecutable.html">XsltExecutable</a></p> </div> <div style="position:relative; height:4pt"> <p>Class <a href="XsltTransformer.html">XsltTransformer</a></p> </div> <div style="position:relative; height:4pt"> <p>Enum <a href="RecoveryPolicy.html">RecoveryPolicy</a></p> </div> <div style="position:relative; height:4pt"> <p>Enum <a href="SchemaValidationMode.html">SchemaValidationMode</a></p> </div> <div style="position:relative; height:4pt"> <p>Enum <a href="TreeModel.html">TreeModel</a></p> </div> <div style="position:relative; height:4pt"> <p>Enum <a href="WhitespacePolicy.html">WhitespacePolicy</a></p> </div> <div style="position:relative; height:4pt"> <p>Enum <a href="XdmAxis.html">XdmAxis</a></p> </div> <div style="position:relative; height:4pt"> <p>Interface <a href="IMessageListener.html">IMessageListener</a></p> </div> <div style="position:relative; height:4pt"> <p>Interface <a href="IQueryResolver.html">IQueryResolver</a></p> </div> <div style="position:relative; height:4pt"> <p>Interface <a href="IResultDocumentHandler.html">IResultDocumentHandler</a></p> </div> <div style="position:relative; height:4pt"> <p>Interface <a href="IXdmEnumerator.html">IXdmEnumerator</a></p> </div> <div style="position:relative; height:4pt"> <p>Interface <a href="IXmlLocation.html">IXmlLocation</a></p> </div> <div style="position:relative; height:4pt"> <p>Interface <a href="SchemaResolver.html">SchemaResolver</a></p> </div> </div> <div style="width:5%; float:left; background-color:#e4eef0; overflow:auto; height:100%"> </div> <div style="float:left; width:75%; overflow:auto; height:100%;"> <h2><font size="-1">Saxon.Api</font><br>Class Processor </h2> <hr> <dl> <dt><pre>public class Processor</pre></dt> <dt> implements <a href="http://msdn.microsoft.com/en-us/library/system.object(VS.80).aspx">object</a></dt> </dl> <dl> <dd> <p> The Processor class serves three purposes: it allows global Saxon configuration options to be set; it acts as a factory for generating XQuery, XPath, and XSLT compilers; and it owns certain shared resources such as the Saxon NamePool and compiled schemas. This is the first object that a Saxon application should create. Once established, a Processor may be used in multiple threads. </p> </dd> </dl> <hr><a name="constructor_summary"></a><table border="1" width="100%" cellpadding="3" cellspacing="0" summary=""> <tr border="#ccccff" class="TableHeadingColor"> <th align="left" colspan="2"><font size="+2"><b>Constructor Summary</b></font></th> </tr> <tr bgcolor="white" class="TableRowColor"> <td><code><b><a href="#Processor()">Processor</a></b>()</code><p> Create a new Processor. This Processor will have capabilities that depend on the version of the software that has been loaded, and on the features that have been licensed. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td><code><b><a href="#Processor(bool)">Processor</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.boolean(VS.80).aspx">bool</a> licensedEdition)</code><p> Create a Processor. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td><code><b><a href="#Processor(bool,bool)">Processor</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.boolean(VS.80).aspx">bool</a> licensedEdition, <a href="http://msdn.microsoft.com/en-us/library/system.boolean(VS.80).aspx">bool</a> loadLocally)</code><p> Create a Processor. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td><code><b><a href="#Processor(System.IO.Stream)">Processor</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.io.stream(VS.80).aspx">System.IO.Stream</a> configurationFile)</code><p> Create a Processor, based on configuration information supplied in a configuration file. </p> </td> </tr> </table> <a name="property_summary"></a><table border="1" width="100%" cellpadding="3" cellspacing="0" summary=""> <tr border="#ccccff" class="TableHeadingColor"> <th align="left" colspan="2"><font size="+2"><b>Property Summary</b></font></th> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a></code></td> <td><code><b><a href="#ProductTitle">ProductTitle</a></b></code><p> Get the full name of the Saxon product version implemented by this Processor </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a></code></td> <td><code><b><a href="#ProductVersion">ProductVersion</a></b></code><p> Get the Saxon product version number (for example, "9.2.0.2") </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a></code></td> <td><code><b><a href="#Edition">Edition</a></b></code><p> Get the Saxon product edition (for example, "EE" for Enterprise Edition) </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="http://msdn.microsoft.com/en-us/library/system.boolean(VS.80).aspx">bool</a></code></td> <td><code><b><a href="#IsSchemaAware">IsSchemaAware</a></b></code><p> Indicates whether the Processor is schema-aware. In Saxon 9.2, returns true if using Saxon Enterprise Edition. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="SchemaManager.html">SchemaManager</a></code></td> <td><code><b><a href="#SchemaManager">SchemaManager</a></b></code><p> Gets the SchemaManager for the Processor. Returns null if the Processor is not schema-aware. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> XmlResolver</code></td> <td><code><b><a href="#XmlResolver">XmlResolver</a></b></code><p> An XmlResolver, which will be used while compiling and running queries, XPath expressions, and stylesheets, if no other XmlResolver is nominated </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="http://msdn.microsoft.com/en-us/library/system.decimal(VS.80).aspx">decimal</a></code></td> <td><code><b><a href="#XmlVersion">XmlVersion</a></b></code><p> The XML version used in this <code>Processor</code> (for example, this determines what characters are permitted in a name) </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="../../../javadoc/net/sf/saxon/Configuration.html">net.sf.saxon.Configuration</a></code></td> <td><code><b><a href="#Implementation">Implementation</a></b></code><p> The underlying Configuration object in the Saxon implementation </p> </td> </tr> </table> <a name="method_summary"></a><table border="1" width="100%" cellpadding="3" cellspacing="0" summary=""> <tr border="#ccccff" class="TableHeadingColor"> <th align="left" colspan="2"><font size="+2"><b>Method Summary</b></font></th> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="DocumentBuilder.html">DocumentBuilder</a></code></td> <td><code><b><a href="#NewDocumentBuilder()">NewDocumentBuilder</a></b>()</code><p> Create a new <code>DocumentBuilder</code>, which may be used to build XDM documents from a variety of sources. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="XQueryCompiler.html">XQueryCompiler</a></code></td> <td><code><b><a href="#NewXQueryCompiler()">NewXQueryCompiler</a></b>()</code><p> Create a new XQueryCompiler, which may be used to compile XQuery queries. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="XsltCompiler.html">XsltCompiler</a></code></td> <td><code><b><a href="#NewXsltCompiler()">NewXsltCompiler</a></b>()</code><p> Create a new XsltCompiler, which may be used to compile XSLT stylesheets. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="XPathCompiler.html">XPathCompiler</a></code></td> <td><code><b><a href="#NewXPathCompiler()">NewXPathCompiler</a></b>()</code><p> Create a new XPathCompiler, which may be used to compile XPath expressions. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> void</code></td> <td><code><b><a href="#RegisterCollection(System.Uri,System.Collections.IEnumerable)">RegisterCollection</a></b>(System.Uri collectionUri, System.Collections.IEnumerable contents)</code><p> Register a named collection. A collection is identified by a URI (the collection URI), and its content is represented by an <code>IEnumerable</code> that enumerates the contents of the collection. The values delivered by this enumeration are Uri values, which can be mapped to nodes using the registered <code>XmlResolver</code>. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> void</code></td> <td><code><b><a href="#RegisterExtensionFunction(Saxon.Api.ExtensionFunctionDefinition)">RegisterExtensionFunction</a></b>(<a href="ExtensionFunctionDefinition.html">ExtensionFunctionDefinition</a> function)</code><p> Register an extension function with the Processor </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> void</code></td> <td><code><b><a href="#WriteXdmValue(Saxon.Api.XdmValue,Saxon.Api.XmlDestination)">WriteXdmValue</a></b>(<a href="XdmValue.html">XdmValue</a> sequence, <a href="XmlDestination.html">XmlDestination</a> destination)</code><p> Copy an XdmValue to an XmlDestination </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> void</code></td> <td><code><b><a href="#SetProperty(string,string)">SetProperty</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> name, <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> value)</code><p> Set a configuration property </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">String</a></code></td> <td><code><b><a href="#GetProperty(string)">GetProperty</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> name)</code><p> Get the value of a configuration property </p> </td> </tr> </table> <a name="constructor_detail"></a><table border="1" width="100%" cellpadding="3" cellspacing="0" summary=""> <tr border="#ccccff" class="TableHeadingColor"> <th align="left" colspan="2"><font size="+2"><b>Constructor Detail</b></font></th> </tr> </table><a name="Processor()"></a><h3>Processor</h3><pre>public <b>Processor</b>()</pre><dl> <dd> <p> Create a new Processor. This Processor will have capabilities that depend on the version of the software that has been loaded, and on the features that have been licensed. </p> </dd> </dl> <hr><a name="Processor(bool)"></a><h3>Processor</h3><pre>public <b>Processor</b>(<a href="http://msdn.microsoft.com/en-us/library/system.boolean(VS.80).aspx">bool</a> licensedEdition)</pre><dl> <dd> <p> Create a Processor. </p><b>Parameters:</b><dl> <dt><code>licensedEdition</code> - </dt> <dd>Set to true if the Processor is to use a licensed edition of Saxon (that is, Saxon-PE or Saxon-EE). If true, the Processor will attempt to enable the capabilities of the licensed edition of Saxon, according to the version of the software that is loaded, and will verify the license key. If false, the Processor will load a default Configuration that gives restricted capability and does not require a license, regardless of which version of the software is actually being run. </dd> </dl> </dd> </dl> <hr><a name="Processor(bool,bool)"></a><h3>Processor</h3><pre>public <b>Processor</b>(<a href="http://msdn.microsoft.com/en-us/library/system.boolean(VS.80).aspx">bool</a> licensedEdition, <a href="http://msdn.microsoft.com/en-us/library/system.boolean(VS.80).aspx">bool</a> loadLocally)</pre><dl> <dd> <p> Create a Processor. </p><b>Parameters:</b><dl> <dt><code>licensedEdition</code> - </dt> <dd>Set to true if the Processor is to use a licensed edition of Saxon (that is, Saxon-PE or Saxon-EE). If true, the Processor will attempt to enable the capabilities of the licensed edition of Saxon, according to the version of the software that is loaded, and will verify the license key. If false, the Processor will load a default Configuration that gives restricted capability and does not require a license, regardless of which version of the software is actually being run. </dd> </dl> <dl> <dt><code>loadLocally</code> - </dt> <dd>This option has no effect at this release.</dd> </dl> </dd> </dl> <hr><a name="Processor(System.IO.Stream)"></a><h3>Processor</h3><pre>public <b>Processor</b>(<a href="http://msdn.microsoft.com/en-us/library/system.io.stream(VS.80).aspx">System.IO.Stream</a> configurationFile)</pre><dl> <dd> <p> Create a Processor, based on configuration information supplied in a configuration file. </p> <p> Not fully supported in this release: for experimental use only. </p><b>Parameters:</b><dl> <dt><code>configurationFile</code> - </dt> <dd>A stream holding the text of the XML configuration file. Details of the file format can be found in the Saxon documentation. </dd> </dl> </dd> </dl> <hr><a name="property_detail"></a><table border="1" width="100%" cellpadding="3" cellspacing="0" summary=""> <tr border="#ccccff" class="TableHeadingColor"> <th align="left" colspan="2"><font size="+2"><b>Property Detail</b></font></th> </tr> </table><a name="ProductTitle"></a><h3>ProductTitle</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> <b>ProductTitle</b> {get; }</pre><dl> <dd> <p> Get the full name of the Saxon product version implemented by this Processor </p> </dd> </dl> <hr><a name="ProductVersion"></a><h3>ProductVersion</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> <b>ProductVersion</b> {get; }</pre><dl> <dd> <p> Get the Saxon product version number (for example, "9.2.0.2") </p> </dd> </dl> <hr><a name="Edition"></a><h3>Edition</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> <b>Edition</b> {get; }</pre><dl> <dd> <p> Get the Saxon product edition (for example, "EE" for Enterprise Edition) </p> </dd> </dl> <hr><a name="IsSchemaAware"></a><h3>IsSchemaAware</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.boolean(VS.80).aspx">bool</a> <b>IsSchemaAware</b> {get; }</pre><dl> <dd> <p> Indicates whether the Processor is schema-aware. In Saxon 9.2, returns true if using Saxon Enterprise Edition. </p> <p> Deprecated since Saxon 9.2; schema-awareness is not directly a property of a Processor any more. Use the Edition property to determine which Saxon edition is in use. </p> </dd> </dl> <hr><a name="SchemaManager"></a><h3>SchemaManager</h3><pre>public <a href="SchemaManager.html">SchemaManager</a> <b>SchemaManager</b> {get; }</pre><dl> <dd> <p> Gets the SchemaManager for the Processor. Returns null if the Processor is not schema-aware. </p> </dd> </dl> <hr><a name="XmlResolver"></a><h3>XmlResolver</h3><pre>public XmlResolver <b>XmlResolver</b> {get; set; }</pre><dl> <dd> <p> An XmlResolver, which will be used while compiling and running queries, XPath expressions, and stylesheets, if no other XmlResolver is nominated </p> <p>By default an <code>XmlUrlResolver</code> is used. This means that the responsibility for resolving and dereferencing URIs rests with the .NET platform, not with the GNU Classpath. </p> <p>When Saxon invokes a user-written <code>XmlResolver</code>, the <code>GetEntity</code> method may return any of: a <code>System.IO.Stream</code>; a <code>System.IO.TextReader</code>; or a <code>java.xml.transform.Source</code>. </p> </dd> </dl> <hr><a name="XmlVersion"></a><h3>XmlVersion</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.decimal(VS.80).aspx">decimal</a> <b>XmlVersion</b> {get; set; }</pre><dl> <dd> <p> The XML version used in this <code>Processor</code> (for example, this determines what characters are permitted in a name) </p> <p> The value must be 1.0 or 1.1, as a <code>decimal</code>. The default version is currently 1.0, but may change in the future. </p> </dd> </dl> <hr><a name="Implementation"></a><h3>Implementation</h3><pre>public <a href="../../../javadoc/net/sf/saxon/Configuration.html">net.sf.saxon.Configuration</a> <b>Implementation</b> {get; }</pre><dl> <dd> <p> The underlying Configuration object in the Saxon implementation </p> <p>This property provides access to internal methods in the Saxon engine that are not specifically exposed in the .NET API. In general these methods should be considered to be less stable than the classes in the Saxon.Api namespace. </p> <p>The internal methods follow Java naming conventions rather than .NET conventions. </p> <p>Information about the returned object (and the objects it provides access to) is included in the Saxon JavaDoc docmentation, available <link href="http://www.saxonica.com/documentation/javadoc/index.html">online. </p> </dd> </dl> <hr><a name="method_detail"></a><table border="1" width="100%" cellpadding="3" cellspacing="0" summary=""> <tr border="#ccccff" class="TableHeadingColor"> <th align="left" colspan="2"><font size="+2"><b>Method Detail</b></font></th> </tr> </table><a name="NewDocumentBuilder()"></a><h3>NewDocumentBuilder</h3><pre>public <a href="DocumentBuilder.html">DocumentBuilder</a> <b>NewDocumentBuilder</b>()</pre><dl> <dd> <p> Create a new <code>DocumentBuilder</code>, which may be used to build XDM documents from a variety of sources. </p> <dl> <dt>returns</dt> <dd>A new <code>DocumentBuilder</code> </dd> </dl> </dd> </dl> <hr><a name="NewXQueryCompiler()"></a><h3>NewXQueryCompiler</h3><pre>public <a href="XQueryCompiler.html">XQueryCompiler</a> <b>NewXQueryCompiler</b>()</pre><dl> <dd> <p> Create a new XQueryCompiler, which may be used to compile XQuery queries. </p> <p> The returned XQueryCompiler retains a live link to the Processor, and may be affected by subsequent changes to the Processor. </p> <dl> <dt>returns</dt> <dd>A new XQueryCompiler</dd> </dl> </dd> </dl> <hr><a name="NewXsltCompiler()"></a><h3>NewXsltCompiler</h3><pre>public <a href="XsltCompiler.html">XsltCompiler</a> <b>NewXsltCompiler</b>()</pre><dl> <dd> <p> Create a new XsltCompiler, which may be used to compile XSLT stylesheets. </p> <p> The returned XsltCompiler retains a live link to the Processor, and may be affected by subsequent changes to the Processor. </p> <dl> <dt>returns</dt> <dd>A new XsltCompiler</dd> </dl> </dd> </dl> <hr><a name="NewXPathCompiler()"></a><h3>NewXPathCompiler</h3><pre>public <a href="XPathCompiler.html">XPathCompiler</a> <b>NewXPathCompiler</b>()</pre><dl> <dd> <p> Create a new XPathCompiler, which may be used to compile XPath expressions. </p> <p> The returned XPathCompiler retains a live link to the Processor, and may be affected by subsequent changes to the Processor. </p> <dl> <dt>returns</dt> <dd>A new XPathCompiler</dd> </dl> </dd> </dl> <hr><a name="RegisterCollection(System.Uri,System.Collections.IEnumerable)"></a><h3>RegisterCollection</h3><pre>public void <b>RegisterCollection</b>(System.Uri collectionUri, System.Collections.IEnumerable contents)</pre><dl> <dd> <p> Register a named collection. A collection is identified by a URI (the collection URI), and its content is represented by an <code>IEnumerable</code> that enumerates the contents of the collection. The values delivered by this enumeration are Uri values, which can be mapped to nodes using the registered <code>XmlResolver</code>. </p> <p>Collections should be stable: that is, two calls to retrieve the same collection URI should return the same sequence of document URIs. This requirement is imposed by the W3C specifications, but in the case of a user-defined collection it is not enforced by the Saxon product. </p> <p>A collection may be "unregistered" by providing null as the value of the contents argument. A collection may be replaced by specifying the URI of an existing collection. </p> <p>Collections registered with a processor are available to all queries and stylesheets running under the control of that processor. Collections should not normally be registered while queries and transformations are in progress. </p> <b>Parameters:</b><dl> <dt><code>collectionUri</code> - </dt> <dd>The URI used to identify the collection in a call of the XPath <code>collection()</code> function. The default collection is registered by supplying null as the value of this argument (this is the collection returned when the XPath <code>collection()</code> function is called with no arguments). </dd> </dl> <dl> <dt><code>contents</code> - </dt> <dd>An enumerable object that represents the contents of the collection, as a sequence of document URIs. The enumerator returned by this IEnumerable object must return instances of the Uri class. </dd> </dl> </dd> </dl> <hr><a name="RegisterExtensionFunction(Saxon.Api.ExtensionFunctionDefinition)"></a><h3>RegisterExtensionFunction</h3><pre>public void <b>RegisterExtensionFunction</b>(<a href="ExtensionFunctionDefinition.html">ExtensionFunctionDefinition</a> function)</pre><dl> <dd> <p> Register an extension function with the Processor </p><b>Parameters:</b><dl> <dt><code>function</code> - </dt> <dd> An object that defines the extension function, including its name, arity, arguments types, and a reference to the class that implements the extension function call. </dd> </dl> </dd> </dl> <hr><a name="WriteXdmValue(Saxon.Api.XdmValue,Saxon.Api.XmlDestination)"></a><h3>WriteXdmValue</h3><pre>public void <b>WriteXdmValue</b>(<a href="XdmValue.html">XdmValue</a> sequence, <a href="XmlDestination.html">XmlDestination</a> destination)</pre><dl> <dd> <p> Copy an XdmValue to an XmlDestination </p> <p> This method can be used to copy any kind of <code>XdmValue</code> to any kind of <code>XdmDestination</code>. The supplied <code>XdmValue</code> is first converted to an XML document according to the rules of the XSLT/XQuery serialization specification (for example, if the <code>XdmValue</code> is a sequence of atomic values, they will be turned in a text node in which the values are converted to strings and separated by single spaces). The resulting document is then written to the supplied <code>XmlDestination</code>. </p><b>Parameters:</b><dl> <dt><code>sequence</code> - </dt> <dd>The value to be written</dd> </dl> <dl> <dt><code>destination</code> - </dt> <dd>The destination to which the value should be written</dd> </dl> </dd> </dl> <hr><a name="SetProperty(string,string)"></a><h3>SetProperty</h3><pre>public void <b>SetProperty</b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> name, <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> value)</pre><dl> <dd> <p> Set a configuration property </p> <p>This method provides the ability to set named properties of the configuration. The property names are set as strings, whose values can be found in the Java class <code>net.sf.saxon.FeatureKeys</code>. The property values are always strings. Properties whose values are other types are not available via this interface: however all properties have an effective equivalent whose value is a string. Note that on/off properties are set using the strings "true" and "false". </p> <p> <i>Method added in Saxon 9.1</i> </p> <b>Parameters:</b><dl> <dt><code>name</code> - </dt> <dd>The property name</dd> </dl> <dl> <dt><code>value</code> - </dt> <dd>The property value</dd> </dl> </dd> </dl> <hr><a name="GetProperty(string)"></a><h3>GetProperty</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">String</a> <b>GetProperty</b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> name)</pre><dl> <dd> <p> Get the value of a configuration property </p> <p>This method provides the ability to get named properties of the configuration. The property names are supplied as strings, whose values can be found in the Java class <code>net.sf.saxon.FeatureKeys</code>. The property values are always returned as strings. Properties whose values are other types are returned by converting the value to a string. Note that on/off properties are returned using the strings "true" and "false". </p> <p> <i>Method added in Saxon 9.1</i> </p> <b>Parameters:</b><dl> <dt><code>name</code> - </dt> <dd>The property name</dd> </dl> <dl> <dt>returns</dt> <dd>The property value, as a string; or null if the property is unset.</dd> </dl> </dd> </dl> <hr> </div> </body> </html>