Jo Shields a575963da9 Imported Upstream version 3.6.0
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
2014-08-13 10:39:27 +01:00

402 lines
28 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<Type Name="XPathExpression" FullName="System.Xml.XPath.XPathExpression">
<TypeSignature Maintainer="auto" Language="C#" Value="public abstract class XPathExpression" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi abstract beforefieldinit XPathExpression extends System.Object" />
<AssemblyInfo>
<AssemblyName>System.Xml</AssemblyName>
<AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ThreadSafetyStatement>All the dynamic members are not designed to be thread safe. This class cannot be used parallely in multiple thread for XPath evaluation.</ThreadSafetyStatement>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>This class is returned as the result of the <see cref="M:System.Xml.XPath.XPathNavigator.Compile(System.String)" /> method of the <see cref="T:System.Xml.XPath.XPathNavigator" /> class. It is a parameter to the <see cref="Overload:System.Xml.XPath.XPathNavigator.Evaluate" />, <see cref="Overload:System.Xml.XPath.XPathNavigator.Matches" />, <see cref="Overload:System.Xml.XPath.XPathNavigator.Select" />, and <see cref="Overload:System.Xml.XPath.XPathNavigator.SelectSingleNode" /> methods of the <see cref="T:System.Xml.XPath.XPathNavigator" /> class.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Provides a typed class that represents a compiled XPath expression.</para>
</summary>
</Docs>
<Members>
<Member MemberName="AddSort">
<MemberSignature Language="C#" Value="public abstract void AddSort (object expr, System.Collections.IComparer comparer);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void AddSort(object expr, class System.Collections.IComparer comparer) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="expr" Type="System.Object" />
<Parameter Name="comparer" Type="System.Collections.IComparer" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>The <see cref="M:System.Xml.XPath.XPathExpression.AddSort(System.Object,System.Collections.IComparer)" /> method enables users to sort objects by their data type instead of by string or number. The <see cref="T:System.Collections.IComparer" /> object provides an implementation of the <see cref="M:System.Collections.IComparer.Compare(System.Object,System.Object)" /> method that supports sorting on user-defined classes.</para>
<para>In the following example, the books are sorted by ISBN number, where isbn is an object that implements the <see cref="T:System.Collections.IComparer" /> interface.</para>
<code>Dim expression As XPathExpression = navigator.Compile("bookstore/book")
Dim isbn As ISBN = New ISBN()
expression.AddSort("@ISBN", (IComparer)isbn)</code>
<code>XPathExpression expression = navigator.Compile("bookstore/book");
ISBN isbn = new ISBN();
expression.AddSort("@ISBN", (IComparer)isbn);</code>
<para>The following are important notes to consider when using the <see cref="M:System.Xml.XPath.XPathExpression.AddSort(System.Object,System.Collections.IComparer)" /> method.</para>
<list type="bullet">
<item>
<para>The order in which the sorts are added provides the sort key order.</para>
</item>
<item>
<para>If the <see cref="T:System.Xml.XPath.XPathExpression" /> or the sort key requires namespace resolution, you must use the <see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.XmlNamespaceManager)" /> method to provide an <see cref="T:System.Xml.XmlNamespaceManager" /> for namespace resolution.</para>
</item>
<item>
<para>If the <see cref="T:System.Xml.XPath.XPathExpression" /> does not include a prefix, it is assumed that the namespace Uniform Resource Identifier (URI) is the empty namespace. If your XML includes a default namespace, you must still use the <see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.XmlNamespaceManager)" /> method and provide an <see cref="T:System.Xml.XmlNamespaceManager" /> that contains a prefix and namespace URI to handle the default namespace.</para>
</item>
</list>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>When overridden in a derived class, sorts the nodes selected by the XPath expression according to the specified <see cref="T:System.Collections.IComparer" /> object.</para>
</summary>
<param name="expr">
<attribution license="cc4" from="Microsoft" modified="false" />An object representing the sort key. This can be the string value of the node or an <see cref="T:System.Xml.XPath.XPathExpression" /> object with a compiled XPath expression.</param>
<param name="comparer">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Collections.IComparer" /> object that provides the specific data type comparisons for comparing two objects for equivalence. </param>
</Docs>
</Member>
<Member MemberName="AddSort">
<MemberSignature Language="C#" Value="public abstract void AddSort (object expr, System.Xml.XPath.XmlSortOrder order, System.Xml.XPath.XmlCaseOrder caseOrder, string lang, System.Xml.XPath.XmlDataType dataType);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void AddSort(object expr, valuetype System.Xml.XPath.XmlSortOrder order, valuetype System.Xml.XPath.XmlCaseOrder caseOrder, string lang, valuetype System.Xml.XPath.XmlDataType dataType) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="expr" Type="System.Object" />
<Parameter Name="order" Type="System.Xml.XPath.XmlSortOrder" />
<Parameter Name="caseOrder" Type="System.Xml.XPath.XmlCaseOrder" />
<Parameter Name="lang" Type="System.String" />
<Parameter Name="dataType" Type="System.Xml.XPath.XmlDataType" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<list type="bullet">
<item>
<para>The order in which the sorts are added provides the sort key order.</para>
</item>
<item>
<para>If the <see cref="T:System.Xml.XPath.XPathExpression" /> or the sort key requires namespace resolution, you must use the <see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.XmlNamespaceManager)" /> method to provide an <see cref="T:System.Xml.XmlNamespaceManager" /> for namespace resolution.</para>
</item>
<item>
<para>If the <see cref="T:System.Xml.XPath.XPathExpression" /> does not include a prefix, it is assumed that the namespace Uniform Resource Identifier (URI) is the empty namespace. If your XML includes a default namespace, you must still use the <see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.XmlNamespaceManager)" /> method and provide an <see cref="T:System.Xml.XmlNamespaceManager" /> that contains a prefix and namespace URI to handle the default namespace.</para>
</item>
</list>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>When overridden in a derived class, sorts the nodes selected by the XPath expression according to the supplied parameters.</para>
</summary>
<param name="expr">
<attribution license="cc4" from="Microsoft" modified="false" />An object representing the sort key. This can be the string value of the node or an <see cref="T:System.Xml.XPath.XPathExpression" /> object with a compiled XPath expression. </param>
<param name="order">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Xml.XPath.XmlSortOrder" /> value indicating the sort order. </param>
<param name="caseOrder">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Xml.XPath.XmlCaseOrder" /> value indicating how to sort uppercase and lowercase letters.</param>
<param name="lang">
<attribution license="cc4" from="Microsoft" modified="false" />The language to use for comparison. Uses the <see cref="T:System.Globalization.CultureInfo" /> class that can be passed to the <see cref="Overload:System.String.Compare" /> method for the language types, for example, "us-en" for U.S. English. If an empty string is specified, the system environment is used to determine the <see cref="T:System.Globalization.CultureInfo" />. </param>
<param name="dataType">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Xml.XPath.XmlDataType" /> value indicating the sort order for the data type. </param>
</Docs>
</Member>
<Member MemberName="Clone">
<MemberSignature Language="C#" Value="public abstract System.Xml.XPath.XPathExpression Clone ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance class System.Xml.XPath.XPathExpression Clone() cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Xml.XPath.XPathExpression</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>When overridden in a derived class, the <see cref="M:System.Xml.XPath.XPathExpression.Clone" /> method returns a clone of this <see cref="T:System.Xml.XPath.XPathExpression" /> object with the same state as this <see cref="T:System.Xml.XPath.XPathExpression" /> object.</para>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>When overridden in a derived class, returns a clone of this <see cref="T:System.Xml.XPath.XPathExpression" />.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>A new <see cref="T:System.Xml.XPath.XPathExpression" /> object.</para>
</returns>
</Docs>
</Member>
<Member MemberName="Compile">
<MemberSignature Language="C#" Value="public static System.Xml.XPath.XPathExpression Compile (string xpath);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Xml.XPath.XPathExpression Compile(string xpath) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Xml.XPath.XPathExpression</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="xpath" Type="System.String" />
</Parameters>
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>An XPath expression is evaluated to yield one of the following result types.</para>
<list type="bullet">
<item>
<para>
<see cref="F:System.Xml.XPath.XPathResultType.NodeSet" />
</para>
</item>
<item>
<para>
<see cref="F:System.Xml.XPath.XPathResultType.Boolean" />
</para>
</item>
<item>
<para>
<see cref="F:System.Xml.XPath.XPathResultType.Number" />
</para>
</item>
<item>
<para>
<see cref="F:System.Xml.XPath.XPathResultType.String" />
</para>
</item>
</list>
<block subset="none" type="note">
<para>If a user-defined function with an invalid number of arguments (or an unimplemented user-defined function) is specified in the XPath expression, an exception occurs only at run time. User-defined functions are not checked at compile time and exceptions that result from user-defined functions occur only if execution evaluates the expression.</para>
</block>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Compiles the XPath expression specified and returns an <see cref="T:System.Xml.XPath.XPathExpression" /> object representing the XPath expression.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>An <see cref="T:System.Xml.XPath.XPathExpression" /> object.</para>
</returns>
<param name="xpath">
<attribution license="cc4" from="Microsoft" modified="false" />An XPath expression.</param>
</Docs>
</Member>
<Member MemberName="Compile">
<MemberSignature Language="C#" Value="public static System.Xml.XPath.XPathExpression Compile (string xpath, System.Xml.IXmlNamespaceResolver nsResolver);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Xml.XPath.XPathExpression Compile(string xpath, class System.Xml.IXmlNamespaceResolver nsResolver) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Xml.XPath.XPathExpression</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="xpath" Type="System.String" />
<Parameter Name="nsResolver" Type="System.Xml.IXmlNamespaceResolver" />
</Parameters>
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>An XPath expression is evaluated to yield one of the following result types.</para>
<list type="bullet">
<item>
<para>
<see cref="F:System.Xml.XPath.XPathResultType.NodeSet" />
</para>
</item>
<item>
<para>
<see cref="F:System.Xml.XPath.XPathResultType.Boolean" />
</para>
</item>
<item>
<para>
<see cref="F:System.Xml.XPath.XPathResultType.Number" />
</para>
</item>
<item>
<para>
<see cref="F:System.Xml.XPath.XPathResultType.String" />
</para>
</item>
</list>
<block subset="none" type="note">
<para>If a user-defined function with an invalid number of arguments (or an unimplemented user-defined function) is specified in the XPath expression, an exception occurs only at run-time. User-defined functions are not checked at compile time and exceptions resulting from user-defined functions occur only if execution evaluates the expression.</para>
<para />
</block>
<block subset="none" type="note">
<para>It is not possible to compile a <see cref="T:System.Xml.XPath.XPathExpression" /> with a custom context in one step by passing an <see cref="T:System.Xml.Xsl.XsltContext" />, which implements <see cref="T:System.Xml.IXmlNamespaceResolver" />, as an argument to this method. To use a <see cref="T:System.Xml.XPath.XPathExpression" /> with a custom context, you must call the <see cref="Overload:System.Xml.XPath.XPathExpression.SetContext" /> method after compiling the expression.</para>
</block>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Compiles the specified XPath expression, with the <see cref="T:System.Xml.IXmlNamespaceResolver" /> object specified for namespace resolution, and returns an <see cref="T:System.Xml.XPath.XPathExpression" /> object that represents the XPath expression.</para>
</summary>
<returns>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>An <see cref="T:System.Xml.XPath.XPathExpression" /> object.</para>
</returns>
<param name="xpath">
<attribution license="cc4" from="Microsoft" modified="false" />An XPath expression.</param>
<param name="nsResolver">
<attribution license="cc4" from="Microsoft" modified="false" />An object that implements the <see cref="T:System.Xml.IXmlNamespaceResolver" /> interface for namespace resolution.</param>
</Docs>
</Member>
<Member MemberName="Expression">
<MemberSignature Language="C#" Value="public abstract string Expression { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance string Expression" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<value>The string that represents the XPath expression.</value>
<remarks>To be added.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>When overridden in a derived class, gets a string representation of the <see cref="T:System.Xml.XPath.XPathExpression" />.</para>
</summary>
</Docs>
</Member>
<Member MemberName="ReturnType">
<MemberSignature Language="C#" Value="public abstract System.Xml.XPath.XPathResultType ReturnType { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.Xml.XPath.XPathResultType ReturnType" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Xml.XPath.XPathResultType</ReturnType>
</ReturnValue>
<Docs>
<value>An <see cref="T:System.Xml.XPath.XPathResultType" /> value that indicates the return type.</value>
<remarks>The return type varies for each XPath expression and it might be <see cref="F:System.Xml.XPath.XPathResultType.Any" />. For example, the return type of a variable binding expression (e.g. "$foo") can be anything.</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>When overridden in a derived class, gets the result type of the XPath expression.</para>
</summary>
</Docs>
</Member>
<Member MemberName="SetContext">
<MemberSignature Language="C#" Value="public abstract void SetContext (System.Xml.IXmlNamespaceResolver nsResolver);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetContext(class System.Xml.IXmlNamespaceResolver nsResolver) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="nsResolver" Type="System.Xml.IXmlNamespaceResolver" />
</Parameters>
<Docs>
<since version=".NET 2.0" />
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Namespace resolution is supported using classes that implement the <see cref="T:System.Xml.IXmlNamespaceResolver" /> interface, such as the <see cref="T:System.Xml.XmlNamespaceManager" /> class. The <see cref="T:System.Xml.XmlNamespaceManager" /> stores prefix and namespace Uniform Resource Identifier (URI) mappings. If the <see cref="T:System.Xml.XPath.XPathExpression" /> requires namespace resolution, the prefix and namespace URI pair must be added to an object, such as the <see cref="T:System.Xml.XmlNamespaceManager" /> class, which implements the <see cref="T:System.Xml.IXmlNamespaceResolver" /> interface, and the <see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.IXmlNamespaceResolver)" /> method must be called to specify the <see cref="T:System.Xml.IXmlNamespaceResolver" /> interface object to use for namespace resolution.</para>
<para>The following are important notes to consider when using the <see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.IXmlNamespaceResolver)" /> method.</para>
<list type="bullet">
<item>
<para>If the <see cref="T:System.Xml.XPath.XPathExpression" /> does not include a prefix, it is assumed that the namespace URI is the empty namespace. If your XML includes a default namespace, you must still use the <see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.IXmlNamespaceResolver)" /> method and provide an object that contains a prefix and namespace URI to handle the default namespace.</para>
</item>
<item>
<para>You can also supply an <see cref="T:System.Xml.IXmlNamespaceResolver" /> interface object for namespace resolution to the <see cref="M:System.Xml.XPath.XPathExpression.Compile(System.String,System.Xml.IXmlNamespaceResolver)" /> method when you create your <see cref="T:System.Xml.XPath.XPathExpression" /> object.</para>
</item>
<item>
<para>
<see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.IXmlNamespaceResolver)" /> accepts <see cref="T:System.Xml.Xsl.XsltContext" /> as a namespace resolver, so you can implement a custom context and use functions and variables based on <see cref="T:System.Xml.Xsl.IXsltContextFunction" /> and <see cref="T:System.Xml.Xsl.IXsltContextVariable" />. The XPath expression will execute them. For more information, see <format type="text/html"><a href="4772f20e-1e7f-496e-93c2-1484473be555">User Defined Functions and Variables</a></format>.</para>
</item>
</list>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>When overridden in a derived class, specifies the <see cref="T:System.Xml.IXmlNamespaceResolver" /> object to use for namespace resolution.</para>
</summary>
<param name="nsResolver">
<attribution license="cc4" from="Microsoft" modified="false" />An object that implements the <see cref="T:System.Xml.IXmlNamespaceResolver" /> interface to use for namespace resolution.</param>
</Docs>
</Member>
<Member MemberName="SetContext">
<MemberSignature Language="C#" Value="public abstract void SetContext (System.Xml.XmlNamespaceManager nsManager);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetContext(class System.Xml.XmlNamespaceManager nsManager) cil managed" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyVersion>1.0.5000.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="nsManager" Type="System.Xml.XmlNamespaceManager" />
</Parameters>
<Docs>
<remarks>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>Namespace resolution is supported using the <see cref="T:System.Xml.XmlNamespaceManager" /> class which stores prefix and namespace Uniform Resource Identifier (URI) mappings. If the <see cref="T:System.Xml.XPath.XPathExpression" /> requires namespace resolution, the prefix and namespace URI pair must be added to the <see cref="T:System.Xml.XmlNamespaceManager" /> object and the <see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.XmlNamespaceManager)" /> method must be called to specify the <see cref="T:System.Xml.XmlNamespaceManager" /> object to use for namespace resolution.</para>
<para>The following are important notes to consider when using the <see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.XmlNamespaceManager)" /> method.</para>
<list type="bullet">
<item>
<para>If the <see cref="T:System.Xml.XPath.XPathExpression" /> does not include a prefix, it is assumed that the namespace URI is the empty namespace. If your XML includes a default namespace, you must still use the <see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.XmlNamespaceManager)" /> method and provide an <see cref="T:System.Xml.XmlNamespaceManager" /> object that contains a prefix and namespace URI to handle the default namespace.</para>
</item>
<item>
<para>You can also supply an <see cref="T:System.Xml.IXmlNamespaceResolver" /> object for namespace resolution to the <see cref="M:System.Xml.XPath.XPathExpression.Compile(System.String,System.Xml.IXmlNamespaceResolver)" /> method when you create your <see cref="T:System.Xml.XPath.XPathExpression" /> object.</para>
</item>
<item>
<para>
<see cref="M:System.Xml.XPath.XPathExpression.SetContext(System.Xml.IXmlNamespaceResolver)" /> accepts <see cref="T:System.Xml.Xsl.XsltContext" /> as a namespace resolver, so you can implement a custom context and use functions and variables based on <see cref="T:System.Xml.Xsl.IXsltContextFunction" /> and <see cref="T:System.Xml.Xsl.IXsltContextVariable" />. The XPath expression will execute them. For more information, see <format type="text/html"><a href="4772f20e-1e7f-496e-93c2-1484473be555">User Defined Functions and Variables</a></format>.</para>
</item>
</list>
</remarks>
<summary>
<attribution license="cc4" from="Microsoft" modified="false" />
<para>When overridden in a derived class, specifies the <see cref="T:System.Xml.XmlNamespaceManager" /> object to use for namespace resolution.</para>
</summary>
<param name="nsManager">
<attribution license="cc4" from="Microsoft" modified="false" />An <see cref="T:System.Xml.XmlNamespaceManager" /> object to use for namespace resolution. </param>
</Docs>
</Member>
</Members>
</Type>