مدقّق JSON Schema

تعمل في المتصفح JSON والبيانات

تحقق من مطابقة الحمولة لمخطط JSON Schema. يدعم الأنواع والخصائص المطلوبة والقيم المعدودة (enum) والأنماط والنطاقات الرقمية وقيود المصفوفات والكائنات المتداخلة ومراجع $ref إلى التعريفات المحلية وallOf/anyOf/oneOf وغيرها، مع إدراج كل مخالفة حسب مسارها.

الخصوصية: تعمل هذه الأداة بالكامل في متصفحك. لا تغادر بياناتك جهازك أبداً.
جارٍ تحميل الأداة…

كيفية استخدام مدقّق JSON Schema

  1. الصق مستند JSON في المحرر الأول ومخطط JSON Schema في المحرر الثاني.
  2. اضغط «تحقق» (Validate).
  3. راجع جدول المخالفات؛ يوضح كل صف القيمة التي فشلت وسبب فشلها.

مزايا مدقّق JSON Schema

  • التحقق وفق الكلمات المفتاحية الأساسية في draft-07 و2019-09 و2020-12
  • دعم الكائنات المتداخلة والمصفوفات والصفوف (tuples) والقيم المعدودة والأنماط والصيغ (formats) والحدود الرقمية
  • التعامل مع allOf / anyOf / oneOf / not وif-then-else ومراجع $ref المحلية
  • إدراج كل مخالفة مع مسار JSON والكلمة المفتاحية والرسالة وموقعها في المخطط
  • فحص المخطط نفسه والإبلاغ عن الأنواع غير المعروفة أو التعبيرات النمطية غير الصالحة
  • تصدير المخالفات بصيغة CSV

مثال على مدقّق JSON Schema

التحقق من كائن مستخدم

الإدخال:

Document: {"email":"layla@example","age":17}
Schema: {"type":"object","required":["id"],"properties":{"email":{"format":"email"},"age":{"minimum":18}}}

النتيجة:

$   required   Missing required property "id".
$.email   format   String is not a valid email.
$.age   minimum   Value must be ≥ 18.

الأسئلة الشائعة حول مدقّق JSON Schema

ما إصدارات JSON Schema المدعومة؟

الكلمات المفتاحية الأساسية في draft-07 و2019-09 و2020-12: type وproperties وrequired وenum وconst وpattern وformat والقيود الرقمية وقيود الطول وitems/prefixItems وcontains وallOf/anyOf/oneOf/not وif/then/else وdependentRequired ومراجع $ref المحلية.

هل تُحلّ مراجع $ref البعيدة؟

تُحلّ المراجع المحلية فقط (#/definitions/… و#/$defs/…). ولا تُجلب عناوين URL البعيدة، لذا ضمّن أي مخططات خارجية داخل المخطط أولاً.

ما صيغ السلاسل النصية التي يتم فحصها؟

email وdate-time وdate وtime وuuid وuri وhostname وipv4 وipv6 وregex وjson-pointer. وتُتجاهل الصيغ غير المعروفة كما توصي المواصفة.

كيف يُبلَّغ عن المخالفات؟

تُدرج كل مخالفة مع مسار JSON للقيمة المخالفة، والكلمة المفتاحية التي فشلت في المخطط، ورسالة بلغة مبسطة، وموقعها داخل المخطط.

ملاحظات تقنية

المدقّق تنفيذ خالٍ من الاعتماديات يقيّم الكلمات المفتاحية في جميع المستويات مع تتبّع مسار المثيل (instance) ومسار المخطط معاً. تُقيَّم الكلمات المفتاحية المجاورة لـ $ref (وفق سلوك 2019-09 وما بعده)، كما يُراعى امتداد nullable الخاص بـ OpenAPI.