<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>QName</title> <meta name="keywords" content="Saxon.Api.QName 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 QName </h2> <hr> <dl> <dt><pre>public class QName</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 QName class represents an instance of xs:QName, as defined in the XPath 2.0 data model. Internally, it has three components, a namespace URI, a local name, and a prefix. The prefix is intended to be used only when converting the value back to a string. </p> <p> Note that a QName is not itself an <code>XdmItem</code> in this model; however it can be wrapped in an XdmItem. </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="#QName(string)">QName</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> local)</code><p> Construct a QName representing a name in no namespace </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td><code><b><a href="#QName(string,string)">QName</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> uri, <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> lexical)</code><p> Construct a QName using a namespace URI and a lexical representation. The lexical representation may be a local name on its own, or it may be in the form <code>prefix:local-name</code> </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td><code><b><a href="#QName(string,string,string)">QName</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> prefix, <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> uri, <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> local)</code><p> Construct a QName using a namespace prefix, a namespace URI, and a local name (in that order). </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td><code><b><a href="#QName(string,Saxon.Api.XdmNode)">QName</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> lexicalQName, <a href="XdmNode.html">XdmNode</a> element)</code><p> Construct a QName from a lexical QName, supplying an element node whose in-scope namespaces are to be used to resolve any prefix contained in the QName. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td><code><b><a href="#QName(System.Xml.XmlQualifiedName)">QName</a></b>(System.Xml.XmlQualifiedName qualifiedName)</code><p> Construct a <code>QName</code> from an <code>XmlQualifiedName</code> (as defined in the <code>System.Xml</code> package). </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%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#XS_STRING">XS_STRING</a></b></code></td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#XS_INTEGER">XS_INTEGER</a></b></code></td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#XS_DOUBLE">XS_DOUBLE</a></b></code></td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#XS_FLOAT">XS_FLOAT</a></b></code></td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#XS_DECIMAL">XS_DECIMAL</a></b></code></td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#XS_BOOLEAN">XS_BOOLEAN</a></b></code></td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#XS_ANYURI">XS_ANYURI</a></b></code></td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#XS_QNAME">XS_QNAME</a></b></code></td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#XS_UNTYPED_ATOMIC">XS_UNTYPED_ATOMIC</a></b></code></td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#XDT_UNTYPED_ATOMIC">XDT_UNTYPED_ATOMIC</a></b></code></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="#Prefix">Prefix</a></b></code><p>The prefix of the QName. This plays no role in operations such as comparison of QNames for equality, but is retained (as specified in XPath) so that a string representation can be reconstructed. </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="#Uri">Uri</a></b></code><p>The namespace URI of the QName. Returns "" (the zero-length string) if the QName is not in a namespace. </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="#LocalName">LocalName</a></b></code><p>The local part of the QName</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="#ClarkName">ClarkName</a></b></code><p>The expanded name, as a string using the notation devised by James Clark. If the name is in a namespace, the resulting string takes the form <code>{uri}local</code>. Otherwise, the value is the local part of the name. </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%">static<code> <a href="QName.html">QName</a></code></td> <td><code><b><a href="#FromClarkName(string)">FromClarkName</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> expandedName)</code><p> Factory method to construct a QName from a string containing the expanded QName in Clark notation, that is, <code>{uri}local</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="#Register(Saxon.Api.Processor)">Register</a></b>(<a href="Processor.html">Processor</a> processor)</code><p> Register a QName with the <code>Processor</code>. This makes comparison faster when the QName is compared with others that are also registered with the <code>Processor</code>. </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="#IsValid(Saxon.Api.Processor)">IsValid</a></b>(<a href="Processor.html">Processor</a> processor)</code><p> Validate the QName against the XML 1.0 or XML 1.1 rules for valid names. </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="#ToString()">ToString</a></b>()</code><p> Convert the value to a string. The resulting string is the lexical form of the QName, using the original prefix if there was one. </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.int32(VS.80).aspx">int</a></code></td> <td><code><b><a href="#GetHashCode()">GetHashCode</a></b>()</code><p> Get a hash code for the QName, to support equality matching. This supports the semantics of equality, which considers only the namespace URI and local name, and not the prefix. </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="#Equals(object)">Equals</a></b>(<a href="http://msdn.microsoft.com/en-us/library/system.object(VS.80).aspx">object</a> other)</code><p> Test whether two QNames are equal. This supports the semantics of equality, which considers only the namespace URI and local name, and not the prefix. </p> </td> </tr> <tr bgcolor="white" class="TableRowColor"> <td align="right" valign="top" width="1%"><code> XmlQualifiedName</code></td> <td><code><b><a href="#ToXmlQualifiedName()">ToXmlQualifiedName</a></b>()</code><p> Convert the value to an <code>XmlQualifiedName</code> (as defined in the <code>System.Xml</code> package) </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="QName(string)"></a><h3>QName</h3><pre>public <b>QName</b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> local)</pre><dl> <dd> <p> Construct a QName representing a name in no namespace </p> <p> This constructor does not check that the components of the QName are lexically valid. </p><b>Parameters:</b><dl> <dt><code>local</code> - </dt> <dd>The local part of the name </dd> </dl> </dd> </dl> <hr><a name="QName(string,string)"></a><h3>QName</h3><pre>public <b>QName</b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> uri, <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> lexical)</pre><dl> <dd> <p> Construct a QName using a namespace URI and a lexical representation. The lexical representation may be a local name on its own, or it may be in the form <code>prefix:local-name</code> </p> <p> This constructor does not check that the components of the QName are lexically valid. </p><b>Parameters:</b><dl> <dt><code>uri</code> - </dt> <dd>The namespace URI. Use either the string "" or null for names that are not in any namespace. </dd> </dl> <dl> <dt><code>lexical</code> - </dt> <dd>Either the local part of the name, or the prefix and local part in the format <code>prefix:local</code> </dd> </dl> </dd> </dl> <hr><a name="QName(string,string,string)"></a><h3>QName</h3><pre>public <b>QName</b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> prefix, <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> uri, <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> local)</pre><dl> <dd> <p> Construct a QName using a namespace prefix, a namespace URI, and a local name (in that order). </p> <p> This constructor does not check that the components of the QName are lexically valid. </p><b>Parameters:</b><dl> <dt><code>prefix</code> - </dt> <dd>The prefix of the name. Use either the string "" or null for names that have no prefix (that is, they are in the default namespace) </dd> </dl> <dl> <dt><code>uri</code> - </dt> <dd>The namespace URI. Use either the string "" or null for names that are not in any namespace. </dd> </dl> <dl> <dt><code>local</code> - </dt> <dd>The local part of the name</dd> </dl> </dd> </dl> <hr><a name="QName(string,Saxon.Api.XdmNode)"></a><h3>QName</h3><pre>public <b>QName</b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> lexicalQName, <a href="XdmNode.html">XdmNode</a> element)</pre><dl> <dd> <p> Construct a QName from a lexical QName, supplying an element node whose in-scope namespaces are to be used to resolve any prefix contained in the QName. </p> <p>This constructor checks that the components of the QName are lexically valid. </p> <p>If the lexical QName has no prefix, the name is considered to be in the default namespace, as defined by <code>xmlns="..."</code>. </p> <p>If the prefix of the lexical QName is not in scope, returns null.</p> <b>Parameters:</b><dl> <dt><code>lexicalQName</code> - </dt> <dd>The lexical QName, in the form <code>prefix:local</code> or simply <code>local</code>. </dd> </dl> <dl> <dt><code>element</code> - </dt> <dd>The element node whose in-scope namespaces are to be used to resolve the prefix part of the lexical QName. </dd> </dl> </dd> </dl> <hr><a name="QName(System.Xml.XmlQualifiedName)"></a><h3>QName</h3><pre>public <b>QName</b>(System.Xml.XmlQualifiedName qualifiedName)</pre><dl> <dd> <p> Construct a <code>QName</code> from an <code>XmlQualifiedName</code> (as defined in the <code>System.Xml</code> package). </p> <p> Note that an <code>XmlQualifiedName</code> does not contain any prefix, so the result will always have a prefix of "" </p><b>Parameters:</b><dl> <dt><code>qualifiedName</code> - </dt> <dd>The XmlQualifiedName</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="XS_STRING"></a><h3>XS_STRING</h3><pre>public static readonly <a href="QName.html">QName</a> <b>XS_STRING</b> {}</pre><dl> <dd></dd> </dl> <hr><a name="XS_INTEGER"></a><h3>XS_INTEGER</h3><pre>public static readonly <a href="QName.html">QName</a> <b>XS_INTEGER</b> {}</pre><dl> <dd></dd> </dl> <hr><a name="XS_DOUBLE"></a><h3>XS_DOUBLE</h3><pre>public static readonly <a href="QName.html">QName</a> <b>XS_DOUBLE</b> {}</pre><dl> <dd></dd> </dl> <hr><a name="XS_FLOAT"></a><h3>XS_FLOAT</h3><pre>public static readonly <a href="QName.html">QName</a> <b>XS_FLOAT</b> {}</pre><dl> <dd></dd> </dl> <hr><a name="XS_DECIMAL"></a><h3>XS_DECIMAL</h3><pre>public static readonly <a href="QName.html">QName</a> <b>XS_DECIMAL</b> {}</pre><dl> <dd></dd> </dl> <hr><a name="XS_BOOLEAN"></a><h3>XS_BOOLEAN</h3><pre>public static readonly <a href="QName.html">QName</a> <b>XS_BOOLEAN</b> {}</pre><dl> <dd></dd> </dl> <hr><a name="XS_ANYURI"></a><h3>XS_ANYURI</h3><pre>public static readonly <a href="QName.html">QName</a> <b>XS_ANYURI</b> {}</pre><dl> <dd></dd> </dl> <hr><a name="XS_QNAME"></a><h3>XS_QNAME</h3><pre>public static readonly <a href="QName.html">QName</a> <b>XS_QNAME</b> {}</pre><dl> <dd></dd> </dl> <hr><a name="XS_UNTYPED_ATOMIC"></a><h3>XS_UNTYPED_ATOMIC</h3><pre>public static readonly <a href="QName.html">QName</a> <b>XS_UNTYPED_ATOMIC</b> {}</pre><dl> <dd></dd> </dl> <hr><a name="XDT_UNTYPED_ATOMIC"></a><h3>XDT_UNTYPED_ATOMIC</h3><pre>public static readonly <a href="QName.html">QName</a> <b>XDT_UNTYPED_ATOMIC</b> {}</pre><dl> <dd></dd> </dl> <hr><a name="Prefix"></a><h3>Prefix</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">String</a> <b>Prefix</b> {get; }</pre><dl> <dd> <p>The prefix of the QName. This plays no role in operations such as comparison of QNames for equality, but is retained (as specified in XPath) so that a string representation can be reconstructed. </p> <p> Returns the zero-length string in the case of a QName that has no prefix. </p> </dd> </dl> <hr><a name="Uri"></a><h3>Uri</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">String</a> <b>Uri</b> {get; }</pre><dl> <dd> <p>The namespace URI of the QName. Returns "" (the zero-length string) if the QName is not in a namespace. </p> </dd> </dl> <hr><a name="LocalName"></a><h3>LocalName</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">String</a> <b>LocalName</b> {get; }</pre><dl> <dd> <p>The local part of the QName</p> </dd> </dl> <hr><a name="ClarkName"></a><h3>ClarkName</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">String</a> <b>ClarkName</b> {get; }</pre><dl> <dd> <p>The expanded name, as a string using the notation devised by James Clark. If the name is in a namespace, the resulting string takes the form <code>{uri}local</code>. Otherwise, the value is the local part of the name. </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="FromClarkName(string)"></a><h3>FromClarkName</h3><pre>public static <a href="QName.html">QName</a> <b>FromClarkName</b>(<a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">string</a> expandedName)</pre><dl> <dd> <p> Factory method to construct a QName from a string containing the expanded QName in Clark notation, that is, <code>{uri}local</code> </p> <p> The prefix part of the <code>QName</code> will be set to an empty string. </p><b>Parameters:</b><dl> <dt><code>expandedName</code> - </dt> <dd>The URI in Clark notation: <code>{uri}local</code> if the name is in a namespace, or simply <code>local</code> if not. </dd> </dl> </dd> </dl> <hr><a name="Register(Saxon.Api.Processor)"></a><h3>Register</h3><pre>public void <b>Register</b>(<a href="Processor.html">Processor</a> processor)</pre><dl> <dd> <p> Register a QName with the <code>Processor</code>. This makes comparison faster when the QName is compared with others that are also registered with the <code>Processor</code>. </p> <p> A given <code>QName</code> object can only be registered with one <code>Processor</code>. </p><b>Parameters:</b><dl> <dt><code>processor</code> - </dt> <dd>The Processor in which the name is to be registered.</dd> </dl> </dd> </dl> <hr><a name="IsValid(Saxon.Api.Processor)"></a><h3>IsValid</h3><pre>public <a href="http://msdn.microsoft.com/en-us/library/system.boolean(VS.80).aspx">bool</a> <b>IsValid</b>(<a href="Processor.html">Processor</a> processor)</pre><dl> <dd> <p> Validate the QName against the XML 1.0 or XML 1.1 rules for valid names. </p><b>Parameters:</b><dl> <dt><code>processor</code> - </dt> <dd>The Processor in which the name is to be validated. This determines whether the XML 1.0 or XML 1.1 rules for forming names are used. </dd> </dl> <dl> <dt>returns</dt> <dd>true if the name is valid, false if not</dd> </dl> </dd> </dl> <hr><a name="ToString()"></a><h3>ToString</h3><pre>public override <a href="http://msdn.microsoft.com/en-us/library/system.string(VS.80).aspx">String</a> <b>ToString</b>()</pre><dl> <dd> <p> Convert the value to a string. The resulting string is the lexical form of the QName, using the original prefix if there was one. </p> </dd> </dl> <hr><a name="GetHashCode()"></a><h3>GetHashCode</h3><pre>public override <a href="http://msdn.microsoft.com/en-us/library/system.int32(VS.80).aspx">int</a> <b>GetHashCode</b>()</pre><dl> <dd> <p> Get a hash code for the QName, to support equality matching. This supports the semantics of equality, which considers only the namespace URI and local name, and not the prefix. </p> <p> The algorithm for allocating a hash code does not depend on registering the QName with the <code>Processor</code>. </p> </dd> </dl> <hr><a name="Equals(object)"></a><h3>Equals</h3><pre>public override <a href="http://msdn.microsoft.com/en-us/library/system.boolean(VS.80).aspx">bool</a> <b>Equals</b>(<a href="http://msdn.microsoft.com/en-us/library/system.object(VS.80).aspx">object</a> other)</pre><dl> <dd> <p> Test whether two QNames are equal. This supports the semantics of equality, which considers only the namespace URI and local name, and not the prefix. </p> <p> The result of the function does not depend on registering the QName with the <code>Processor</code>, but is computed more quickly if the QNames have both been registered </p><b>Parameters:</b><dl> <dt><code>other</code> - </dt> <dd>The value to be compared with this QName. If this value is not a QName, the result is always false. Otherwise, it is true if the namespace URI and local name both match. </dd> </dl> </dd> </dl> <hr><a name="ToXmlQualifiedName()"></a><h3>ToXmlQualifiedName</h3><pre>public XmlQualifiedName <b>ToXmlQualifiedName</b>()</pre><dl> <dd> <p> Convert the value to an <code>XmlQualifiedName</code> (as defined in the <code>System.Xml</code> package) </p> <p> Note that this loses the prefix. </p> </dd> </dl> <hr> </div> </body> </html>