JSON Schema バリデータ — draft-07 のパス、ローカル
ブラウザで JSON Schema(draft-07)に対して JSON を検証します。手順:Schema とインスタンスを貼り、検証し、失敗ごとに JSON Pointer を確認。例:price が無い商品オブジェクトは missingProperty で失敗します。貼り付けはタブ内に留まり、Ajv は CDN からライブラリだけ取得します。
エンジン: Ajv 8 · JSON Schema draft-07(既定)。
使い方
左に Schema、右にインスタンスを貼ります。Ajv(draft-07)がコンパイルと検証を行い、各エラーを JSON Pointer 付きで一覧します。失敗/成功サンプルがあり、入場時は失敗サンプルで実パスをすぐ見せます。
想定されるルール
このページの流れ:解析 → draft-07 Schema をコンパイル → インスタンス検証 → エラーごとに Pointer を出す。
- 解析:両パネルとも JSON.parse できる必要があります。構文/コンパイルエラーは検証失敗と分けて表示します。
- 検証:allErrors ですべての失敗を集めます。各行は instancePath + message(必要なら missingProperty)。
- Draft:既定は draft-07。ここでは 2020-12 の語彙を前提にしないでください。
- プライバシー:貼り付けはタブ内。CDN は Ajv コードのみ取得します。
例
Schema は sku(文字列)と price(0 以上の数値)を必須にします。成功例: {"sku":"A-1","price":9.5}。失敗例: {"sku":"A-1"} — ルート (/) で price の missingProperty が出ます。
こんなときに
- AI / エージェント:モデルの構造化 JSON に欠けたフィールドがないか、パイプライン投入前に確認する。
- 商用 feed:商品 JSON を Schema で検証してから取り込む。
- API 調査:契約から抜いた Schema 断片にリクエスト/レスポンス本体を貼って照合する。
Frequently asked questions
なぜ検証に失敗しますか?
よくある原因は required 不足、型の不一致、additionalProperties:false です。Pointer 行とキーワードの説明を見てください。
JSON Pointer エラーの読み方は?
instancePath はインスタンスへの JSON Pointer です(空は /)。required 欠落時は params に missingProperty も付きます。
このページの draft は?
本ページは Ajv の draft-07 を使います。2019-09 / 2020-12 は別ビルドが必要で、ここでは選べません。
JSON はブラウザの外に出ますか?
Schema と JSON はアップロードされません。CDN は Ajv のコードだけを取得します。
LLM の構造化出力をどう確認しますか?
Schema とモデル JSON を貼って検証し、各 Pointer を直して通るまで繰り返します。構造化出力を下流に渡す前の確認向きです。
お問い合わせ・フィードバック
分かりにくい点、不具合、不足があれば下にメッセージを書いてください。ツールに関する内容はすべて確認します。