That's a bit of a nasty one, but I think with a little study of the table below (from the Object Persistence chapter of the Developers Guide) you will see how to write your query. You have, algebraically,
A and ((B and C) or (D and E)) and F
So I believe that translates to
A BC and DE and or and F and
The operator always applies to the two most recently listed operands.
Algebraic Notation v. Reverse-PolishThe following table compares algebraic notation to the corresponding Reverse-Polish notation. If you’re accustomed to thinking algebraically, as many of us are, just find the relationships you need in the left-hand column and see the Reverse-Polish equivalent in the right-hand column. Not every possible construction is covered, but with a few minutes of meditation – as especially, with comparison to the examples given above -- you’ll get the idea.

Edited by GregD - 23-Apr-2010 at 6:00pm