This site is currently read-only as we are migrating to Oracle Forums for an improved community experience. You will not be able to initiate activity until January 30th, when you will be able to use this site as normal.

    Forum Stats

  • 3,890,048 Users
  • 2,269,775 Discussions
  • 7,916,823 Comments

Discussions

Stem Operator ($) does not work

user10753959
user10753959 Member Posts: 3
edited May 28, 2010 10:31AM in Text
Hello:

We are on Oracle 10g and I cannot seem to get this operator to work. (I am following the documentation at http://download-west.oracle.com/docs/cd/B10501_01/text.920/a96518/cqoper.htm#14499).

I get the following:


select count(*) FROM local_appls WHERE CONTAINS(project_title, 'isoflavone') > 0;

COUNT(*)
----------
54


select count(*) FROM local_appls WHERE CONTAINS(project_title, 'isoflavones') > 0;

COUNT(*)
----------
139


select count(*) FROM local_appls WHERE CONTAINS(project_title, '$isoflavone') > 0;

COUNT(*)
----------
54


Shouldnt the final query return something between 139 and 193?

thank you in advance for any advice.

Regards,
Harvey
Tagged:

Best Answer

Answers

  • Roger Ford-Oracle
    Roger Ford-Oracle Member Posts: 1,132 Employee
    Answer ✓
    The stem operator works off an internal dictionary of words and their stems. Presumably "isoflavones" is not in that dictionary. Try something simpler like "running", "run" to see if it's working at all.
  • Hi Roger:

    thank you for the fast response, and you are right, it does work with more common words. Is there a way I can supplement the dictionary with more medical terms? Does Oracle supply a similar dictionary of medical terms that can be accessed? Can you give me a good reference where I can read more about this?

    thank you
    Harvey
  • Roger Ford-Oracle
    Roger Ford-Oracle Member Posts: 1,132 Employee
    Supposedly you can supply your own stemming dictionary, though I've never tried it. See "Stemming User-Dictionaries" here:

    http://download.oracle.com/docs/cd/B19306_01/text.102/b14218/cdatadic.htm#i1007615

    It's slightly confusing - it says "Oracle Text ships with a system stemming dictionary ($ORACLE_HOME/ctx/data/enlx/dren.dct)"
    This is not true. It ships with two binary files dren.ds for derivational stemming and dren.is for inflectional stemming (car/cars is derivational, run/running is inflectional). On top of this I would assume you can add your own dren.dct to include additional terms, but as I say - I've not tried it.

    - Roger
  • Thanks again, will look into it.
This discussion has been closed.