Позиционният оператор поддържа само едно ниво дълбоко и само първия съответстващ елемент.
Има JIRA, който може да се проследява за вида на поведението, което искате тук:https://jira.mongodb.org/browse/SERVER-831
Не съм сигурен дали ще позволи повече от един мач, но вярвам, че ще стане поради динамиката на това как ще трябва да работи.