public function MoveToFirstNamespace( $namespaceScope = XPathNamespaceScope::Local )
	{
		if	( is_null( $this->domNode ) ) return false;
		if ( $this->domNode->nodeType != XML_ELEMENT_NODE && $this->domNode->nodeType != XML_DOCUMENT_NODE ) return false;

		$expression = $namespaceScope == XPathNamespaceScope::Local
			? 'namespace::*[not(. = ../../namespace::*)]'
			: 'namespace::*';

		$xpath = new \DOMXPath( $this->domNode->nodeType == XML_DOCUMENT_NODE ? $this->domNode : $this->domNode->ownerDocument );
		$namespaces = $xpath->query( $expression, $this->domNode );

		if ( ! $namespaces || $namespaces->length == 0 ) return false;

		$this->domNode = $namespaces[ $namespaces->length - 1 ];
		return true;
	}