Le langage de requête JSONPath en pratique
En 2024, JSONPath a enfin obtenu une norme formelle, la RFC 9535. Cet article explique la syntaxe, la sémantique des filtres, les fonctions et les différences historiques entre implémentations.
Extraire une valeur de JSON ou modifier un champ semble simple, mais une fois normalisé cela devient quatre spécifications : JSONPath, JSON Pointer, JSON Patch et Merge Patch.
5 articlesEn 2024, JSONPath a enfin obtenu une norme formelle, la RFC 9535. Cet article explique la syntaxe, la sémantique des filtres, les fonctions et les différences historiques entre implémentations.
Trois courtes spécifications forment un protocole de modification : Pointer localise, Patch édite précisément, Merge Patch fusionne partiellement. Un mauvais choix nuit aux tableaux et à la concurrence.
La descente récursive, les tranches et les filtres à conditions multiples sont là où JSONPath devient puissant et où on l'utilise à mauvais escient. Sémantique des filtres, forme des résultats et différences entre bibliothèques.
JSON Patch n'est qu'un format de changement ; l'atomicité, l'idempotence et la concurrence restent à votre charge. Préconditions test, échappement des chemins, retour arrière et coordination par ETag.
JMESPath reforme des lots d'objets plus directement que JSONPath. Ce guide débutant couvre la syntaxe, les projections, les pipes, les fonctions intégrées et l'usage dans AWS CLI.