This class represents a collection of namespace prefixes and namespace URIs that are used to manage and resolve namespace information. The namespace manager is constructed using an XmlNameTable . XmlNamespaceManager is used internally by XmlReader to resolve namespace prefixes and track the current scope. XmlNamespaceManager maintains scope in a stack, which can be manipulated with PopScope( ) and PushScope( ) . Namespaces must be added explicitly to the namespace manager with AddNamespace( ) , even if you use an existing XmlNameTable . public class XmlNamespaceManager : IEnumerable { // Public Constructors public XmlNamespaceManager (XmlNameTable nameTable ); // Public Instance Properties public virtual string DefaultNamespace {get; } public XmlNameTable NameTable {get; } // Public Instance Methods public virtual void AddNamespace (string prefix , string uri ); public virtual IEnumerator GetEnumerator ( ); // implements IEnumerable public virtual bool HasNamespace (string prefix ); public virtual string LookupNamespace (string prefix ); public virtual string LookupPrefix (string uri ); public virtual bool PopScope ( ); public virtual void PushScope ( ); public virtual void RemoveNamespace (string prefix , string uri ); } SubclassesSystem.Xml.Xsl.XsltContext Returned ByXmlParserContext.NamespaceManager Passed ToXmlNode.{SelectNodes( ) , SelectSingleNode( )} , XmlParserContext.{NamespaceManager , XmlParserContext( )} , System.Xml.XPath.XPathExpression.SetContext( ) |