الخلاصة
- تثبت استجابة 207 الصفوف التي أعادها الخادم تحت نحو ومحكّم ونطاق وهوية معينة، ولا تثبت أنه فحص كل مورد.
- عند الاقتطاع يجوز أن تكون النتائج الجزئية أي مجموعة فرعية مطابقة. ترتيب الصفوف الظاهرة لا يجعلها أعلى النتائج في المجموعة الكاملة.
حين تتحول القائمة المرتبة إلى ادعاء بالكمال
قد يعيد الخادم مئة URI صحيحة مرتبة بعناية، فيحسبها النظام مخزوناً كاملاً. يسمح RFC 5323 للخادم بتقييد كلفة البحث أو الإرسال. وعندئذ قد تبقى موارد كثيرة مطابقة من دون فحص.
تظل الاستجابة 207 Multi-Status، ويوضع 507 لمحكّم البحث، وينبغي إرفاق النتائج الجزئية. ويمكن أن تكون هذه النتائج أي جزء من مجموعة المطابقة. إذا طلب العميل ترتيباً، يجب ترتيب الجزء المعاد؛ لكن ترتيب الجزء لا يثبت أنه أعلى جزء من الكل.
إذا حذف وسيط XML سطر 507 وحفظ صفوف الموارد، فقد حذف الفرق بين «هذه بعض النتائج» و«هذه كل النتائج». سلامة كل صف لا تعيد سلامة الغلاف.
يستطيع العميل طلب DAV:limit للعدد أو الجهد، ويستطيع الخادم تجاهله. ومع الترتيب ينبغي اختيار الأعلى، لكن الطلب والتنفيذ الفعلي والاقتطاع ثلاث وقائع.
المحكّم لا يساوي النطاق
تحمل SEARCH الاستعلام والنتيجة، ويحدد query grammar الدلالة. تشير Request-URI إلى search arbiter الذي يقبل العملية، ولا يلزم أن تكون هي النطاق.
يحدد DAV:from النطاقات بواسطة href وdepth. الصفر يشمل المجموعة نفسها، والواحد أبناءها المباشرين، وinfinity ذريتها. تحل الإشارة النسبية مقابل Request-URI، وقد تشير المطلقة إلى مكان آخر ضمن دعم الخادم وسياسته.
دعم النطاقات المتعددة اختياري، ويجب رفض الطلب عند غيابه. كما لا تتبع مراجع إعادة التوجيه تلقائياً. كلمة infinity ليست إيصالاً بأن كل فرع منطقي زِير.
حفظ الشرط من دون المحكّم والنطاق المحلول يمنع إعادة السؤال. واستبدال النطاق بعنوان المحكّم يغير المجتمع الذي جرى البحث فيه.
UNKNOWN يستبعد ولا ينفي
تقوّم الشروط إلى TRUE أو FALSE أو UNKNOWN، ولا يدخل المورد إلا عند TRUE. لذلك قد يعني غياب السطر أن النظام لم يستطع تقرير الشرط.
تعد الخاصية NULL إذا كانت PROPFIND ستعيد لها non-2xx. ولا تساوي NULL سلسلة فارغة؛ السلسلة الفارغة قيمة معرفة. الخاصية التي لا يملك principal قراءتها تعامل كأنها غير موجودة، والمحتوى غير المقروء كأن GET أخفق.
لا يجوز لـ SEARCH كشف معلومات تحجبها GET أو PROPFIND. ولهذا قد يحصل principalان على نتائج مختلفة للاستعلام نفسه. النتيجة مرتبطة بصلاحية الرؤية.
قد يأتي الغياب من FALSE أو UNKNOWN أو الإذن أو النطاق أو الاقتطاع أو إعادة التوجيه أو تأخر الفهرس أو تغير المجموعة. عدم الوجود احتمال واحد، لا حكم بروتوكولي.
إعلان القدرة ليس إيصال تنفيذ
تعلن DASL وDAV:supported-query-grammar-set الأنحاء المدعومة. الإعلان لا يثبت تنفيذ بحث ولا كمال فهرس. ويمكن لـ Query Schema Discovery وصف الخصائص القابلة للبحث والاختيار والترتيب والمشغلات الاختيارية.
QSD اختياري ويتغير مع المحكّم والنطاق، وقد تؤثر هوية principal من دون كشف جميع العوامل. searchable يعني استعداد الخادم للفحص، لا أن الخاصية معرفة لكل مورد.
URI الخاص بالنحو معرّف، وليس أمراً بالتنزيل لمجرد أنه يبدأ بـ HTTP. وscore محلي أيضاً؛ لا يصح عادة مقارنة الدرجات إلا إذا نفذ المحرك نفسه البحث فوق المجموعة نفسها.
القدرة والفعل والنتيجة تحتاج إلى إيصالات مستقلة. OPTIONS ليس تقريراً عن الفهرس، وschema ليس ضماناً لحداثة القيم.
السطر ليس بالضرورة مورداً مستقلاً
قد تشير URI متعددة في النطاق إلى المورد نفسه، وينبغي للخادم إرجاع واحدة. تساعد DAV:resource-id في اكتشاف التكرار المحتمل، لكنها لا تجعل href اسماً وحيداً دائماً.
لذلك لا يساوي عدد الصفوف عدد الأشياء دائماً. احتفظ بـ href وresource-id وpropstat والوقت والمحكّم، وسجل إزالة التكرار كاستنتاج لاحق.
ينبغي عدم تخزين النتائج الناجحة في cache. فالمجموعة والحقوق والخصائص والفهرس تتغير. البحث ملاحظة زمنية لا لقطة مجمدة.
دفتر البحث القابل للتدقيق
احفظ XML الأصلي والنحو وRequest-URI والنطاقات المحلولة والأعماق وخيارات التوجيه والإصدارات وprincipal وسياق التفويض والاختيار وشجرة الشروط والترتيب والحد. واحفظ 207 وكل response وpropstat وhref وresource-id وscore و507 وزمن الفهرس إذا توفر.
لا تسم النتائج «كاملة» من دون تعداد مستقل. لا تحول الغياب إلى FALSE مع بقاء UNKNOWN أو الإذن أو النطاق أو الاقتطاع. لا تقارن الدرجات بين المحركات، ولا تعد discovery تنفيذاً.
راقب سقفاً ثابتاً، و507 مفقوداً، وتغير schema، وفارقاً مع PROPFIND مخولاً، وهوية واحدة وراء href متعددة، وكيانات XML الخارجية. البحث المكلف سطح حجب خدمة أيضاً.
يعطي RFC 5323 الخادم لغة للإجابة وقناة للتعبير عن الحدود. الصف الموجود دليل محلي مفيد. أما الصف الغائب فيحتفظ بأسباب عديدة، وعلى المؤسسة ألا تختار أكثرها ملاءمة من دون إثبات.
المصادر
- RFC 5323 HTML
- RFC 5323 نص
- معلومات RFC Editor
- IETF Datatracker
- تاريخ Datatracker
- مراجع RFC 5323
- وثائق تستشهد بـ RFC 5323
- تصويبات RFC 5323
- RFC 4918
- RFC 2518
- RFC 3253
- RFC 3744
- RFC 4437
- RFC 3986
- RFC 9110
- سجل طرق HTTP لدى IANA
- RFC 2119
- Heng Lu: طبقات الواقع
- Heng Lu: أولوية الشيفرة الجارية
- Heng Lu: مشكلة الوكالة
إحاطة الأعضاء
سياق أعمق للملف الشخصي
سجّل الدخول بمستوى العضوية المناسب لفتح الإحاطة الكاملة وملاحظات المصادر.
للدائرة الاستراتيجية فقط
الدائرة الاستراتيجية
مفتوح لجميع القراء. افتح إحاطات الملف الشخصي بعد الانضمام وتسجيل الدخول.
انضم إلى الدائرة الاستراتيجيةلأعضاء تحالف القيادات فقط
تحالف القيادات
لأصحاب الأصول الفكرية المؤهلين وللإدارة؛ سجّل الدخول للوصول إلى إحاطات التحالف.
انضم إلى تحالف القيادات
