The keyword expression uses the following syntax. Operators are executed strictly from left to right. Expressions inside parentheses are always executed first.

expression
| element [operator element [operator element [...]]]
element
| keyword | True if keyword exists in the list
| "keyword" | True if keyword exists in the list
| * | True if keyword list is not empty
| (expression) | True if expression is true
| !element | True if element is false
operator
| & | AND: True if both elements are true
| | | OR: True if either element is true (or both elements are true)