This documentation is archived and is not being maintained.

XPathNavigator Class

Reads data from any data store using a cursor model.

For a list of all members of this type, see XPathNavigator Members.


[Visual Basic]
MustInherit Public Class XPathNavigator
   Implements ICloneable
public abstract class XPathNavigator : ICloneable
public __gc __abstract class XPathNavigator : public ICloneable
public abstract class XPathNavigator implements ICloneable

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.


XPathNavigator is based on the XPath data model and provides the methods required to implement XPath queries over any data store. To create an XPathNavigator over an XML document or a DataSet (using the XmlDataDocument class), use the CreateNavigator method available in the XmlNode and XPathDocument classes, which implement the IXPathNavigable interface. Additionally, you can create your own implementation of XPathNavigator over other data stores such as file systems or databases. For more information on implementing your own XPathNavigator, see XPathNavigator over Different Stores.

XPathNavigator provides read-only, random access to data. The current node refers to the node on which the navigator is positioned. The navigator is advanced using any of the move methods and properties reflect the value of the current node. If the navigator is created by XmlDocument, you can use the IHasXmlNode.GetNode method to return the XmlNode representing the current position of the navigator.

XPathNavigator supports XSLT and can be used as an input mechanism to the XslTransform.Transform method.

For more information on the XPath data model, see the W3C XML Path Language (XPath) recommendation located at


Namespace: System.Xml.XPath

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family

Assembly: System.Xml (in System.Xml.dll)

See Also

XPathNavigator Members | System.Xml.XPath Namespace | XslTransform | IHasXmlNode