The indexed/boolean search engine allows a client to query an index for keywords (case-insensitive) and return a menu of documents or sections in the database which contain them. The use of both text keywords and boolean operators allows clients to tailor searches to their individual needs.
Searches may use AND, OR, NOT boolean connectors (a space between keywords is treated as AND). Multiple ANDs, ORs and NOTs can be given. Upper and lower case are ignored (case-insensitive). Keywords may be truncated with an '*' as the last character of the root-word. as in: SUPREME COURT = both supreme and court SUPREME AND COURT = both supreme and court LAW OR LEGAL = either law or legal CONSTIT* = any word beginning with 'constit' COURT NOT SUPREME = all entries with 'court' but excluding any with 'supreme' You can give boolean expressions with parenthesized sub-expressions as in: SUPREME AND (COURT OR BURRITO) which will match article names that contain 'supreme' and 'court' or articles that have names that contain 'supreme' and 'burrito'. When in doubt about order of evaluation, parenthesize the expression. Here's a technical description of the Boolean connectors and their use in queries for walker: A QUERY consists an Expression, optionally Query: expr {expr} followed by another Expression; "AND" is assumed between multiple expressions. Each EXPRESSION contains a Term, optionally Expr: term {OR term} followed by "OR" and another Term. A TERM is a Factor, optionally followed by Term: factor {and|not factor} "AND" or "NOT" and another Factor. A FACTOR can be a Token, or another Query. Factor: (query) | token A TOKEN is a keyword. Token: keyword A KEYWORD is a string of alphabetic Keyword: a-z{a-z}[*] characters of any length. An asterisk indicates that any characters following those specified should be accepted.