private function getNodeContent( $contentNode, $prefix )
	{
		$contentType = "";
		if ( property_exists( $contentNode, 'restriction' ) )
		{
			$parent = (string) $contentNode->restriction->attributes()->base;
			$contentType = "restriction";
		}
		else if ( property_exists( $contentNode, 'extension' ) )
		{
			$parent = (string) $contentNode->extension->attributes()->base;
			$contentType = "extension";
		}
		else
		{
			return $this->getComplexType( $contentNode, $prefix );
			return false;
		}

		// BMS 2018-04-09 Test candidates changed.
		$parent = $this->normalizePrefix( strpos( $parent, ":" ) ? $parent : "xs:$parent" );

		$content = array( 'parent' => $parent );
		$content['numeric'] = isset( $this->types[ $parent ]['numeric'] ) ? $this->types[ $parent ]['numeric'] : false;

		$name = (string) $contentNode->attributes()->name;
		if ( ! empty( $name ) )
		{
			$content['name'] = $name;
		}

		foreach ( $contentNode->$contentType->children( SCHEMA_NAMESPACE ) as  $key => $node )
		{
			$x = $this->getContent( $key, $node, $prefix );
			$content = array_merge_recursive( $content, $x );
		}

		if ( property_exists( $contentNode->$contentType->attributes(), 'base' ) )
		{
			$base = $this->normalizePrefix( (string) $contentNode->$contentType->attributes()->base );
			$content['base'] = $base;
			$content['contentType'] = $contentType;
		}

		return $content;
	}