Explicação
Chess Query Language, abreviada como CQL, permite formular uma consulta precisa sobre xadrez. Uma consulta é uma descrição formal do que se deseja encontrar, por exemplo, uma peça em determinada casa, uma sequência de lances, uma posição com xeque ou uma combinação de condições. CQL foi criada para buscar padrões em coleções de partidas e estudos.
O fluxo básico tem duas partes: escrever o padrão em CQL e depois executar o programa cql em um arquivo PGN. PGN significa Portable Game Notation e é um formato de texto para registrar partidas. CQL produz outro arquivo com as partidas correspondentes. A linguagem pode descrever peças, casas e sequências, inverter cores, refletir o tabuleiro e usar repetições semelhantes a expressões regulares, regras que indicam quantas vezes uma parte do padrão pode se repetir.
CQL não é uma pergunta escrita em linguagem cotidiana, uma notação para registrar uma partida nem um banco de dados por si só. É preciso aprender suas regras de escrita, e a consulta determina exatamente o que será aceito como correspondência. Uma busca rígida demais pode omitir exemplos equivalentes; uma busca ampla demais pode retornar posições que apresentam apenas uma semelhança superficial.
Uso e contexto
CQL é especialmente útil quando o critério procurado depende da geometria do xadrez ou da ordem dos lances e não pode ser bem expresso por campos como jogador, data ou abertura.
Confusões frequentes
Busca em linguagem natural
CQL não interpreta um pedido livre como encontrar sacrifícios bonitos. Sua gramática deve especificar quais peças, casas, lances ou relações formam o padrão.
Formato de armazenamento
CQL descreve uma busca. As partidas são lidas e gravadas em outro formato, normalmente PGN.
Fontes
- 1.CQL: The Chess Query Language, Gady Costeff
