تعمل ميزة تفسير طلبات البحث في Cloud Search تلقائيًا على تحويل المعاملات والفلاتر في طلب بحث المستخدم إلى طلب بحث منظَّم يستند إلى المعاملات. تستخدم الميزة عوامل التشغيل المحدّدة في المخطط والمستندات المفهرسة لاستنتاج الغرض من الطلب. يتيح ذلك للمستخدمين البحث باستخدام الحد الأدنى من الكلمات الرئيسية والحصول على نتائج دقيقة.
يعتمد عرض النتائج على مستوى الثقة. تزداد الثقة عندما تظهر سلاسل طلب البحث بشكل متسق في حقول مخططات معيّنة (مثل "توم هانكس"
في حقل actors). تنخفض الثقة عندما تظهر السلاسل ضمن نص عام. لا تعرض الثقة العالية سوى النتائج التي تم تفسيرها، بينما تدمج الثقة المنخفضة هذه النتائج مع نتائج الكلمات الرئيسية العادية.
مثال على تفسير طلب البحث
لنفترض أنّ لديك قاعدة بيانات تحتوي على معلومات حول الأفلام. يعرض الشكل 1 نموذجًا لطلب بحث وتفسيره.
في هذا المثال، يكون تفسير طلب البحث كما يلي:
- تحدِّد من المخطط أنّ العناصر ذات المستوى الأعلى هي
objecttype:movies. - يفحص المستندات لتحديد مكان حدوث "الإجراء". إذا ظهرت بشكل أساسي في حقل
genre، تزداد الثقة في أنّها قيمة سمة لهذا الحقل.
التفسير الناتج هو:
actor:"tom hanks" genre:action objecttype:movies
تكون عملية تفسير طلب البحث تلقائية لجميع المستخدمين، ولكن يمكنك تحسينها من خلال تنظيم المخطط على النحو الموضّح في الأقسام التالية.
تنظيم المخطط لتفسير طلبات البحث
يضمن تحسين المخطط الاستفادة من تفسير طلبات البحث.
تفعيل تفسيرات الاسم المعروض
تستخدم ميزة "تفسير الطلبات" الرمزين objectDefinitions وpropertyDefinitions لتفسير الطلبات. أنشئ أسماء عرض بديهية باستخدام
displayLabel
للسمات،
objectDisplayLabel
للكائنات، وoperatorName للمشغّلات.
يوضّح هذا المثال أسماء عرض بديهية لكائن فيلم:
{
"objectDefinitions": [{
"name": "movie",
"options": {
"displayOptions": { "objectDisplayLabel": "Films" }
},
"propertyDefinitions": [{
"name": "genre",
"isReturnable": true,
"textPropertyOptions": {
"operatorOptions": { "operatorName": "genre" }
},
"displayOptions": { "displayLabel": "Category" }
}]
}]
}
تتيح هذه الأسماء المعروضة تفسيرات مثل:
- "أفلام الحركة" ->
genre:action object:movies - أفلام من نوع الحركة أو التشويق ("movies with genre action or thriller") ->
objecttype:movies genre:(action OR thriller) - "أفلام فئة الكوميديا" ->
genre:comedy objecttype:movies
تفعيل تفسيرات التاريخ والأرقام والترتيب
حدِّد lessThanOperatorName وgreaterThanOperatorName في
IntegerOperatorOptions
لجميع السمات الرقمية وسمات التاريخ. لتفعيل الترتيب، اضبط isSortable.
يتيح هذا المثال الخيارات التالية:
{
"objectDefinitions": [{
"propertyDefinitions": [
{
"name": "runtime",
"isSortable": true,
"integerPropertyOptions": {
"operatorOptions": {
"operatorName": "runtime",
"lessThanOperatorName": "runtimelessthan",
"greaterThanOperatorName": "runtimegreaterthan"
}
}
},
{
"name": "releasedate",
"isSortable": true,
"datePropertyOptions": {
"operatorOptions": {
"operatorName": "releasedate",
"lessThanOperatorName": "releasedbefore",
"greaterThanOperatorName": "releasedafter"
}
}
}
]
}]
}
تتيح هذه الإعدادات تفسيرات مثل:
- "الأفلام التي تم إصدارها هذا العام" ->
objecttype:movies releasedafter:2019-1-1 releasedbefore:2019-12-31 - "أفلام مدتها أقل من 90 دقيقة" ->
objecttype:movies runtimelessthan:90
تفعيل تفسير العوامل المحجوزة
استخدِم عوامل تشغيل مدمَجة مثل type وbefore وafter وobjecttype:
- املأ الحقل
updateTimeفيItemMetadataلاستخدامbeforeوafter. - املأ
mimeTypeفيItemMetadataمن أجل الرصد التلقائي. على سبيل المثال، تعرض عبارة البحث "فيديوهات الحركة" مستندات تتضمّن أنواع MIME للفيديوهات.
القيود المفروضة على تفسير طلبات البحث
- لا يعمل إلا مع قوائم التحكّم بالوصول لمصادر البيانات التالية:
- متاح للجميع في النطاق
- مصدر البيانات عام.
- تتشارك غالبية المستندات في قائمة التحكّم بالوصول الموروثة نفسها.
- أسماء عوامل التشغيل المشتركة (مثل يستخدم كل من
priorityوseverityمستوى ثقة منخفضًا (من 0 إلى 3). - تستخدم عملية التفسير تلقائيًا الأحرف الصغيرة لقيم الحقول ما لم تستخدم
exactMatchWithOperator. - عامل التشغيل
sourceغير متاح. - عامل التشغيل المدمج وعبارات النص الحر (مثلاً، "p0 cases severity:s0") are not interpreted.
- يتم دائمًا دمج النتائج مع النتائج المرتبة حسب مدى صلتها بموضوع البحث.