  Nowhere dense graph classes, introduced by Nesetril and Ossona de Mendez,
form a large variety of classes of "sparse graphs" including the class of
planar graphs, actually all classes with excluded minors, and also bounded
degree graphs and graph classes of bounded expansion.
  We show that deciding properties of graphs definable in first-order logic is
fixed-parameter tractable on nowhere dense graph classes. At least for graph
classes closed under taking subgraphs, this result is optimal: it was known
before that for all classes C of graphs closed under taking subgraphs, if
deciding first-order properties of graphs in C is fixed-parameter tractable,
then C must be nowhere dense (under a reasonable complexity theoretic
assumption).
  As a by-product, we give an algorithmic construction of sparse neighbourhood
covers for nowhere dense graphs. This extends and improves previous
constructions of neighbourhood covers for graph classes with excluded minors.
At the same time, our construction is considerably simpler than those. Our
proofs are based on a new game-theoretic characterisation of nowhere dense
graphs that allows for a recursive version of locality-based algorithms on
these classes. On the logical side, we prove a "rank-preserving" version of
Gaifman's locality theorem.
