Oracle Text Workaround for Stop Words List

February 22, 2013

We’ve come across a discussion about Oracle Text at StackOverflow, “Oracle Text Search Doesn’t Work on Some Words.” Essentially, some words cannot initially be indexed, and the fix is to go in and remove those words from the stop words list. Interesting.

The question-and-answer site for programmers received this query:

“I am using Oracle’ Text Search for my project. I created a ctxsys.context index on my column and inserted one entry ‘Would you like some wine???’. I executed the query ‘select guid, text, score(10) from triplet where contains (text, ‘Would’, 10) > 0′; it gave me no results. Querying ‘you’ and ‘some’ also return zero results. Only ‘like’ and ‘wine’ matches the record. Does Oracle consider you, would, some as stop words?? How can I let Oracle match these words? Thank you.”

The top response reveals:

“I found that the query’s output is perfect according to the stop word lists that is in the oracle.

those words can be found in the ctxsys package, and you could query for the stoplist and the stop words using “SELECT * FROM CTX_STOPLISTS; SELECT * FROM ctx_stopwords;” and yes, the oracle consider ‘you’, ‘would’ in your query as stop words.”

The solution—remove the offending stop words with the command, “GRANT EXECUTE ON CTXSYS.CTX_DDL to you” followed by the desired procedure. See the link for an example.

Cynthia Murrell, February 22, 2013

Sponsored by ArnoldIT.com, developer of Augmentext

Comments

One Response to “Oracle Text Workaround for Stop Words List”

  1. Machine Biases: Stop Word Lists « Another Word For It on February 22nd, 2013 7:10 am

    […] mention this because Oracle Text Workaround for Stop Words List (Beyond Search) reports this as […]

  • Archives

  • Recent Posts

  • Meta