3. Syntax (Syntaxe)
3. Syntax (Syntaxe)
Un JSON Pointer est une chaîne Unicode (voir [RFC4627], Section 3) contenant une séquence de zéro ou plusieurs jetons de référence (reference tokens), chacun préfixé par un caractère '/' (%x2F).
Étant donné que les caractères '' (%x7E) et '/' (%x2F) ont des significations spéciales dans JSON Pointer, '' doit être encodé comme '~0' et '/' doit être encodé comme '~1' lorsque ces caractères apparaissent dans un jeton de référence.
La syntaxe ABNF d'un JSON Pointer est:
json-pointer = *( "/" reference-token )
reference-token = *( unescaped / escaped )
unescaped = %x00-2E / %x30-7D / %x7F-10FFFF
; %x2F ('/') and %x7E ('~') are excluded from 'unescaped'
escaped = "~" ( "0" / "1" )
; representing '~' and '/', respectively
Il s'agit d'une condition d'erreur (error condition) si une valeur JSON Pointer n'est pas conforme à cette syntaxe (voir Section 7).
Notez que les JSON Pointers sont spécifiés en caractères (characters), et non en octets (bytes).