happytails.ai
Tiếng Việt

Công cụ gộp JSON Schema

Kết hợp nhiều JSON Schema, hoặc một composition allOf, thành một schema. Những quy tắc không thể đồng thời thỏa mãn sẽ được liệt kê là xung đột.

Nhận tối đa 100,000 ký tự và 2 đến 50 schema. Mọi thứ chạy trong trình duyệt. Tệp tải xuống gồm schema đã gộp dạng JSON, báo cáo JSON và danh sách xung đột CSV. Mảng JSON gồm các lược đồ, hoặc một lược đồ có allOf. YAML cũng được hỗ trợ. Tối đa 100.000 ký tự. Kiểm tra cài đặt trước khi chạy.

Kết quả của bạn

Báo lỗi hoặc chia sẻ ý tưởng.

Công cụ gộp JSON Schema
  1. Dán mảng JSON gồm các schema, hoặc một schema có allOf liệt kê chúng.
  2. Chọn draft của JSON Schema hoặc giữ tự động phát hiện.
  3. Chạy gộp và xem xung đột cùng các quy tắc được giữ trong allOf.
  4. Tải schema đã gộp và báo cáo xung đột.

Điều cần biết

Nhận tối đa 100,000 ký tự và 2 đến 50 schema. Mọi thứ chạy trong trình duyệt. Tệp tải xuống gồm schema đã gộp dạng JSON, báo cáo JSON và danh sách xung đột CSV.

Cách kết hợp quy tắc

Các type được lấy giao; enum và const value cũng lấy giao; minimum và maximum dùng giới hạn chặt hơn; required lists được hợp lại; properties được gộp từng mục. Khi một schema cấm extra properties, property chỉ được schema khác định nghĩa cũng bị cấm, và xung đột được liệt kê nếu property đó là bắt buộc.

Những gì được giữ trong allOf

Một số keyword không thể gộp chính xác, như các regular expression khác nhau, oneOf, not, if và then, patternProperties bên cạnh quy tắc property khác, và unevaluated properties. Chúng được giữ trong allOf của schema đã gộp và liệt kê trong báo cáo để ngữ nghĩa schema không đổi.

Đang kiểm tra kết quả

Xung đột chỉ rõ vị trí trong schema. Xung đột ở property tùy chọn hoặc quy tắc chỉ liên quan đến số không tự khiến toàn bộ schema trở nên bất khả thi. Báo cáo chỉ đánh dấu provenUnsatisfiable khi bounded structural proof xác lập rằng không có instance nào thỏa mãn schema đã gộp. Nếu không, flag đó không phải bằng chứng về tính thỏa mãn. Khi không có xung đột, các bước kiểm tra mẫu tùy chọn dùng Ajv để xác thực candidate của từng composition với composition còn lại. Các schema đầu vào riêng biệt giữ nguyên local-reference root của chúng. Mẫu là bằng chứng, không phải proof of equivalence toàn diện. Validator từ chối schema dùng __proto__ làm property, pattern hoặc dependency key.