docs: def parse(cls, representation, corpus=None):
          """
          Creates a subview from a string representation (created with ``self.serialize``).
  
          Args:
              representation (str): The representation.
  
          Returns:
              Subview: The created subview.
          """
  
          criteria_definitions = representation.split('\n')
          criteria = []
  
          for i in range(0, len(criteria_definitions), 2):
              filter_name = criteria_definitions[i]
              filter_repr = criteria_definitions[i + 1]
  
              if filter_name not in available_filter_criteria():
                  raise UnknownFilterCriteriaException('Unknown filter-criterion {}'.format(filter_name))
  
              criterion = available_filter_criteria()[filter_name].parse(filter_repr)
              criteria.append(criterion)
  
          return cls(corpus, criteria)