docs: def get_collection(source, name, collection_format, default):
      """get collection named `name` from the given `source` that
      formatted accordingly to `collection_format`.
      """
      if collection_format in COLLECTION_SEP:
          separator = COLLECTION_SEP[collection_format]
          value = source.get(name, None)
          if value is None:
              return default
          return value.split(separator)
      if collection_format == 'brackets':
          return source.getall(name + '[]', default)
      else:                       # format: multi
          return source.getall(name, default)