A Characterisation of First-Order Constraint Satisfaction Problems (Logical Methods in Computer Science, 2007)