SeekableXPathNavigator Class

Definition

Provides read-only, random access to data contained in XML documents and enables efficient querying for specified nodes.

public ref class SeekableXPathNavigator abstract : System::Xml::XPath::XPathNavigator
public abstract class SeekableXPathNavigator : System.Xml.XPath.XPathNavigator
type SeekableXPathNavigator = class
    inherit XPathNavigator
Public MustInherit Class SeekableXPathNavigator
Inherits XPathNavigator
Inheritance
SeekableXPathNavigator

Remarks

The SOAP messages passed between parts of the Windows Communication Foundation (WCF) system are handled by various components of the system that must inspect these messages to determine what actions to take in processing them. The XPath engine is a component that queries messages for this purpose and it requires a navigator to read SOAP messages and other XML documents. A navigator provides a cursor that moves from node to node tracking where the XML document is actually being read.

The XPath engine works with a SeekableXPathNavigator, which extends the XPathNavigator class by adding a CurrentPosition property. This property allows positions within the XML document to be saved and loaded quickly without having to clone the navigator, an expensive memory allocation that the XPathNavigator requires for such an operation. The XPath engine must frequently record the position of the cursor in the course of executing queries on XML documents, so the SeekableXPathNavigator provides an important optimization for message processing.

Note that the value of the CurrentPosition property is implementation-specific and may not map to node position or character position. Its value is only meaningful to the SeekableXPathNavigator implementation (and instance) that supplied it.

Constructors

SeekableXPathNavigator()

Initializes a new instance of the SeekableXPathNavigator class.

Properties

BaseURI

When overridden in a derived class, gets the base URI for the current node.

(Inherited from XPathNavigator)
CanEdit

Gets a value that indicates whether the XPathNavigator can edit the underlying XML data.

(Inherited from XPathNavigator)
CurrentPosition

When overridden in a derived class, gets or sets a value associated with the node in the data where the XPath navigator is positioned.

HasAttributes

Gets a value that indicates whether the current node has any attributes.

(Inherited from XPathNavigator)
HasChildren

Gets a value that indicates whether the current node has any child nodes.

(Inherited from XPathNavigator)
InnerXml

Gets or sets the markup representing the child nodes of the current node.

(Inherited from XPathNavigator)
IsEmptyElement

When overridden in a derived class, gets a value that indicates whether the current node is an empty element without an end element tag.

(Inherited from XPathNavigator)
IsNode

Gets a value that indicates if the current node represents an XPath node.

(Inherited from XPathNavigator)
LocalName

When overridden in a derived class, gets the Name of the current node without any namespace prefix.

(Inherited from XPathNavigator)
Name

When overridden in a derived class, gets the qualified name of the current node.

(Inherited from XPathNavigator)
NamespaceURI

When overridden in a derived class, gets the namespace URI of the current node.

(Inherited from XPathNavigator)
NameTable

When overridden in a derived class, gets the XmlNameTable of the XPathNavigator.

(Inherited from XPathNavigator)
NodeType

When overridden in a derived class, gets the XPathNodeType of the current node.

(Inherited from XPathNavigator)
OuterXml

Gets or sets the markup representing the opening and closing tags of the current node and its child nodes.

(Inherited from XPathNavigator)
Prefix

When overridden in a derived class, gets the namespace prefix associated with the current node.

(Inherited from XPathNavigator)
SchemaInfo

Gets the schema information that has been assigned to the current node as a result of schema validation.

(Inherited from XPathNavigator)
TypedValue

Gets the current node as a boxed object of the most appropriate .NET type.

(Inherited from XPathNavigator)
UnderlyingObject

Used by XPathNavigator implementations which provide a "virtualized" XML view over a store, to provide access to underlying objects.

(Inherited from XPathNavigator)
Value

When overridden in a derived class, gets the string value of the item.

(Inherited from XPathNavigator)
ValueAsBoolean

Gets the current node's value as a Boolean.

(Inherited from XPathNavigator)
ValueAsDateTime

Gets the current node's value as a DateTime.

(Inherited from XPathNavigator)
ValueAsDouble

Gets the current node's value as a Double.

(Inherited from XPathNavigator)
ValueAsInt

Gets the current node's value as an Int32.

(Inherited from XPathNavigator)
ValueAsLong

Gets the current node's value as an Int64.

(Inherited from XPathNavigator)
ValueType

Gets the .NET Type of the current node.

(Inherited from XPathNavigator)
XmlLang

Gets the xml:lang scope for the current node.

(Inherited from XPathNavigator)
XmlType

Gets the XmlSchemaType information for the current node.

(Inherited from XPathNavigator)

Methods

AppendChild()

Returns an XmlWriter object used to create one or more new child nodes at the end of the list of child nodes of the current node.

(Inherited from XPathNavigator)
AppendChild(String)

Creates a new child node at the end of the list of child nodes of the current node using the XML data string specified.

(Inherited from XPathNavigator)
AppendChild(XmlReader)

Creates a new child node at the end of the list of child nodes of the current node using the XML contents of the XmlReader object specified.

(Inherited from XPathNavigator)
AppendChild(XPathNavigator)

Creates a new child node at the end of the list of child nodes of the current node using the nodes in the XPathNavigator specified.

(Inherited from XPathNavigator)
AppendChildElement(String, String, String, String)

Creates a new child element node at the end of the list of child nodes of the current node using the namespace prefix, local name and namespace URI specified with the value specified.

(Inherited from XPathNavigator)
CheckValidity(XmlSchemaSet, ValidationEventHandler)

Verifies that the XML data in the XPathNavigator conforms to the XML Schema definition language (XSD) schema provided.

(Inherited from XPathNavigator)
Clone()

When overridden in a derived class, creates a new XPathNavigator positioned at the same node as this XPathNavigator.

(Inherited from XPathNavigator)
ComparePosition(Int64, Int64)

When overridden in a derived class, returns a value that describes the document order of the two specified positions.

ComparePosition(XPathNavigator)

Compares the position of the current XPathNavigator with the position of the XPathNavigator specified.

(Inherited from XPathNavigator)
Compile(String)

Compiles a string representing an XPath expression and returns an XPathExpression object.

(Inherited from XPathNavigator)
CreateAttribute(String, String, String, String)

Creates an attribute node on the current element node using the namespace prefix, local name and namespace URI specified with the value specified.

(Inherited from XPathNavigator)
CreateAttributes()

Returns an XmlWriter object used to create new attributes on the current element.

(Inherited from XPathNavigator)
CreateNavigator()

Returns a copy of the XPathNavigator.

(Inherited from XPathNavigator)
DeleteRange(XPathNavigator)

Deletes a range of sibling nodes from the current node to the node specified.

(Inherited from XPathNavigator)
DeleteSelf()

Deletes the current node and its child nodes.

(Inherited from XPathNavigator)
Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
Evaluate(String)

Evaluates the specified XPath expression and returns the typed result.

(Inherited from XPathNavigator)
Evaluate(String, IXmlNamespaceResolver)

Evaluates the specified XPath expression and returns the typed result, using the IXmlNamespaceResolver object specified to resolve namespace prefixes in the XPath expression.

(Inherited from XPathNavigator)
Evaluate(XPathExpression)

Evaluates the XPathExpression and returns the typed result.

(Inherited from XPathNavigator)
Evaluate(XPathExpression, XPathNodeIterator)

Uses the supplied context to evaluate the XPathExpression, and returns the typed result.

(Inherited from XPathNavigator)
GetAttribute(String, String)

Gets the value of the attribute with the specified local name and namespace URI.

(Inherited from XPathNavigator)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetLocalName(Int64)

When overridden in a derived class, returns the local name of the node at the position specified.

GetName(Int64)

When overridden in a derived class, returns the name of the node at the specified position.

GetNamespace(Int64)

When overridden in a derived class, returns the namespace of the node at the specified position.

GetNamespace(String)

Returns the value of the namespace node corresponding to the specified local name.

(Inherited from XPathNavigator)
GetNamespacesInScope(XmlNamespaceScope)

Returns the in-scope namespaces of the current node.

(Inherited from XPathNavigator)
GetNodeType(Int64)

When overridden in a derived class, returns the type of the node at the specified position.

GetType()

Gets the Type of the current instance.

(Inherited from Object)
GetValue(Int64)

When overridden in a derived class, returns the text value of the node at the specified position.

InsertAfter()

Returns an XmlWriter object used to create a new sibling node after the currently selected node.

(Inherited from XPathNavigator)
InsertAfter(String)

Creates a new sibling node after the currently selected node using the XML string specified.

(Inherited from XPathNavigator)
InsertAfter(XmlReader)

Creates a new sibling node after the currently selected node using the XML contents of the XmlReader object specified.

(Inherited from XPathNavigator)
InsertAfter(XPathNavigator)

Creates a new sibling node after the currently selected node using the nodes in the XPathNavigator object specified.

(Inherited from XPathNavigator)
InsertBefore()

Returns an XmlWriter object used to create a new sibling node before the currently selected node.

(Inherited from XPathNavigator)
InsertBefore(String)

Creates a new sibling node before the currently selected node using the XML string specified.

(Inherited from XPathNavigator)
InsertBefore(XmlReader)

Creates a new sibling node before the currently selected node using the XML contents of the XmlReader object specified.

(Inherited from XPathNavigator)
InsertBefore(XPathNavigator)

Creates a new sibling node before the currently selected node using the nodes in the XPathNavigator specified.

(Inherited from XPathNavigator)
InsertElementAfter(String, String, String, String)

Creates a new sibling element after the current node using the namespace prefix, local name and namespace URI specified, with the value specified.

(Inherited from XPathNavigator)
InsertElementBefore(String, String, String, String)

Creates a new sibling element before the current node using the namespace prefix, local name, and namespace URI specified, with the value specified.

(Inherited from XPathNavigator)
IsDescendant(XPathNavigator)

Determines whether the specified XPathNavigator is a descendant of the current XPathNavigator.

(Inherited from XPathNavigator)
IsSamePosition(XPathNavigator)

When overridden in a derived class, determines whether the current XPathNavigator is at the same position as the specified XPathNavigator.

(Inherited from XPathNavigator)
LookupNamespace(String)

Gets the namespace URI for the specified prefix.

(Inherited from XPathNavigator)
LookupPrefix(String)

Gets the prefix declared for the specified namespace URI.

(Inherited from XPathNavigator)
Matches(String)

Determines whether the current node matches the specified XPath expression.

(Inherited from XPathNavigator)
Matches(XPathExpression)

Determines whether the current node matches the specified XPathExpression.

(Inherited from XPathNavigator)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
MoveTo(XPathNavigator)

When overridden in a derived class, moves the XPathNavigator to the same position as the specified XPathNavigator.

(Inherited from XPathNavigator)
MoveToAttribute(String, String)

Moves the XPathNavigator to the attribute with the matching local name and namespace URI.

(Inherited from XPathNavigator)
MoveToChild(String, String)

Moves the XPathNavigator to the child node with the local name and namespace URI specified.

(Inherited from XPathNavigator)
MoveToChild(XPathNodeType)

Moves the XPathNavigator to the child node of the XPathNodeType specified.

(Inherited from XPathNavigator)
MoveToFirst()

Moves the XPathNavigator to the first sibling node of the current node.

(Inherited from XPathNavigator)
MoveToFirstAttribute()

When overridden in a derived class, moves the XPathNavigator to the first attribute of the current node.

(Inherited from XPathNavigator)
MoveToFirstChild()

When overridden in a derived class, moves the XPathNavigator to the first child node of the current node.

(Inherited from XPathNavigator)
MoveToFirstNamespace()

Moves the XPathNavigator to first namespace node of the current node.

(Inherited from XPathNavigator)
MoveToFirstNamespace(XPathNamespaceScope)

When overridden in a derived class, moves the XPathNavigator to the first namespace node that matches the XPathNamespaceScope specified.

(Inherited from XPathNavigator)
MoveToFollowing(String, String)

Moves the XPathNavigator to the element with the local name and namespace URI specified in document order.

(Inherited from XPathNavigator)
MoveToFollowing(String, String, XPathNavigator)

Moves the XPathNavigator to the element with the local name and namespace URI specified, to the boundary specified, in document order.

(Inherited from XPathNavigator)
MoveToFollowing(XPathNodeType)

Moves the XPathNavigator to the following element of the XPathNodeType specified in document order.

(Inherited from XPathNavigator)
MoveToFollowing(XPathNodeType, XPathNavigator)

Moves the XPathNavigator to the following element of the XPathNodeType specified, to the boundary specified, in document order.

(Inherited from XPathNavigator)
MoveToId(String)

When overridden in a derived class, moves to the node that has an attribute of type ID whose value matches the specified String.

(Inherited from XPathNavigator)
MoveToNamespace(String)

Moves the XPathNavigator to the namespace node with the specified namespace prefix.

(Inherited from XPathNavigator)
MoveToNext()

When overridden in a derived class, moves the XPathNavigator to the next sibling node of the current node.

(Inherited from XPathNavigator)
MoveToNext(String, String)

Moves the XPathNavigator to the next sibling node with the local name and namespace URI specified.

(Inherited from XPathNavigator)
MoveToNext(XPathNodeType)

Moves the XPathNavigator to the next sibling node of the current node that matches the XPathNodeType specified.

(Inherited from XPathNavigator)
MoveToNextAttribute()

When overridden in a derived class, moves the XPathNavigator to the next attribute.

(Inherited from XPathNavigator)
MoveToNextNamespace()

Moves the XPathNavigator to the next namespace node.

(Inherited from XPathNavigator)
MoveToNextNamespace(XPathNamespaceScope)

When overridden in a derived class, moves the XPathNavigator to the next namespace node matching the XPathNamespaceScope specified.

(Inherited from XPathNavigator)
MoveToParent()

When overridden in a derived class, moves the XPathNavigator to the parent node of the current node.

(Inherited from XPathNavigator)
MoveToPrevious()

When overridden in a derived class, moves the XPathNavigator to the previous sibling node of the current node.

(Inherited from XPathNavigator)
MoveToRoot()

Moves the XPathNavigator to the root node that the current node belongs to.

(Inherited from XPathNavigator)
PrependChild()

Returns an XmlWriter object used to create a new child node at the beginning of the list of child nodes of the current node.

(Inherited from XPathNavigator)
PrependChild(String)

Creates a new child node at the beginning of the list of child nodes of the current node using the XML string specified.

(Inherited from XPathNavigator)
PrependChild(XmlReader)

Creates a new child node at the beginning of the list of child nodes of the current node using the XML contents of the XmlReader object specified.

(Inherited from XPathNavigator)
PrependChild(XPathNavigator)

Creates a new child node at the beginning of the list of child nodes of the current node using the nodes in the XPathNavigator object specified.

(Inherited from XPathNavigator)
PrependChildElement(String, String, String, String)

Creates a new child element at the beginning of the list of child nodes of the current node using the namespace prefix, local name, and namespace URI specified with the value specified.

(Inherited from XPathNavigator)
ReadSubtree()

Returns an XmlReader object that contains the current node and its child nodes.

(Inherited from XPathNavigator)
ReplaceRange(XPathNavigator)

Replaces a range of sibling nodes from the current node to the node specified.

(Inherited from XPathNavigator)
ReplaceSelf(String)

Replaces the current node with the content of the string specified.

(Inherited from XPathNavigator)
ReplaceSelf(XmlReader)

Replaces the current node with the contents of the XmlReader object specified.

(Inherited from XPathNavigator)
ReplaceSelf(XPathNavigator)

Replaces the current node with the contents of the XPathNavigator object specified.

(Inherited from XPathNavigator)
Select(String)

Selects a node set, using the specified XPath expression.

(Inherited from XPathNavigator)
Select(String, IXmlNamespaceResolver)

Selects a node set using the specified XPath expression with the IXmlNamespaceResolver object specified to resolve namespace prefixes.

(Inherited from XPathNavigator)
Select(XPathExpression)

Selects a node set using the specified XPathExpression.

(Inherited from XPathNavigator)
SelectAncestors(String, String, Boolean)

Selects all the ancestor nodes of the current node that have the specified local name and namespace URI.

(Inherited from XPathNavigator)
SelectAncestors(XPathNodeType, Boolean)

Selects all the ancestor nodes of the current node that have a matching XPathNodeType.

(Inherited from XPathNavigator)
SelectChildren(String, String)

Selects all the child nodes of the current node that have the local name and namespace URI specified.

(Inherited from XPathNavigator)
SelectChildren(XPathNodeType)

Selects all the child nodes of the current node that have the matching XPathNodeType.

(Inherited from XPathNavigator)
SelectDescendants(String, String, Boolean)

Selects all the descendant nodes of the current node with the local name and namespace URI specified.

(Inherited from XPathNavigator)
SelectDescendants(XPathNodeType, Boolean)

Selects all the descendant nodes of the current node that have a matching XPathNodeType.

(Inherited from XPathNavigator)
SelectSingleNode(String)

Selects a single node in the XPathNavigator using the specified XPath query.

(Inherited from XPathNavigator)
SelectSingleNode(String, IXmlNamespaceResolver)

Selects a single node in the XPathNavigator object using the specified XPath query with the IXmlNamespaceResolver object specified to resolve namespace prefixes.

(Inherited from XPathNavigator)
SelectSingleNode(XPathExpression)

Selects a single node in the XPathNavigator using the specified XPathExpression object.

(Inherited from XPathNavigator)
SetTypedValue(Object)

Sets the typed value of the current node.

(Inherited from XPathNavigator)
SetValue(String)

Sets the value of the current node.

(Inherited from XPathNavigator)
ToString()

Gets the text value of the current node.

(Inherited from XPathNavigator)
ValueAs(Type)

Returns the item's value as the specified type.

(Inherited from XPathItem)
ValueAs(Type, IXmlNamespaceResolver)

Gets the current node's value as the Type specified, using the IXmlNamespaceResolver object specified to resolve namespace prefixes.

(Inherited from XPathNavigator)
WriteSubtree(XmlWriter)

Streams the current node and its child nodes to the XmlWriter object specified.

(Inherited from XPathNavigator)

Explicit Interface Implementations

ICloneable.Clone()

Creates a new copy of the XPathNavigator object.

(Inherited from XPathNavigator)

Applies to