Leggendo il libro su Drupal (questo è uno spoiler, Psicomante! ;)) ho notato una cosa preoccupante che riguarda il sistema di ricerca interno. Il fatto, cioè, che questo sistema è ottimizzato solamente (e tramite l'uso di un modulo non-core) per la lingua inglese, per il francese e l'olandese.
In pratica, dato che la ricerca con wildcard è stata disabilitata a vantaggio della sicurezza, il motore di ricerca e indicizzazione si basa su regole di stemming, cioè in sostanza su come si formano le desinenze delle parole.
Per esempio, permette di associare "skips" e "skipping" a "skip", ma purtroppo non esiste niente di simile per associare "mangiai" a "mangiare" o, ancora peggio, "vai" a "andare".
Conoscete se sono disponibili "dizionari" o algoritmi di stemming (non so manco come si traduce in italiano: derivazioni?) che possano essere usati come base per costruire moduli come quelli per inglese, francese e olandese?
Miglioramento risultati di ricerca per italiano
Lun, 03/09/2007 - 01:57
#1
Miglioramento risultati di ricerca per italiano
mm... non credo si possibile avere una cosa del genere per l'italiano, decisamente più complessa come lingua dell'italiano. Si potrebbe FORSE ABILITARE l'uso delle wildcard effettuando dei check per mantenere comunque un buon livello di sicurezza.
Ciao
Marco
--
My blog
Working at @agavee
Ho scoperto che esiste un algoritmo per lo stemming italiano. Forse non copre tutti gli irregolari, comunque si potrebbe provare a lavorarci sopra. In rete ho trovato un modulo di Perl e, forse più utile ai nostri scopi, una classe PHP.
L'algoritmo è qua:
http://snowball.tartarus.org/algorithms/italian/stemmer.html
La fonte è la stessa usata per gli olandesi. Qualche linguista presente magari può controllare...