Check if URI is compatible with this specification. Compatible URI has scheme name that matches
		specification scheme name, has all of the required components, does not have unsupported components
		and may have optional components

		:param uri: URI to check
		:return: bool

def is_compatible(self, uri):
		""" Check if URI is compatible with this specification. Compatible URI has scheme name that matches
		specification scheme name, has all of the required components, does not have unsupported components
		and may have optional components

		:param uri: URI to check
		:return: bool
		"""
		for component, component_value in uri:
			if self.verifier(component).validate(uri) is False:
				return False

		return True