La recherche SharePoint MOSS : synthèse sur la syntaxe des requêtes par mots clés
Après de nombreux échanges sur la recherche avec de nombreuses personnes, voici un petit récapitulatif sur le fonctionnement et l’utilisation des requêtes par mots clés (par opposition aux requêtes Search SQL). Voici quelques exemples de saisie dans la boite de recherche
- Un seul mot : par exemple collaboratif retournera tous les éléments contenant ce terme,
- Plusieurs mots : par exemple collaboration travail retournera tous les éléments contenant collaboration ET travail. En effet, l’espace sera considéré comme un ET logique.
- Une phrase : par exemple “travail collaboratif” retournera tous les éléments contenant exactement cette phrase,
- L’utilisation des préfixes :
- Il n’y pas de caractère joker tel que ‘*’, taper juste le début du mot et le moteur vous trouvera tous les éléments contenant en partie cette expression. Par exemple, collab retournera les documents contenant collaboration, collaboratif, collaborateur, etc
- Exclusion d’un terme : utilisez le moins ‘-‘ dans votre requête, par exemple ‘-collaboratif’ pour exclure tous les éléments contenant collaboratif. Cet opérateur sera compris comme un NOT par le moteur de recherche.
- Inclusion d’un terme : utiliser le plus ‘+’ dans votre requête, par exemple ’+collaboratif’ pour incluse tous les éléments contenant collaboratif. Néanmoins, étant donné que tous les termes sont transmis sous forme de ET, ce caractère est quelque peu dispensable …
- Filtre sur une propriété : les propriétés indexées et dites “Managed properties” (que vous pouvez configurer dans le SSP) peuvent être utilisées dans la recherche comme critère selon la syntaxe suivante : :. Par exemple auteur:julien retournera tous les éléments créés par Julien.
- L’utilisation du caractère Joker ‘*’ est ici permise, par exemple auteur:ju* retournera tous les documents créés par Julien, Justine, etc… En revanche, ce joker ne semble marché que sous la forme du préfixe (auteur:*ien ne revoie pas les éléments Julien, Aurélien, etc, de même pour auteur:*uli*. Heureusement que nous avons le Search SQL pour nous les développeurs qui permettent ce type de requête !). Sachez que le joker ‘*’ est en fait optionnel et que si vous saisissez auteur:ju, le résultat sera le même que auteur:ju*.
- Pour limiter le nombre de résultat contenant le suffixe de votre requête, utiliser les guillemets, par exemple auteur:”ju”, pour ne retourner que les éléments dont l’auteur se nomme ju.
- Filtre sur le type de contenu : même principe que pour la propriété mais en filtrant sur le type de contenu en utilisant la syntaxe suivante : contenttype:, par exemple contenttype:document pour ne demander que les documents.
- Pour détecter la langue d’un élément, sachez que le moteur d’index utilise un algorithme déterminant la langue, et la place dans la propriété managé detectedlanguage. Ainsi la requête detectedlanguage:9 ramènera le contenu en anglais et detectedlanguage:12 pour retrouver le contenu en Françai. Reste que le moteur d’index (IFilter notamment) fait aussi quelques erreurs sur la langue …
- Pour ne cibler qu’un seul site en particulier, utilisez la syntaxe site:
- Pour ne filtrer que les types de documents d'une extension spécifique, utilisez la syntaxe fileextension:<extension>
Quelques précisions sur le comportement du moteur de recherche :
- Notez que le moteur de recherche, par défaut, ne prend pas en compte la casse des mots, ainsi collaboratif et Collaboratif retourneront le même résultat.
- Utilisation de filtres multiples : si vous utilisez plusieurs filtres différents, le moteur de recherche garde son comportement par défaut de ET logique concernant la relation entre les critères ou termes de recherche. Si vous utilisez plusieurs fois la même propriété, type de contenu ou scope de recherche dans votre requête, le moteur de recherche interprétera les éléments avec un OU. Par exemple, la requête auteur:julien contenttype:document collaboratif retournera tous les documents dont l’auteur est julien (prénom ou nom) contenant le terme collaboratif. Si vous spécifiez auteur:julien auteur:christian contenttype:document collaboratif, le moteur de recherche renverra tous les documents dont l’auteur est soit Julien, soit Christian, soit les deux, possédant un terme collaboratif.
Voilà pour le rappel de ces quelques règles élémentaires sur le fonctionnement du moteur de recherche de MOSS 2007, en attendant celles de “MOSS 2010” dans un prochain post.
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :