مولّد مخطط JSON
الصق JSON على اليسار — والمخطط يظهر على اليمين أثناء الكتابة.
مخطط JSON
طريقة الاستخدام
- الصق مستند JSON عيّنة على اليسار — كائنًا أو مصفوفة أو قيمة واحدة. يُولَّد المخطط حيًّا أثناء الكتابة.
- اختر إصدار المخطط (المسودة 7 أو 2020-12)، وبدّل كشف صيغ السلاسل وقيم المثال وما إذا كانت كل خاصية مطلوبة.
- انسخ النتيجة أو نزّلها كـ schema.json. لا شيء يُرفع: تُحلَّل الوثيقة بالكامل في متصفحك.
مثال
عيّنة JSON
{
"id": 42,
"name": "Ada Lovelace",
"email": "ada@example.com",
"active": true,
"tags": ["admin", "editor"],
"profile": { "score": 4.5, "verified": false }
}مخطط JSON
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"id": { "type": "integer" },
"name": { "type": "string" },
"email": { "type": "string", "format": "email" },
"active": { "type": "boolean" },
"tags": { "type": "array", "items": { "type": "string" } },
"profile": {
"type": "object",
"properties": {
"score": { "type": "number" },
"verified": { "type": "boolean" }
},
"required": ["score", "verified"],
"additionalProperties": false
}
},
"required": ["id", "name", "email", "active", "tags", "profile"],
"additionalProperties": false
}وُلِّد بالقواعد الافتراضية: المسودة 7، مع كشف الصيغ، وكل الخصائص مطلوبة. حصلت سلسلة البريد على تلميح format؛ والعدد الصحيح بقي كما هو، وأصبح profile المتداخل مخطط كائن مستقلاً.
القواعد والحدود والمشكلات المعروفة
- تُستنتج الأنواع من العيّنة: object وarray وstring وinteger وnumber وboolean وnull. تُدمج عناصر المصفوفة — تتّحد مفاتيح الكائنات عبر العناصر، ولا تُعلَم خاصية مطلوبة إلا إن وُجدت في كل العناصر.
- الأنواع المختلطة داخل مصفوفة واحدة تصبح anyOf؛ والمصفوفة الفارغة تعطي type:array بلا items (النوع غير معروف من العيّنة).
- صيغ السلاسل (البريد وUUID وURI والتاريخ وdate-time) تُخمَّن من القيمة — مجرد تلميحات لا تحقّق كل القيم الممكنة. عطّلها من الزر.
- المفاتيح المكررة تُبقي الأخيرة فقط، كـ JSON.parse. JSON صارم فقط (RFC 8259): التعليقات والفواصل اللاحقة والاقتباس المفرد تُرفض مع رسالة بالسطر والعمود.
- المخطط JSON قياسي، لذا لا تتغير كلماته ومخرجاته مع لغة الصفحة. تُعاد قيم المثال كما هي، لذا قد يُقَرَّب عدد صحيح ضخم (مثل 12345678901234567890) في المثال فقط.
- الحدود: مليون حرف و512 مستوى تداخل. تتجاوز أيًا منهما فتظهر رسالة خطأ دون اقتطاع. رفع الملف يقرأ الملف المحلي فقط — لا شيء يُرفع.
أدوات ذات صلة
ما يحتاجه الناس عادةً بعد الحصول على المخطط.