跳到主要内容

Appendix C. JSON Pointer (JSON 指针)

Appendix C. JSON Pointer (JSON 指针)

本附录为 informative (资料性).

相对于 JSON Pointer [RFC6901], JSONPath 无意取而代之, 而是作为能力更强的配套. 两项标准的目的不同.

JSON Pointer 用于在结构已知的 JSON 值内标识单个值.

JSONPath 可标识 JSON 值内的单个值, 例如通过 Normalized Path. 但 JSONPath 亦是查询语法, 可用于在仅一般性了解结构的 JSON 值中搜索并提取多个值.

Normalized JSONPath 可在不了解任何 JSON 值的情况下仅通过语法转换变为 JSON Pointer. 逆变换一般不成立, 即 JSON Pointer 中的 numeric reference token (路径分量) 可能标识对象的成员值或数组的元素. 转换为 JSONPath 查询时需要了解 JSON 值的结构以区分这两种情况.