スキーマと型

JSONスキーマ差分変更がどちらに響くかを確認

新旧のJSON Schemaを貼り付けるか例を読み込み、データの生産側と受け取り側を選びます。

JSONスキーマ差分

旧版JSON Schema

新版JSON Schema

二つのスキーマはブラウザー内で処理します。入力も参照URLも送信しません。

検証設定

手動検証の準備ができました。

差分

保存済みのデータが旧版に従うまま、読み手だけが更新されることがあります。JSONスキーマ差分は文字の差ではなく受け入れる値の変化を示します。

旧アプリが新データを読む場合は逆方向に切り替えます。JSONスキーマ差分では、任意項目の追加と必須項目の追加を同じ結論にまとめません。

JSONスキーマ差分を使う理由

同じ変更でもデータの流れを逆にするとリスクが変わります。

データの向きを明示

旧生産者から新消費者への流れが初期値です。逆向きや双方向にすると、追加した必須項目がどちらの利用者に響くかを分けて表示します。

二つのスキーマの木から逆向きの矢印が伸び、一方にリスクの印が付いている。

未判定を隠さない

JSONスキーマ差分は$refや複合条件の位置を要確認として残します。解析していない規則に安全という結論を付けません。

二枚のスキーマカードの参照枝と、別に置いた要確認の印。

向きと経路を先に読む

01

生産側を選ぶ

初期値は旧データ→新スキーマです。旧システムが新データを受け取るなら逆方向にし、必要なら双方向の集計を並べます。

02

変更位置をたどる

必須名は/required、型は/properties以下にJSON Pointerで表示されます。リスクだけ表示しても要確認項目は残ります。

03

更新後に再実行する

本文または方向を変えると以前の結果は古くなり、出力できません。Ctrl/Cmd+Enterでもう一度比較してください。

契約の変化を構造で見る

必須と型

JSONスキーマ比較ではrequiredの増減と型の許容集合を分けて調べます。必須項目の変更が古い記録に与える影響を追えます。

列挙値と数値の範囲

JSON Schema互換性の確認ではenumの順序を無視して集合を比べ、長さや数値の制約が厳しくなる向きを示します。

レビュー用の記録

スキーマの破壊的変更の候補を経路と旧値・新値で並べます。JSON形式の全件報告を保存できます。

結論の届く範囲

完全な証明ではない
JSONスキーマ差分が「リスクなし」と示すのは対象規則に限ります。全インスタンスやアプリ固有の処理を証明するものではありません。
参照を取りに行かない
$refやoneOfの意味を展開しません。URLへの通信も行わず、変化や関係する経路を要確認として残します。
propertiesだけでは必須でない
定義を一つ追加してもrequiredに入れなければ存在は必須ではありません。additionalPropertiesなどもあるため、追加は要確認です。

JSONスキーマ差分のよくある質問

このJSONスキーマチェッカーはどのような差分モードをサポートしていますか?

旧版と新版の構造・制約の差を読み、選んだデータ方向のリスクを付けます。テキスト比較モードはありません。

正規化モードはスキーマのキー順序を無視しますか?

はい。オブジェクトのキー順、requiredやenumの並べ順だけでは差分にしません。

$refが多いスキーマでも役立ちますか?

$refの経路は表示しますが、参照先を解決しません。外部URLにもアクセスしないため手動確認が必要です。

JSON比較と普通のテキスト比較は何が違いますか?

JSON比較は値の構造を、テキスト比較は文字列を比べます。本ツールはさらに一部の制約の向きを示します。

データは送信されますか?どのくらいのサイズまで比較できますか?

送信しません。各入力は50万文字、合計100万文字までで、超過時は途中の結論を出しません。

確認したいスキーマの例がありますか?

JSONスキーマ差分を今すぐ確認

両版を手元に置いてデータの流れを選び、変更経路を確認します。JSONスキーマ差分の報告はリリース審査にも残せます。