Oracle Text Reference Release 9.2 Part Number A96518-01 |
|
This appendix describes stopword transformations. The following topic is covered:
When you use a stopword or stopword-only phrase as an operand for a query operator, Oracle rewrites the expression to eliminate the stopword or stopword-only phrase and then executes the query.
The following section describes the stopword rewrites or transformations for each operator. In all tables, the Stopword Expression column describes the query expression or component of a query expression, while the right-hand column describes the way Oracle rewrites the query.
The token stopword stands for a single stopword or a stopword-only phrase.
The token non_stopword stands for either a single non-stopword, a phrase of all non-stopwords, or a phrase of non-stopwords and stopwords.
The token no_lex stands for a single character or a string of characters that is neither a stopword nor a word that is indexed. For example, the + character by itself is an example of a no_lex token.
When the Stopword Expression column completely describes the query expression, a rewritten expression of no_token means that no hits are returned when you enter such a query.
When the Stopword Expression column describes a component of a query expression with more than one operator, a rewritten expression of no_token means that a no_token value is passed to the next step of the rewrite.
Transformations that contain a no_token as an operand in the Stopword Expression column describe intermediate transformations in which the no_token is a result of a previous transformation. These intermediate transformations apply when the original query expression has at least one stopword and more than one operator.
For example, consider the following compound query expression:
'(this NOT dog) AND cat'
Assuming that this is the only stopword in this expression, Oracle applies the following transformations in the following order:
stopword NOT non-stopword => no_token
no_token AND non_stopword => non_stopword
The resulting expression is:
'cat'
Stopword Expression | Rewritten Expression |
---|---|
stopword |
no_token |
no_lex |
no_token |
The first transformation means that a stopword or stopword-only phrase by itself in a query expression results in no hits.
The second transformation says that a term that is not lexed, such as the + character, results in no hits.
Note: When you use query explain plan, not all of the equivalence transformations are represented in the EXPLAIN table. |
Stopword Expression | Rewritten Expression |
---|---|
stopword * n |
no_token |
no_token * n |
no_token |
Stopword Expression | Rewritten Expression |
---|---|
stopword > n |
no_token |
no_token > n |
no_token |
Stopword Expression | Rewritten Expression |
---|---|
stopword WITHIN section |
no_token |
no_token WITHIN section |
no_token |
|
Copyright © 1998, 2002 Oracle Corporation. All Rights Reserved. |
|