DISCO's search engine follows this precedence with search term connectors:
- Proximity (/)
- AND and NOT (& and %)
- OR ([space])
The search engine evaluates all of the terms using the connectors at the first level, and then moves on to terms using connectors at the second level. A term is the single word or phrase (in quotes) on either side of the connector. A connector is one of the search operators that requires terms to be on both sides of the connector (such as proximity, AND, NOT, or OR). At the second level, AND and NOT are evaluated in order from left to right, since they both have the same level of precedence.
For example:
ken % (lay & (enron contract))
includes nested parentheses, meaning a set of parentheses inside another set. Notice that the number of opening parentheses (two) should exactly match the number of closing parentheses (also two). DISCO starts with the deepest set of parentheses, so it evaluates enron OR contract first.
DISCO moves to the next set of parentheses. You can think of this search level as lay & [first search's resulting documents], meaning any of the 310,682 documents from the first step that also contain the word lay, which results in 11,442 documents.
Finally, having searched all of the terms and connectors in parentheses, DISCO returns to the default precedence rules. You can think of the last search as ken % [11,442 documents], meaning all documents that contain contain the word ken, but excluding (NOT) the 11,442 documents found previously, which results in 4,189 documents.