input: 
  def search_with_optional_parameters(query: str, collection: str = None, start_record: int = 1, max_records: int = 1, record_schema: str = None) -> response:
      """
      Perform a search using the KB SRU API with optional parameters for collection, start record, maximum number of records, and record schema.
  
      >>> search_with_optional_parameters('query text', 'ANP', 1, 10, 'dcx')
      <response object>
      >>> search_with_optional_parameters('different query', None, 5, 5, None)
      <response object>
      """
      sru_instance = sru()
      return sru_instance.search(query, collection, start_record, max_records, record_schema)
  
output:     sru_instance = sru()
      return sru_instance.search(query, collection, start_record, max_records, record_schema)