CSFLE Encryption Schema Pattern Properties on sub objects


I was reviewing the example for patternProperties from this document , and wondering if we need to always add all sub-level pattern properties in the schema, or if there is a way to force a scan through out the object for matching patterns.

This is my C# code for the patternProperties:

After applying this, I am able to encrypt only the top level object property matching the pattern but the member object properties are not getting encrypted.

I understand it’s possible to update the schema to define all sub-level properties as well, but for my use case I will be working with a very large complex object, where defining all sub level patterns would be difficult.

Any help would be appreciated.