protected function setUrlMap( $schemaNamespace = null, $schemaFile = null )
	{
		if ( $schemaNamespace && ! $schemaFile || $schemaFile && ! $schemaNamespace )
		{
			throw  new Exception('setUrlMap: If a schema file or schema namespace is provided to the setUrlMapo function then both MUST be provided.');
		}

		if ( ! $schemaFile )
		{
			$schemaFile = $this->schemaFile;
		}
		if ( ! $schemaNamespace )
		{
			$schemaNamespace = $this->schemaNamespace;
		}

		if ( ! $schemaNamespace ) return;

		global $mapUrl;  // This is a function assigned below.  Effectively a change of url maps is created.
		$previousMap = $mapUrl;
		// $schemaFile = $this->schemaFile;

		$mapUrl = function( $url ) use( &$previousMap, $schemaFile )
		{
			if ( $url == basename( $schemaFile ) )
			{
				$url = $schemaFile;
			}
			else if ( $previousMap )
			{
				$url = $previousMap( $url );
			}

			return $url;
		};

	}