1: <rankingModel name=“string” id=“GUID” description=“string” xmlns=“http://schemas.microsoft.com/office/2009/rankingModel”>
2: <queryDependentFeatures>
3: <queryDependentFeature pid=“PID” name=“string” weight=“weightValue” lengthNormalization=“lengthNormalizationSetting” />
4: </queryDependentFeatures>
5: <queryIndependentFeatures>
6: <categoryFeature pid=“PID” default=“defaultValue” name=“string”>
7: <category value=“categoryValue” name=“string” weight=“weightValue” />
8: </categoryFeature>
9: <languageFeature pid=“PID” name=“string” default=“defaultValue” weight=“weightValue” />
10: <queryIndependentFeature pid=“PID” name=“string” default=“defaultValue” weight=“weightValue”>
11: <transformRational k=“value” />
12: <transformInvRational k=“value” />
13: <transformLinear max=“maxValue” />
14: </queryIndependentFeature>
15: </queryIndependentFeatures>
16: </rankingModel>
17:
Le contenu XML ci-dessus est celui utilisé sur MSDN pour présenter le Ranking Model schema de SharePoint 2010.
Dans ce post, nous allons décrire le noeud QueryDependentFeature:
Comme son nom l’indique, ce noeud va permettre de traiter les éléments provenant de la recherche faites par l’utilisateur. Autrement dit : comment pondérer les différents termes passés au moteur de recherche SharePoint.
Le premier attribut “pid” est obligatoire et permet de définir l’ID de la managed property pour la quelle on veut changer la pondération.
Le deuxième attribut “name” n’est pas obligatoire mais permet de spécifier le nom de la managed property
l’attribut suivant est ”weight”, il est obligatoire et sert à définir l’importance de la property dans la recherche
Pour terminer, l’attribut “lengthNormalization” quand a lieu est utile pour garder un “équilibre” entre les champs de différentes tailles
Voici la commande powershell qui vous permet d’obtenir la liste des managed property et leurs pid
1: Get-SPEnterpriseSearchServiceApplication | Get-SPEnterpriseSearchMetadataManagedProperty
Exemple d’utilisation de QueryDependantFeature
1: <queryDependentFeatures>
2: <queryDependentFeature pid=”56″ name=”Filename” weight=”75″ lengthNormalization=”75” />
3: <queryDependentFeature pid=”11″ name=”Land” weight=”70″ lengthNormalization=”70″/>
4: </queryDependentFeatures>