
Références de données
JSON Pointer : désigner le bon champ d’un catalogue
Un chemin de champ doit désigner une valeur précise sans perdre les caractères de sa clé. JSON Pointer fournit une syntaxe de référence ; il ne transforme pas la valeur et ne garantit pas la stabilité d’un index après modification.
Source et portée du repère
La RFC 6901 définit une syntaxe pour référencer une valeur JSON, avec les échappements ~0 pour le tilde et ~1 pour la barre oblique.
RFC 6901 : JSON Pointer — consultée le . Syntaxe de référence ; aucun mapping métier ni mise à jour automatique du catalogue n’est exécuté.
Les contrôles qui suivent constituent une méthode éditoriale de Performance Voyage. Ils ne rapportent aucune opération exécutée sur un compte fournisseur.
Relier le chemin à une version d’objet
Conservez le document source fictif et le champ que vous voulez désigner. Un chemin comme /rooms/0/name utilise la position d’une valeur, pas l’identité durable d’une chambre. La recette doit expliquer le besoin du mapping avant de le transmettre. Elle garde la valeur attendue dans le contexte de cette version plutôt qu’une chaîne de chemin isolée.
Lire les caractères réservés dans les clés
Si une clé contient une barre oblique ou un tilde, le chemin doit conserver leur représentation prévue par la syntaxe. Comparez la clé exacte et la valeur obtenue sur une fixture privée. Une référence vide n’a pas le même rôle qu’une clé vide. Le contrôle évite les remplacements de texte improvisés qui changeraient le nom réellement adressé.
Préparer les erreurs et changements de structure
Une référence absente doit produire une décision explicite dans le mapping, sans devenir un zéro ou une chaîne vide par défaut. Si la liste est réordonnée, relisez le champ pointé et la logique d’identité métier. Le registre conserve erreur, valeur attendue et prochaine action. Le chemin sert à localiser une preuve ; il ne suffit pas à certifier le sens de la donnée.
Deux cas fictifs à faire rapprocher
La barre oblique est prise pour un niveau supplémentaire
Scénario fictif : une clé contenant room/name est découpée en deux niveaux. Comparez la clé et le chemin échappé. Le résultat attendu doit pointer la valeur de la clé complète.
La première chambre change après tri
Scénario fictif : un mapping reprend /rooms/0/name après réordonnancement et vise un autre objet. Faites distinguer index et identité de chambre. La correction du mapping doit conserver le besoin initial.
Conserver les preuves et la prochaine décision
| Point | Preuve à retrouver | Contrôle proposé |
|---|---|---|
| Document | Version de fixture | Fixer le contexte. |
| Besoin | Champ métier attendu | Définir la preuve. |
| Chemin | JSON Pointer transmis | Lire la référence. |
| Clé | Nom exact et échappements | Préserver les caractères. |
| Index | Position du tableau | Écarter une identité supposée. |
| Valeur | Résultat attendu et obtenu | Rapprocher la cible. |
| Erreur | Référence absente ou invalide | Attribuer le traitement. |
| Changement | Structure ou ordre nouveaux | Relire le mapping. |
Le chemin pointe une valeur comprise dans sa version source. Clés, échappements et positions sont rapprochés ; une absence ou un changement de liste garde un traitement explicite.
Erreurs à éviter
- Découper une barre oblique de clé.
- Lire un index comme identité durable.
- Remplacer une référence absente par zéro.
La fiche de contrôle permet de suivre les huit points. Le registre associé peut être préparé dans l’atelier avec des références fictives ou anonymisées.
Sources et périmètre des faits documentés
La date de consultation figure avec chaque référence. Les méthodes d’essai et recommandations de ce guide sont éditoriales ; les conditions d’accès et d’usage se vérifient dans la documentation actuelle.
- RFC 6901 : JSON Pointer — Syntaxe de référence ; aucun mapping métier ni mise à jour automatique du catalogue n’est exécuté. (consultée le )
Questions fréquentes
Questions utiles avant de décider
Le chemin transforme-t-il la donnée ?
Il la référence ; la transformation relève du mapping.
Pourquoi garder la version source ?
Structure et ordre peuvent changer le résultat pointé.
Une clé contenant un tilde doit-elle être relue ?
Son échappement et sa valeur doivent être vérifiés.