Фильтр запроса - это просто запрос - настолько сложный, насколько вы хотите.Таким образом, вы, безусловно, можете создать запрос, например,
fq=(cat1:val1 OR cat2:val2 OR (cat3:(val3 AND val4)))
... или любой другой.
Единственная разница между запросом фильтра и простым запросом (кроме памяти иПроблемы кэширования, о которых вы, возможно, захотите подумать), заключаются в том, что запрос фильтра вообще не влияет на оценки релевантности.Но с точки зрения сложности, вы можете делать все, что захотите.