入れ子の中の重複と、値が同じ重複

ユーザー情報の中で同じ値の id が重なり、商品の配列の 2 つ目の要素では sku の値が違う例です。値が同じ重複は情報、違う重複は警告に分かれ、パスで場所を示します。

入力

JSON

{
  "user": {
    "id": 1,
    "id": 1
  },
  "items": [
    { "sku": "A" },
    { "sku": "B", "sku": "C" }
  ]
}

大文字・小文字だけが違う項目名(Name と name など)も同じとみなして探す

いいえ

結果

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

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

  • 情報 3 行 5 列(ほか 4 行 5 列) $.user に項目名「id」が 2 回あります。値はすべて同じですが、読み込む側によって後の値だけを使う・エラーにする・すべて残すと分かれます(RFC 8259 4 節)。不要な方を消すか、名前を変えてください。
  • 警告 8 行 7 列(ほか 8 行 19 列) $.items[1] に項目名「sku」が 2 回あります。値が違うため、読み込む側によって後の値だけを使う・エラーにする・すべて残すと分かれます(RFC 8259 4 節)。不要な方を消すか、名前を変えてください。
判定重複あり(2 件の項目名)
調べたオブジェクト4 個(項目名 合計 7 個)
重複のあるオブジェクト2 個
値が食い違う重複1 件

重複した項目名の一覧

重複した項目名の一覧
場所(パス)項目名回数位置(行:列)値(先頭の 28 文字まで)
$.userid2 回3:5 、 4:51 つ目 1 | 2 つ目 1
$.items[1]sku2 回8:7 、 8:191 つ目 "B" | 2 つ目 "C"

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

$.user の id は 3 行 5 列と 4 行 5 列で値がどちらも 1 なので情報、$.items[1] の sku は 8 行 7 列と 8 行 19 列で値が B と C と違うので警告です。$.items[0] の sku は 1 回だけなので重複ではありません。

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

このツールの制約

ご利用にあたって

  • 検査は JSON の構文と項目名の重複に限ります。読み込む側のソフトが独自の制限や挙動を持つ場合があります。
  • 大きな JSON はお使いの端末の性能によって処理に時間がかかることがあります。

ほかの入力例