<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def uri(self, value):
 """Attempt to validate URI and split into individual values"""

        if value == self.__uri:
            return

        match = URI_REGEX.match(value)
        if match is None:
            raise ValueError('Unable to match URI from `{}`'.format(value))

        for key, value in match.groupdict().items():
            setattr(self, key, value)