Check an URI for compatibility with this specification. Return True if the URI is compatible.

		:param uri: an URI to check

		:return: bool

def validate(self, uri):
		""" Check an URI for compatibility with this specification. Return True if the URI is compatible.

		:param uri: an URI to check

		:return: bool
		"""
		requirement = self.requirement()
		uri_component = uri.component(self.component())

		if uri_component is None:
			return requirement != WURIComponentVerifier.Requirement.required
		if requirement == WURIComponentVerifier.Requirement.unsupported:
			return False

		re_obj = self.re_obj()
		if re_obj is not None:
			return re_obj.match(uri_component) is not None
		return True