Comprendre la requête
Pour s'exprimer, on a recours à divers synonymes, y compris lorsque l'on fait une recherche sur un moteur. Il peut exister des dizaines de très bons résultats indexés mais qui n'utilisent pas le mot-clefs recherché mais plutôt un synonyme. Lorsque l'on parle avec quelqu'un, l'interlocuteur n'a aucun mal à saisir le sens de la phrase ou à comprendre les mots, ce n'est pas toujours le cas des moteurs de recherches, ils recherchent l'expression écrite et c'est tout.
Type de requête
Lors de l'analyse de la requête, il faut commencer par trouver le type de requête :
- Un auteur ?
- Une ville ?
- Un évènement ?
- Un artiste ?
- Un objet ?
- Une phrase ?
- calcul ?
- autre ?
Traiter
En fonction du type, les résultats seront adaptés (voir le billet sur les résultats en catégories).
Et si c'est une phrase, une analyse plus poussée serait effectuée pour analyser la famille des mots (adjectif, adverbe, verbe,...) et ses liens avec d'autres familles (synonyme,...). D'ailleurs si vous connaissez des services gratuits qui proposent ce genre de service via API, n'hésitez pas à laisser un commentaire.
Ainsi, des résultats pertinents pourraient être formés. Sur une requête retournant des résultats convenables sur les mot-clefs utilisés, des résultats synonymes ne seraient conseillés qu'en fin de page, sous "annexes" ou "voir aussi..." par exemple.
Par contre, pour une requête ne retournant pas de résultats pertinents, la requête pourrait alors s'étendre aux autres familles des synonymes.
Je pense que le concept pourrait être intéressant, à condition de pouvoir traiter tout ça de manière correcte et rapide...