3. Syntax (Sintassi)
3. Syntax (Sintassi)
Un JSON Pointer è una stringa Unicode (vedere [RFC4627], Section 3) che contiene una sequenza di zero o più token di riferimento (reference tokens), ciascuno preceduto da un carattere '/' (%x2F).
Poiché i caratteri '' (%x7E) e '/' (%x2F) hanno significati speciali in JSON Pointer, '' deve essere codificato come '~0' e '/' deve essere codificato come '~1' quando questi caratteri appaiono in un token di riferimento.
La sintassi ABNF di un JSON Pointer è:
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
È una condizione di errore (error condition) se un valore JSON Pointer non è conforme a questa sintassi (vedere Section 7).
Si noti che i JSON Pointer sono specificati in caratteri (characters), non come byte.