فقط لأن التاريخ مكتوب في مخطط JSON، فهذا لا يعني أنه يجب على المدقق التحقق من التاريخ.

يقول المخطط `format: date`، لكن التاريخ السيئ يجتاز عملية التحقق. قد لا يعني هذا بالضرورة وجود خطأ في المكتبة. تعتمد كيفية التعامل مع `format` على تكوين أداة التحقق من الصحة. عندما تحصل على "نجاح التحقق"، اسأل أولاً عما إذا كان قد تم التحقق من النوع أو البنية أو التحقق أيضًا من دلالات التاريخ.

تتم كتابة format: date في مخطط JSON، لكن التاريخ غير الموجود يجتاز عملية التحقق. هذا عادة ليس خطأ في المكتبة. تعتمد كيفية معالجة format على تكوين أداة التحقق من الصحة. عندما تواجه نتيجة "تم التحقق بنجاح"، يجب عليك أولاً التأكد مما إذا كانت تتحقق من النوع أو البنية أو تتحقق أيضًا من دلالات التاريخ.

هذه المقالة مناسبة للمطورين والمراجعين الذين يحتاجون إلى إجراء التحقق المنظم من بيانات المستند والاهتمام بدقة حقول التاريخ. بعد قراءة هذا، ستتمكن من تحديد معنى التحقق الناجح واستخدام اختبار المثال المضاد لإصلاح قواعد التاريخ.

تستخدم هذه المقالة عينات صناعية لتوضيح طريقة المعالجة. تم فحص الكود بأمثلة في بيئة معزولة ولا يضمن جميع الملفات الحقيقية أو أداء المنتج. قبل معالجة المستندات المهمة، يرجى الاحتفاظ بالنسخ الأصلية ومراجعتها وفقًا للحدود وبنود القبول في النص.

ما الذي يتم التحقق منه بالضبط من خلال التحقق من التاريخ في مخطط JSON؟ استنتاج جملة واحدة

قم أولاً بتأكيد ما إذا كان فحص format ممكّنًا في أداة التحقق من الصحة، ثم تأكد مما إذا كانت القواعد الدلالية للتاريخ (سواء كانت موجودة بالفعل وكيفية تفسيرها) مسؤولة بخلاف ذلك.

حالتكالممارسات الموصى بهاسبب
تحقق فقط من format: date باستخدام أداة التحقق الافتراضيةتأكد أولاً من تمكين FormatChecker بشكل صريحتعتمد كيفية معالجة format على تكوين أداة التحقق من الصحة
تحتاج إلى تحديد تواريخ مثل 2026-02-30ضعه في مجموعة الاختبار كمثال مضادتبدو السلسلة كتاريخ، وهذا لا يعني أنها موجودة في التقويم.
ترتيب اليوم والشهر من تاريخ المصدر غير معروف.علامة الغموض، لا التخمين التلقائييمكن أن يُظهر اجتياز التحقق من date أن القيمة المحولة صالحة فقط
الحقول مع الوقت والمنطقة الزمنيةاستخدم بروتوكولات زمنية مستقلةلا ينبغي اعتراض الأحرف العشرة الأولى ومعالجتها بشكل عرضي
تستخدم للتحقق من تاريخ الترجمةاحفظ كلاً من raw_text والقيم الطبيعيةيحتاج المراجعون إلى رؤية المحتوى الأصلي والتفسير المنهجي

فحصان متطابقان على ما يبدو

2026-02-30 عبارة عن سلسلة وتبدو وكأنها تاريخ، ولكن لا يوجد يوم 30 في فبراير. فقط التحقق من الأشكال العادية سوف يفوتك هذا النوع من المشاكل. يستخدم ما يلي jsonschema الخاص بـ Python لمقارنة نتائج أداة التحقق الافتراضية وتمكين FormatChecker بشكل صريح.

اختبر التكوين بتاريخ مستحيل

from jsonschema import Draft202012Validator, FormatChecker

schema = {"type": "string", "format": "date"}
structural = Draft202012Validator(schema)
strict = Draft202012Validator(schema, format_checker=FormatChecker())

def valid(v, value):
    return not list(v.iter_errors(value))

assert valid(structural, "2026-02-30")
assert not valid(strict, "2026-02-30")
assert valid(strict, "2024-02-29")
assert not valid(strict, "2025-02-29")
assert not valid(strict, "26/09/2026")
assert not valid(strict, 20260926)

المثال الاصطناعي يتحقق فقط من date. قد تحتوي التنسيقات الأخرى على تبعيات اختيارية أو اختلافات في التنفيذ ويجب اختبارها على أساس كل حالة على حدة في بيئة مقفلة. لا يمكن اعتبار أسماء التنسيقات غير المعروفة على أنها تعني أنه قد تم تنفيذ نوع من الفحص، ويمكن أن تمنحك الأخطاء الإملائية إحساسًا بالأمان الذي لا معنى له.

تنسيق التاريخ ليس قاعدة لتفسير التاريخ

03/04/2026 في المصدر قد يعني 4 مارس، أو قد يعني 3 أبريل. مطلوب منطقة المصدر أو مواصفات الحقل أو البروتوكول الصريح قبل تحويله إلى نموذج ISO. إن اجتياز التحقق من date يمكن أن يثبت فقط أن القيمة المحولة صالحة، لكنه لا يمكن أن يثبت أنك حددت الشهر الصحيح.

معلومات المصدرما يجب القيام بهما لا يجب القيام به
تاريخ التقويم غير موجودالإبلاغ عن خطأ ومراجعة المصدرقم بالتمرير تلقائيًا إلى الشهر التالي
ترتيب غير معروف للشمس والقمرغموض العلامةتخمين على أساس لغة الخادم
مع الوقت والمنطقة الزمنيةاستخدم بروتوكولات زمنية مستقلةاعتراض الأحرف العشرة الأولى بشكل عشوائي
الحقل فارغعلاج وفقا للقواعد المفقودةتكملة لتاريخ اليوم

دمج التكوين في اختبار الانحدار

ضع ثلاثة أنواع من القيم على الأقل في مجموعة الاختبار: يوم كبيسة قانوني، ويوم كبيسة غير قانوني، وقيمة مشوهة. يعد تشغيل هذه الأمثلة المضادة عند النشر أكثر فعالية من مجرد التحقق من وجود ملف المخطط. إذا تم تنفيذ الخدمة عبر اللغات، فيجب التحقق من نفس مجموعة الاختبار بشكل منفصل، ولا تفترض أن السلوك الافتراضي للمدققين هو نفسه.

تحتفظ مراجعة الترجمة بالتاريخ الأصلي

عند استخدام نتائج استخراج التاريخ للتحقق من ترجمة OmniDoc، يوصى بحفظ كل من raw_text والقيم المقيسة. يحتاج المراجع إلى معرفة "ما هو المحتوى الأصلي" و"كيف يفسره النظام" لتحديد ما إذا كان الفرق يكمن في الترجمة أو الاستخراج أو تحويل التنسيق.

المراجع: سلسلة وتنسيق مخطط JSON.

📊 المقارنة الأساسية

البند المقارنالمدقق الافتراضيتمكين FormatChecker بشكل صريح
تحقق من النطاقأنواع وهياكلفحص إضافي لتنسيق إعلانformat
الاستنتاج بشأن 2026-02-30لا تفترض الرفضتحتاج إلى تأكيد مع الأمثلة المضادة
يعني عند المروروهذا لا يعني أن دلالات التاريخ صحيحةلا تزال بحاجة إلى التحقق من شرح التاريخ في العمل

🎯 ما هي الطريقة المناسبة لك؟

إذا كنت بحاجة فقط إلى التأكد من أن الحقل عبارة عن سلسلة أو منظم بشكل صحيح

عادةً ما يكون المدقق الافتراضي كافيًا، لكن انتبه إلى أنه لا يتحقق بالضرورة من دلالات التاريخ.

إذا كنت تريد التأكد من وجود التاريخ بالفعل

قم بتمكين FormatChecker بشكل صريح وتحقق باستخدام الأمثلة المضادة مثل 2026-02-30.

إذا كنت تريد التحقق من التاريخ في الملف المصدر

قم أولاً بتأكيد قواعد المصدر لتسلسل اليوم والشهر، ثم قم بحفظ النص الأصلي والقيم التي تمت تسويتها.

إذا تم نشر خدمتك عبر اللغات

يتم تشغيل نفس مجموعة الاختبارات على كل تطبيق.

❓ الأسئلة الشائعة (الأسئلة الشائعة)

1. تمت كتابة المخطط باسم format: date، لماذا لا تزال التواريخ السيئة تمر؟

تعتمد كيفية معالجة format على تكوين أداة التحقق من الصحة ولا يتم بالضرورة التحقق من دلالات التاريخ افتراضيًا.

2. لماذا تعتبر 2026-02-30 قيمة اختبار مفيدة؟

يبدو وكأنه موعد، لكن شهر فبراير ليس به يوم ثلاثين. مجرد التحقق من المظهر سوف يفوتك هذا النوع من المشاكل.

3. ماذا يحدث إذا تم استخدام اسم تنسيق غير معروف؟

لا ينبغي التعامل معها كما لو أنها قد تم تدقيقها، وقد تعطيك الأخطاء الإملائية إحساسًا زائفًا بالأمان.

4. كيف ينبغي تحويل 03/04/2026؟

مطلوب منطقة المنشأ أو وصف الحقل أو البروتوكول الصريح. وإلا فإنه سيكون من المستحيل معرفة ما إذا كان يمثل 4 مارس أو 3 أبريل.

📝 ملخص

إن اجتياز التحقق يعني فقط أن البيانات تتوافق مع القواعد المعلنة، لكنه لا يعني أن معنى كل تاريخ صحيح. قم أولاً بتأكيد نطاق التحقق من أداة التحقق، ثم استخدم الأمثلة المضادة وقواعد المصدر لإصلاح معالجة التاريخ، بحيث تكون النتائج أكثر موثوقية.

جربه الآن: قم بتحميل المستند لبدء الترجمة، مع الاحتفاظ بالتخطيط الأصلي

تاريخ التحديث: 2026-11-13