WHITESPACE = _{ " " | "\t" | "\r" | "\n" }
query = _{ expr }
expr = _{ or_expr }
or_expr = { and_expr ~ (WHITESPACE* ~ "OR" ~ WHITESPACE* ~ and_expr)* }
and_expr = { cmp_expr ~ (WHITESPACE* ~ "AND" ~ WHITESPACE* ~ cmp_expr)* }
cmp_expr = { field ~ WHITESPACE* ~ op ~ WHITESPACE* ~ value }
field = @{ ASCII_ALPHANUMERIC+ }
op = { ">" | "<" | "=" }
value = @{
"'" ~ (!"'" ~ ANY)+ ~ "'"
| ASCII_DIGIT+
}