Document representing a filter.
A filter contains a set of objects that define criteria used to select records. A filter
can contain one of the following:
- term_filter - matches records where a field (or fields) exactly match some simple value (including null).
- range_filter - matches records where a field value lies in a specified range.
- query_filter - provides filtering based on a query.
- bool_filter - provides filtering of records using a set of filters combined using a specified operator.