bcql_py is a Python parser for the BlackLab Corpus Query Language. It produces
a frozen Pydantic AST that round-trips back to BCQL or JSON, and ships an
optional semantic validation layer driven by a CorpusSpec.
This demo lets you:
Parse any BCQL query and see the resulting AST as JSON.
Validate the query against a built-in preset (UD, Lassy) or a
custom corpus spec you define on the fly.
When parsing or validation fails, the error message points at the offending
position in the query: useful both for humans and for LLM-driven feedback
loops.