docs: def toTypeURIs(namespace_map, alias_list_s):
      """Given a namespace mapping and a string containing a
      comma-separated list of namespace aliases, return a list of type
      URIs that correspond to those aliases.
  
      @param namespace_map: The mapping from namespace URI to alias
      @type namespace_map: openid.message.NamespaceMap
  
      @param alias_list_s: The string containing the comma-separated
          list of aliases. May also be None for convenience.
      @type alias_list_s: str or NoneType
  
      @returns: The list of namespace URIs that corresponds to the
          supplied list of aliases. If the string was zero-length or
          None, an empty list will be returned.
  
      @raise KeyError: If an alias is present in the list of aliases but
          is not present in the namespace map.
      """
      uris = []
  
      if alias_list_s:
          for alias in alias_list_s.split(','):
              type_uri = namespace_map.getNamespaceURI(alias)
              if type_uri is None:
                  raise KeyError(
                      'No type is defined for attribute name %r' % (alias,))
              else:
                  uris.append(type_uri)
  
      return uris