JSONPath クエリ言語の実践
2024 年、JSONPath はついに正式な標準 RFC 9535 を得ました。本記事では構文、フィルタの意味論、関数、実装間の歴史的な違いを解説します。
中級約 12 分で読めます2026-10-30 更新
JSON から値を一つ取り出す、フィールドを一つ変える。単純に見えますが、標準化されると JSONPath、JSON Pointer、JSON Patch、Merge Patch の四つの仕様になります。
5 件の記事2024 年、JSONPath はついに正式な標準 RFC 9535 を得ました。本記事では構文、フィルタの意味論、関数、実装間の歴史的な違いを解説します。
三つの短い仕様が変更プロトコルを構成します。Pointer は位置を特定し、Patch は正確に編集し、Merge Patch は部分的にマージします。選択を誤ると配列と並行性で痛みます。
再帰降下、スライス、複数条件フィルタは、JSONPath が強力になる一方で誤用される箇所です。フィルタの意味論、結果の形、ライブラリ差を扱います。
JSON Patch は変更形式にすぎず、原子性・冪等性・並行性は依然としてあなたの仕事です。test による前提条件、パスのエスケープ、ロールバック、ETag の連携を扱います。
JMESPath はオブジェクトの束を JSONPath より直接的に再形成します。この入門ガイドでは構文、射影、パイプ、組み込み関数、AWS CLI での利用を扱います。