<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def query(self, query, sort=None, offset=100, page=1, aquarius_url=None):
 """ Search an asset in oceanDB using search query. :param query: dict with query parameters (e.g.) https://github.com/oceanprotocol/aquarius/blob/develop/docs/for_api_users/API.md :param sort: Dictionary to choose order base in some value :param offset: Number of elements shows by page :param page: Page number :param aquarius_url: Url of the aquarius where you want to search. If there is not provided take the default :return: List of assets that match with the query. """

        logger.info(f'Searching asset query: {query}')
        aquarius = self._get_aquarius(aquarius_url)
        return [DDO(dictionary=ddo_dict) for ddo_dict in
                aquarius.query_search(query, sort, offset, page)['results']]