Chess Query Language

Chess Query Language (CQL) is a structured query language which is designed to allow chess players and researchers to search for games, positions, problems, and studies in a quick and relatively easy manner.

The user specifies the items that they are looking for, and the database in which to search. After running, the query creates a file in Portable Game Notation (PGN) format that contains all the games or positions matching the query criteria.

The language is designed to be extremely flexible; for example, a user does not have to define exactly the position or theme that they are looking for, but can modify the query so that it will find similar results within certain parameters.

Items and themes that CQL can search for include, but are not limited to:


 * Player names
 * Date and location of games
 * Chess opening used
 * Certain moves or combinations of moves
 * Certain pieces located on certain squares
 * Patterns of pieces in certain locations
 * Which pieces each side has left
 * Complex criteria such as king safety or certain pawn structures.