I think the problem lies one level above that, so not in the query but in accessing the model.
In your example, I would get the error: Call to a member function query() on null.
Since I should use $this->Persons->query(),
since I cannot load $this->loadModel(‘Person’). However, the documents state I should use Person (or in my case XyzFile from table xyzfiles, which may be important due to camel casing).