Is it possible to apply a "subfilter" to a nested document?

Generally, I want to avoid repeating the path (Eq(foo.bar.baz...., "value")) for every filter. This is possible when using $elemMatch, but it doesn’t seem to be available for non-array fields. Am I missing something or is this just not something that is supported?