Il est courant qu’une organisation utilise une terminologie unique ou plusieurs façons pour se référer à un concept ou à une chose. Vous devez définir des synonymes pour établir équivalence des termes pour aider les utilisateurs à trouver des articles lors de leurs recherches.
Des synonymes sont définis en indexant des éléments à l'aide du paramètre _dictionaryEntry
du schéma.
Les éléments de type _dictionaryEntry
peuvent avoir les propriétés suivantes:
Propriété | Type | Description | Obligatoire ? |
---|---|---|---|
_term |
string | Terme à définir. Les valeurs recommandées sont les mots sans trait d'union ou les expressions sans ponctuation. | Obligatoire |
_synonym |
string (repeated) | Autres termes à inclure dans les requêtes correspondant à la chaîne définie dans _term . |
Obligatoire |
_onlyApplicableForAttachedSearchApplications |
boolean | Permet de regrouper des synonymes par source de données et application de recherche. Pour en savoir plus, consultez Définir des synonymes spécifiques à une source de données. | Facultatif |
Lorsqu'un utilisateur inclut la valeur de la propriété _term
dans une requête,
la requête effective devient terme OR synonymes. Par exemple, si le
Le terme "scifi" est défini par le synonyme
"science fiction", puis une requête
contenant le mot "scifi" correspond aux éléments contenant
"scifi"
ou "science fiction."
Les synonymes ne sont pas appliqués de manière bidirectionnelle. Si la requête concerne plutôt "science fiction," Cloud Search n'applique aucun synonyme à la requête. La requête ne renvoie que les éléments contenant "science fiction." éléments contenant Les valeurs "scifi" sont omises.
Pour que les deux termes soient interchangeables, définissez chaque terme séparément:
Terme | Synonymes |
---|---|
scifi | science fiction |
science fiction | scifi |
Pendant le traitement d'une requête, les tirets et autres signes de ponctuation sont supprimés avant
à l'application de synonymes. Requête utilisateur ""sci-fi""
correspond à _term
"sci fi."
Pour créer des synonymes pour des termes auxquels les utilisateurs sont susceptibles d'ajouter un trait d'union, vous devez d'abord normaliser
_term
pour utiliser des espaces au lieu de traits d'union.
En reprenant l'exemple, les définitions suivantes correspondent aux requêtes utilisateur qui traitent "sci-fi," "sci fi," "scifi," et "science fiction" comme interchangeables:
Terme | Synonymes |
---|---|
scifi | science fiction, sci fi |
sci fi | science fiction, scifi |
science fiction | scifi, sci fi |
Par défaut, les synonymes d'une source de données s'appliquent à l'ensemble du domaine. Plus précisément, les synonymes sont appliqués dans toutes les applications de recherche pour toutes les recherches. quelle que soit la source de données. Si vous souhaitez utiliser des synonymes spécifiques à votre source de données, consultez à Définir des synonymes spécifiques aux sources de données.
Définir des synonymes globaux à l'aide du SDK Cloud Search
Vous pouvez utiliser le SDK Content Connector pour définir des termes et leurs synonymes. Voir Créez un connecteur de contenu pour des instructions sur la création d'un connecteur.
L'extrait de code suivant illustre la création d'un
RepositoryDoc
représentant le terme et le synonyme d'après un enregistrement de fichier CSV:
Tenez compte des points suivants lorsque vous définissez des synonymes:
- Les synonymes saisis doivent être publics dans le domaine. Dans l'exemple précédent,
Pour ce faire, définissez la LCA sur
DOMAIN_PUBLIC_ACL
. - Les propriétés suivantes ne doivent pas être définies pour votre fichier de configuration
car ils remplacent le paramètre public du domaine dans votre code:
<ph type="x-smartling-placeholder">
- </ph>
defaultAcl.mode=FALLBACK
defaultAcl.public=true
Définir des synonymes spécifiques à une application de recherche
Par défaut, les synonymes sont appliqués à toutes les sources de données pour l'ensemble des recherches. applications.
Cependant, supposons que votre organisation dispose d'équipes d'ingénierie et de ventes distinctes, et que
vous souhaitez offrir à chaque équipe une expérience de recherche différente, y compris
des synonymes spécifiques à chaque poste. Dans ce cas, vous pouvez créer une requête
de votre application avec une source de données et des synonymes propres à l'ingénierie
de recherche avec une source de données et des synonymes spécifiques à la vente. Pour accomplir
pour atteindre cet objectif, indexer chaque synonyme dans une source de données spécifique
avec _onlyApplicableForAttachedSearchApplications=true
. Ce
limite les synonymes de sorte qu'ils ne s'appliquent qu'aux pages
qui incluent une source de données spécifique.
Par exemple, en ajoutant le paramètre la ligne de code suivante à l'exemple de code précédent garantit que les synonymes indexés sont spécifiques à une source de données:
structuredData.put("_onlyApplicableForAttachedSearchApplications", true);