Всем привет! Подскажите, плиз, правильное направление решения следующего вопроса. Имеем: коллекция документов. В документе есть вложенный массив других документов, в этих вложенных документах еще массив вложенных документов, и еще раз такая же операция. Итого имеем всего четыре уровня. Теперь нам нужно а) применить к этой коллекции фильтры на разных уровнях и (в идеале) б) еще и удалить все лишнее с этих уровней вложенности. Делается это все на Symfony с помощью Doctrine ODM. Пытался пользовать selectElemMatch, но обнаружил, что при применении нескольких фильтров вылазит совсем не то, что ожидается. Точнее, применяется только последний selectElemMatch. В реальном коде это выглядит примерно вот так (см. скриншот). На нем можно увидеть как хотелось бы в идеале фильтровать коллецию, "зажимая" фильтры на тех или иных уровнях документа. QA-шники говорят, что работает неправильно. Ну и сам я обнаружил факт с использованием только последнего selectElemMatch. Спрашиваю разные GPT-чаты, дают какие-то примитивные примеры.