'It is possible to inject new schemes at runtime'

def register_scheme(self, scheme, cls):

    if (scheme in self._schemes):
        raise DuplicateScheme()
    urlparse.register_scheme(scheme)
    self._schemes[scheme] = cls
