貼り付けた Schema を Ajv でコンパイルし、properties と制約を契約ツリーとして表示します。各検証エラーは instance JSON Pointer に対応し、選択すると一致する契約パスが強調されます。
Draft 2020-12、Draft-07、一般的な文字列 format、boolean schema、# で始まるローカル参照に対応します。remote または file ref は取得も無視もせず、明示的に拒否します。
JSON の解析、Schema のコンパイル、format 検査、契約ツリー生成、データ検証はすべてブラウザ内で実行されます。Schema、instance データ、検証結果はアップロードされません。
このテーマに関するよくある疑問と回答をまとめました。
最初のエディターに Schema、2 番目に検証対象 JSON を貼り付けます。Schema がコンパイルされ、失敗した JSON Pointer、keyword、schema path がすぐに表示されます。
Draft 2020-12 と Draft-07 に対応します。$schema 宣言がない場合は Draft 2020-12 として扱い、それ以外の dialect は別 draft へ切り替えず明示的に失敗します。
検証に失敗した JSON instance 内の正確な位置を示します。required や additional property の場合は、Ajv の親パスを対象プロパティまで補完します。
はい。#/$defs/User や #/definitions/User のようなローカル参照は貼り付けた Schema 内で解決します。remote URL と file ref は取得しません。
JSON 構文はテキストを解析できるかだけを決めます。JSON Schema は required 項目、値の型、format、範囲、pattern、enum などの契約ルールを追加します。
いいえ。解析、Schema コンパイル、format 検査、契約ツリー生成、検証はブラウザ内で実行します。remote ref も拒否されるため、外部 Schema は取得しません。