同じ入力を要素ごとに比べる

直前と同じ入力を「要素ごとに比べる」にした例です。2 件目の要素(番号 1)ごと無くなるため、qty の欠損に加えて $.items[1] の欠損が出ます。

入力

旧版の JSON

{"items":[{"sku":"A","qty":1},{"sku":"B"}]}

新版の JSON

{"items":[{"sku":"C"}]}

配列の比べ方

要素ごとに比べる([0]・[1] と番号つき)

結果

エラー 0 件・警告 2 件・情報 0 件

指摘(エラー・警告・情報)

  • 警告 $.items[0].qty 旧版にあった $.items[0].qty が新版にありません。この項目を使っている利用側が壊れるおそれがあります。
  • 警告 $.items[1] 旧版にあった $.items[1] が新版にありません。この項目を使っている利用側が壊れるおそれがあります。
判定欠損 2 件・型変更 0 件
旧版のパス数7 個
新版のパス数4 個
欠損2 件
型変更0 件
追加0 件
配列の扱い要素ごと([0]・[1] と番号つき)に比べる

構造の差(欠損・型変更・追加)

構造の差(欠損・型変更・追加)
パス判定旧版の型新版の型
$.items[0].qty欠損数値(なし)
$.items[1]欠損オブジェクト(なし)

検算(この結果になる理由)

要素ごとに番号を付けると旧版は $.items[0] と $.items[1] を持ち、新版は $.items[0] だけです。$.items[0].qty が欠損、$.items[1] がまるごと欠損で、その下の $.items[1].sku は親が報告済みなので重ねず、警告は 2 件です。

判定の根拠は仕様と根拠に、仕様の出典とともにまとめています。自分の入力で試すにはツールをお使いください。

このツールの制約

ご利用にあたって

  • 比べるのは貼り付けた応答例の構造だけです。実際の API の仕様や互換性の保証ではありません。
  • 大きな JSON はお使いの端末の性能によって処理に時間がかかることがあります。

ほかの入力例