Utilice la mongoose para encontrar por un nested propiedades de documentos

Actualmente tengo una colección de documentos que contienen matrices que apuntan a otros documentos dentro de esa colección. Necesito consultar esta colección para documentos donde los que están nesteds en arreglos contienen una cierta propiedad. Espero que esto explique mi solicitud más claramente:

if doc.list1[0].prop = 'foo' or doc.list2[0].prop = 'foo' then select doc 

He intentado usar .find () de esta manera pero sin éxito.

 { 'doc.list1': 'foo', $or: [ { 'doc.list2': 'foo' } ] } 

¿Estoy en el camino correcto? Porque no creo que lo sea. Esto es lo mejor que puedo ver en la documentación.

Editar

Aquí está mi inicialización de consulta real utilizando el mismo diseño que la sugerencia de Thomas.

 var query = this.Word.find({ $or: [ { 'before.0.cleanWord': topic }, { 'after.0.cleanWord': topic }, { 'cleanWord': topic } ] }); 

 { $or: [ { 'doc.list1.0.prop': 'foo' } { 'doc.list2.0.prop': 'foo' } ] } 

http://www.mongodb.org/display/DOCS/Advanced+Queries#AdvancedQueries-%24or