3. Syntax (構文)
3. Syntax (構文)
JSON Pointer は Unicode 文字列 ([RFC4627], Section 3 を参照) であり, 0 個以上の参照トークン (reference tokens) のシーケンスを含みます。各トークンには '/' (%x2F) 文字がプレフィックスとして付加されます。
文字 '' (%x7E) および '/' (%x2F) は JSON Pointer において特別な意味を持つため, これらの文字が参照トークンに現れる場合, '' は '~0' としてエンコードされ, '/' は '~1' としてエンコードされる必要があります。
JSON Pointer の ABNF 構文は以下のとおりです:
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
JSON Pointer 値がこの構文に適合しない場合, それはエラー状態 (error condition) です (Section 7 を参照)。
JSON Pointer は, バイト (bytes) ではなく文字 (characters) で指定されることに注意してください。