Un mensaje JSON consta de pares de nombre-valor (objetos) y colecciones ordenadas de valores (matrices). Los objetos, matrices, o ambas estructuras pueden estar anidadas.
Para obtener información más detallada acerca de JSON, consulte el sitio web de JavaScript Object Notation (JSON).
En un mensaje JSON, un objeto es un conjunto desordenado de pares de nombre-valor separados por comas que comienza con una llave izquierda ({) y termina con una llave derecha (}). Cada nombre va seguido de un signo de dos puntos (:).
Objeto JSON .-,-------------------. V | >>---{--------serie--:--valor---+----}-------------------------><
Una matriz JSON es una colección ordenada de valores separados por comas que comienza con un corchete izquierdo ([) y termina con un corchete derecho (]).
Matriz JSON .-,---------. V | >>---[--------valor---+----]-----------------------------------><
Valor JSON >>-+-serie--+-------------------------------------------------->< +-número-+ +-objeto-+ +-matriz-+ +-true---+ +-false--+ '-nulo---'
Una serie JSON es muy similar a una serie C o Java™. Una serie es una colección de cero o más caracteres Unicode, envueltos entre comillas dobles, utilizando barras invertidas como caracteres de escape. Un carácter se representa como una serie de un solo carácter.
Serie JSON >>---"----------------------------------------------------------> >--+-------------------------------------------------------------------+--> +-Cualquier carácter UNICODE excepto " o \ o un carácter de control-+ '-+---------------------------------+-------------------------------' +-\-------------------------------+ '-+-“ (comillas)----------------+-' +-\\ (barra invertida)--------+ +-/ (barra inclinada)---------+ +-b (retroceso)---------------+ +-f (alimentación de papel)---+ +-n (línea nueva)-------------+ +-r (retorno de carro)--------+ +-t (tabulación horizontal)---+ '-u (4 dígitos hexadecimales)-' >----"---------------------------------------------------------><
Un número JSON es lo mismo que un número C o Java, excepto que los formatos octales y hexadecimales no se utilizan.
Número JSON .-------------------. V | >>-+---+----+-0-------------+-+--+--------------------------+---> '-−-' '-dígito de 1-9-' +-−------------------------+ | .----------------------. | | V | | '-----dígito entre 0-9---+-' >--+--------------------------+-------------------------------->< +-e------------------------+ +-E------------------------+ +-+-+-+--------------------+ | '-−-' | | .----------------------. | | V | | '-----dígito entre 0-9---+-'
Se puede insertar un espacio en blanco entre cualquier par de señales.