private function findTaxonomyElement( $href, $linkbase, &$namespace = null )
	{
		$taxonomy =& $this;

		// BMS 2019-01-26 Don't know why this test is looking at the PHP_URL_PATH as it is unlikely to match
		//                NOTE: This probably needs changing to test $href against schema location now
		//				  		getTaxonomyForXSD works on full paths.
		// $xsd = parse_url( $href, PHP_URL_PATH );
		$xsd = basename( parse_url( $href, PHP_URL_PATH ) );
		if ( $xsd !== $this->getTaxonomyXSD() )
		{
			// $this->log()->err( "Other taxonomy $href" );
			// BMS 2019-01-26 Now full Urls are being used to
			$taxonomy = $this->getTaxonomyForXSD( $xsd );
			if ( ! $taxonomy )
			{
				$this->log()->warning( "Taxonomy cannot be found for $href" );
				return null;
			}
		}

		// $namespace = $taxonomy->getNamespace();

		// Lookup the element
		$fragment = parse_url( $href, PHP_URL_FRAGMENT );
		$element = $taxonomy->getElementById( $fragment );
		if ( $element ) return $element;

		// $elements =& $taxonomy->getElements();
		// $fragment = parse_url( $href, PHP_URL_FRAGMENT );
		// if ( isset( $elements[ $fragment ] ) )
		// {
		// 	$element =& $elements[ $fragment ];
		// 	return $element;
		// }

		$this->log()->warning( "Cannot find an element for linkbase '$linkbase' element '$href'" );

		return null;
	}