docs: def load_value_from_schema(v):
      """
      Load a value from a schema defined string.
      """
      x = urllib.parse.urlparse(v)
  
      if x.scheme.lower() == 'decimal':
          v = Decimal(x.netloc)
      elif x.scheme.lower() in ['int', 'integer']:
          v = int(x.netloc)
      elif x.scheme.lower() == 'float':
          v = float(x.netloc)
      elif x.scheme.lower() in ['s', 'str', 'string']:
          v = str(x.netloc)
      elif x.scheme.lower() in ['u', 'unicode']:
          v = six.u(x.netloc)
      elif x.scheme.lower() == 'email':
          v = six.u(x.netloc)
      elif x.scheme.lower() == 'bool':
          v = bool(x.netloc)
      elif x.scheme.lower() in ['b', 'bytes']:
          v = six.b(x.netloc)
      elif x.scheme.lower() in ['ts.iso8601', 'timestamp.iso8601']:
          v = MayaDT.from_iso8601(x.netloc).datetime()
      elif x.scheme.lower() in ['ts.rfc2822', 'timestamp.rfc2822']:
          v = MayaDT.from_rfc2822(x.netloc).datetime()
      elif x.scheme.lower() in ['ts.rfc3339', 'timestamp.rfx3339']:
          v = MayaDT.from_rfc3339(x.netloc).datetime()
      elif x.scheme.lower() in ['ts', 'timestamp']:
          v = maya.parse(x.netloc).datetime()
      elif x.scheme.lower() == 'date':
          v = datetime.date.fromtimestamp(float(x.netloc))
      elif x.scheme.lower() == 'time':
          v = time.gmtime(float(x.netloc))
      else:
          v = None
  
      return v