เครื่องมือรวม JSON Schema
รวม JSON Schema หลายรายการ หรือ composition allOf หนึ่งรายการ ให้เป็นสคีมาเดียว กฎที่ไม่สามารถเป็นจริงพร้อมกันได้จะแสดงเป็นความขัดแย้ง
รับได้สูงสุด 100,000 อักขระและสคีมา 2 ถึง 50 รายการ ทุกอย่างทำงานในเบราว์เซอร์ ดาวน์โหลดสคีมาที่รวมแล้วในรูป JSON รายงาน JSON และรายการความขัดแย้ง CSV ได้ อาร์เรย์ JSON ของสคีมาหลายรายการ หรือสคีมาเดียวที่มี allOf รองรับ YAML ด้วย สูงสุด 100,000 ตัวอักษร ตรวจสอบการตั้งค่าก่อนเริ่มประมวลผล
ผลลัพธ์ของคุณ
เครื่องมือรวม JSON Schema
- วางอาร์เรย์ JSON ของสคีมา หรือสคีมาเดียวที่มี allOf ระบุรายการเหล่านั้น
- เลือก draft ของ JSON Schema หรือใช้การตรวจจับอัตโนมัติต่อไป
- เรียกใช้การรวมและตรวจทานข้อขัดแย้งกับกฎที่คงไว้ใน allOf
- ดาวน์โหลดสคีมาที่รวมแล้วและรายงานความขัดแย้ง
สิ่งที่ควรทราบ
รับได้สูงสุด 100,000 อักขระและสคีมา 2 ถึง 50 รายการ ทุกอย่างทำงานในเบราว์เซอร์ ดาวน์โหลดสคีมาที่รวมแล้วในรูป JSON รายงาน JSON และรายการความขัดแย้ง CSV ได้
วิธีรวมกฎ
นำ type มาตัดส่วนร่วมกัน, enum และ const values ก็ตัดส่วนร่วมกัน, minimum และ maximum ใช้ขอบเขตที่เข้มกว่า, รวม required lists และรวม properties ทีละรายการ เมื่อ schema ห้าม extra properties property ที่มีเฉพาะในอีก schema ก็จะถูกห้ามด้วย และจะแจ้งข้อขัดแย้งหาก property นั้น required
สิ่งที่คงไว้ใน allOf
คีย์เวิร์ดบางอย่างรวมกันอย่างตรงตัวไม่ได้ เช่น regular expression ที่ต่างกัน, oneOf, not, if กับ then, patternProperties ข้างกฎ property อื่น และ unevaluated properties ระบบจะคงสิ่งเหล่านี้ไว้ใน allOf ของ schema ที่รวมแล้วและระบุในรายงาน จึงไม่เปลี่ยนความหมายของ schema
กำลังตรวจสอบผลลัพธ์
ความขัดแย้งระบุตำแหน่งในสคีมา ความขัดแย้งใน property ที่ไม่บังคับหรือกฎตัวเลขอย่างเดียวไม่ได้ทำให้สคีมาทั้งหมดเป็นไปไม่ได้ด้วยตัวมันเอง รายงานทำเครื่องหมาย provenUnsatisfiable เฉพาะเมื่อ bounded structural proof พิสูจน์ว่าไม่มี instance ที่ทำตามสคีมาที่รวมแล้วได้ มิฉะนั้น flag นี้ไม่ใช่หลักฐานด้าน satisfiability เมื่อไม่มีความขัดแย้ง การตรวจตัวอย่างแบบไม่บังคับจะใช้ Ajv ตรวจ candidate จากแต่ละ composition กับอีก composition หนึ่ง สคีมาอินพุตที่แยกกันยังคงใช้ local-reference root ของตนเอง ตัวอย่างเป็นหลักฐานประกอบ ไม่ใช่ proof of equivalence ที่ครอบคลุมทั้งหมด Validator ปฏิเสธสคีมาที่ใช้ __proto__ เป็น property, pattern หรือ dependency key