Chess Query Language
Home * Chess * Chess Query Language
The Chess Query Language (CQL) is a structured query language to search for games, problems, and studies that match specific themes from a collection in Portable Game Notation. CQL was developed by Gady Costeff and Lewis Stiller. It is Copyright (c) 2003-2021 and is free. The current version is 6.1 and the documentation and download of the executable can be found on the website of Gady Costeff [1].
Sample query
;; look for positions where a rook circles in a 4x3 rectangle ;; we use the rectangle g2, d2, d6, g6 together with shift and flip ;; (match :pgn input.pgn :output output.pgn :forany piece [Rr] (position $piece[g2] :and ( (position :gappedsequence ((position :movefrom $piece[g6,d2] :moveto ?g2))) (position :gappedsequence ((position :movefrom $piece[d6,g2] :moveto ?d2))) (position :gappedsequence ((position :movefrom $piece[d6,g2] :moveto ?g6))) (position :gappedsequence ((position :movefrom $piece[g6,d2] :moveto ?d6))) ) :shift :flip ) )
See also
Publications
- Gady Costeff (2004). The Chess Query Language: CQL. ICGA Journal, Vol. 27, No. 4, pdf
- Miha Bizjak, Matej Guid (2021). Automatic Recognition of Similar Chess Motifs. Advances in Computer Games 17
Forum Posts
- CQL Users? by Guy Haworth, CCC, August 11, 2004
- CQL - Stalemate with 2 pieces pinned by James Constance, CCC, July 17, 2005
- Chess Query Language by David Dahlem, CCC, August 13, 2011
- Chess Query Language by Giovanni Lavorgna, CCC, May 07, 2016
- Scid vs PC with CQL , build issue by Steven Atkinson, CCC, November 25, 2017 » Scid vs. PC
- Scid vs PC CQL 5.2 feature by Steven Atkinson, CCC, February 11, 2018 » Scid vs. PC
- CQL 6.1 by Mark Thellen, CCC, June 20, 2021
External Links
- CQL Introduction by Gady Costeff
- CQL Introduction hosted by the Internet Archive
- Sample CQL files about themes or manoeuvres and with some studies shown as results from ARVES
- Chess Query Language from Tim Krabbé's Chess Site (March 2004)
- Chess Query Language from Wikipedia
- CQL VisualCQL by Emil Vlasák