JSON メッセージは、名前と値のペア (オブジェクト)、および値の順序付きコレクション (配列) で構成されます。 オブジェクト、配列、または両方の構造をネストできます。
JSON の詳細については、JavaScript Object Notation (JSON) の Web サイトを参照してください。
JSON メッセージでは、オブジェクトは左中括弧 ({) で始まり、右中括弧 (}) で終わる、コンマ区切りの名前と値のペアの非順序セットです。 各名前には、コロン (:) が続きます。
JSON オブジェクト .-,--------------------. V | >>---{--------string--:--value---+----}------------------------><
JSON 配列は、左大括弧 ([) で始まり、右大括弧 (]) で終わるコンマ区切り値の順序付きコレクションです。
JSON 配列 .-,---------. V | >>---[--------value---+----]-----------------------------------><
JSON 値 >>-+-string-+-------------------------------------------------->< +-number-+ +-object-+ +-array--+ +-true---+ +-false--+ '-null---'
JSON ストリングは C または Java™ ストリングに非常に似ています。 ストリングは、二重引用符でラップされた、円記号エスケープを使用するゼロ以上の Unicode 文字のコレクションです。 文字は、単一の文字ストリングとして表現されます。
JSON ストリング >>---"----------------------------------------------------------> >--+------------------------------------------------------------+--> +-Any UNICODE character except " or ¥ or a control character-+ '-+------------------------------+---------------------------' +-\----------------------------+ '-+-“ (quotation mark)-------+-' +-¥¥ (backslash)-----------+ +-/ (forward slash)--------+ +-b (backspace)------------+ +-f (formfeed)-------------+ +-n (newline)--------------+ +-r (carriage return)------+ +-t (horizontal tab)-------+ '-u (4 hexadecimal digits)-' >----"---------------------------------------------------------><
JSON 数値は、8 進形式と 16 進形式が使用されないという点を除いては、C または Java 数値と同じです。
JSON 数値 .---------------. V | >>-+----+----+-0---------+-+--+-------------------+-------------> '- --' '-digit 1-9-' +- -----------------+ | .---------------. | | V | | '-----digit 0-9---+-' >--+-------------------+--------------------------------------->< +-e-----------------+ +-E-----------------+ +-+-+--+------------+ | '- --' | | .---------------. | | V | | '-----digit 0-9---+-'
トークンのいずれのペアの間にも空白文字を挿入できます。