code: def make_query(self, **kw):
          
          query = kw.pop("query", {})
  
          query.update(self.get_request_query())
          query.update(self.get_custom_query())
          query.update(self.get_keyword_query(**kw))
  
          sort_on, sort_order = self.get_sort_spec()
          if sort_on and "sort_on" not in query:
              query.update({"sort_on": sort_on})
          if sort_order and "sort_order" not in query:
              query.update({"sort_order": sort_order})
  
          logger.info("make_query:: query={} | catalog={}".format(
              query, self.catalog))
  
          return query
docs: create a query suitable for the catalog