In the book Elements of finite model theory by Leonid Libkin, they show that the parity query for structures over an empty vocabulary is not first order definable.
They do this by constructing two countable infinite models $\mathcal{A}$ and $\mathcal{B}$ using the compactness theorem and the Löwenheim–Skolem theorem. Since both models are countable infinite they are isomorphic and hence all first order sentences agree on both models. The compactness theorem however implies that the parity query disagrees on those two structures. Hence the parity query is not first order definable.
Now my question: they say that this also implies that the parity query is not first order definable over finite models. I think this is because the parity query only makes sense over finite models. Is this correct?
Then they prove the following lemma: For every finite structure $\mathcal{A}$, there is a sentence $\psi_\mathcal{A}$ such that $\mathcal{B} \models \psi_\mathcal{A}$ if and only if $\mathcal{B} \cong \mathcal{A}$.
And claim that this implies that the technique used to show that the parity query is not first order definable cannot be extended to prove more inexpressibility results over finite models.
I know why it does not always suffice to only consider two structures, since some non first order definable queries are expressible for every finite set structures, e.g., graph connectivity. I however do not see that that lemma implies what they claim.
P.S. If needed I can include both proofs.