The problem

Drupal's core search module requires an absolute match between the query word and a word e.g. in a node
in order to return the node as a result to the user. In the Greek language words tend to have many forms that
depend on many factors (e.g. grammatical), a fact that almost completely ruins the core search of Drupal.

The proposed solution

Stemming is performed to all words in the search query and to all words in all searchable content types (e.g. nodes etc..)

Initial Drupal implementation

by Vassilis Spiliopoulos (http://users.iit.demokritos.gr/~vspiliop/)

Port to Drupal 6, 7

by yannisc (http://www.netstudio.gr)

History

From Wikipedia (http://en.wikipedia.org/wiki/Stemming):
Stemming is the process for reducing inflected (or sometimes derived) words to their stem,
base or root form - generally a written word form. The stem need not be identical to the morphological
root of the word; it is usually sufficient that related words map to the same stem, even if this stem
is not in itself a valid root.

As a result, the search returns more results (in contrast to none in many cases, if no stemming is used).

The algorithm used is described in the master thesis of Georgios Ntais
at Royal Institute of Technology [KTH], Stockholm Sweden
(http://www.dsv.su.se/~hercules/papers/Ntais_greek_stemmer_thesis_final.pdf)

Installation

1. Place this module directory in your modules folder.
2. Go to "administer" -> "modules" and enable the module.
3. Go to "administer" -> "settings" -> "search" and click "Re-index site".
4. Run cron.php (http://example.com/cron.php)

Uninstall

1. Go to "administer" -> "modules" and disable the module
2. Delete the module folder from the modules directory
3. Go to "administer" -> "settings" -> "search" and click "Re-index site".
4. Run cron.php (http://example.com/cron.php).

Project Information

Downloads