בארגונים רבים יש טרמינולוגיה ייחודית או כמה דרכים להתייחס למושג או לדבר מסוים. כדאי להגדיר מילים נרדפות כדי ליצור שוויון בין מונחים, וכך לעזור למשתמשים למצוא פריטים בזמן החיפוש.
מגדירים מילים נרדפות על ידי הוספת פריטים לאינדקס באמצעות סכימת _dictionaryEntry
well-known.
פריטים מהסוג _dictionaryEntry
יכולים לכלול את המאפיינים הבאים:
נכס | סוג | תיאור | חובה? |
---|---|---|---|
_term |
string | המונח להגדרה. הערכים המומלצים הם מילים או ביטויים ללא מקפים או סימני פיסוק. | חובה |
_synonym |
string (repeated) | מונחים חלופיים שייכללו בשאילתות שתואמות למחרוזת שהוגדרה ב-_term . |
חובה |
_onlyApplicableForAttachedSearchApplications |
boolean | מאפשר לקבץ מילים נרדפות לפי מקור נתונים ואפליקציית חיפוש. מידע נוסף זמין במאמר בנושא הגדרת מילים נרדפות ספציפיות למקור נתונים. | אופציונלי |
כשמשתמש כולל את הערך של מאפיין _term
בשאילתה, השאילתה האפקטיבית הופכת ל-term OR synonyms. לדוגמה, אם המונח "scifi" מוגדר עם המילה הנרדפת "science fiction", שאילתה שמכילה את המילה "scifi" תתאים לפריטים שמכילים את "scifi" או את "science fiction.".
מילים נרדפות לא מוחלות באופן דו-כיווני. אם השאילתה היא במקום זאת "science fiction," Cloud Search לא מחיל מילים נרדפות על השאילתה. השאילתה מתאימה רק לפריטים שמכילים את הערך "science fiction." הפריטים שמכילים את הערך "scifi" מושמטים.
כדי ששני המונחים יהיו ניתנים להחלפה, צריך להגדיר כל מונח בנפרד:
מונח | מילים נרדפות |
---|---|
scifi | science fiction |
science fiction | scifi |
במהלך עיבוד השאילתה, מוסרים מקפים וסימני פיסוק אחרים לפני החלת מילים נרדפות. שאילתת המשתמש "sci-fi"
תואמת ל-_term
"sci fi."
כדי ליצור מילים נרדפות למונחים שהמשתמשים עשויים להשתמש בהם עם מקפים, צריך קודם לנרמל את _term
כך שייעשה שימוש ברווחים במקום במקפים.
בהמשך לדוגמה, ההגדרות הבאות תואמות לשאילתות המשתמשים treat "sci-fi," "sci fi," "scifi," ו- "science fiction":
מונח | מילים נרדפות |
---|---|
scifi | science fiction, sci fi |
sci fi | science fiction, scifi |
science fiction | scifi, sci fi |
כברירת מחדל, מילים נרדפות בכל מקור נתונים חלות על דומיין שלם. באופן ספציפי, מילים נרדפות מוחלות על כל החיפושים באפליקציות חיפוש, ללא קשר למקור הנתונים. אם רוצים מילים נרדפות ספציפיות למקור נתונים, אפשר לעיין במאמר בנושא הגדרת מילים נרדפות ספציפיות למקור נתונים.
הגדרת מילים נרדפות גלובליות באמצעות Cloud Search SDK
אפשר להשתמש ב-Content Connector SDK כדי להגדיר מונחים ומילים נרדפות שלהם. הוראות ליצירת מחבר מופיעות במאמר יצירת מחבר תוכן.
בקטע הקוד הבא מוצג תהליך בנייה של RepositoryDoc
שמייצג את המונח והמילה הנרדפת על סמך רשומה בקובץ CSV:
כשמגדירים מילים נרדפות, חשוב לשים לב לנקודות הבאות:
- הערכים של מילים נרדפות צריכים להיות ציבוריים בדומיין. בדוגמה הקודמת, זה מתבצע על ידי הגדרת ה-ACL ל-
DOMAIN_PUBLIC_ACL
. - אסור להגדיר את המאפיינים הבאים בקובץ ההגדרות כי הם מבטלים את ההגדרה הציבורית של הדומיין בקוד:
defaultAcl.mode=FALLBACK
defaultAcl.public=true
הגדרת מילים נרדפות ספציפיות לאפליקציית החיפוש
כברירת מחדל, מילים נרדפות מוחלות על כל מקורות הנתונים בכל אפליקציות החיפוש.
עם זאת, נניח שיש בארגון שלכם צוותי הנדסה ומכירות נפרדים, ואתם רוצים לספק לכל צוות חוויית חיפוש שונה, כולל מילים נרדפות שספציפיות לתפקיד. במקרה כזה, אפשר ליצור אפליקציית חיפוש אחת עם מקור נתונים ספציפי להנדסה ומילים נרדפות, ואפליקציית חיפוש נוספת עם מקור נתונים ספציפי למכירות ומילים נרדפות. כדי להשיג את המטרה הזו, צריך ליצור אינדקס לכל מילה נרדפת במקור נתונים ספציפי באמצעות _onlyApplicableForAttachedSearchApplications=true
. ההגדרה הזו מגבילה את המילים הנרדפות כך שהן יחולו רק על אפליקציות חיפוש שכוללות מקור נתונים ספציפי.
לדוגמה, הוספת שורת הקוד הבאה לדוגמת הקוד הקודמת מבטיחה שהמילים הנרדפות שנוספו לאינדקס יהיו ספציפיות למקור הנתונים:
structuredData.put("_onlyApplicableForAttachedSearchApplications", true);