JSON Terminology

A JSON text is either an object, { "a" : 5 } or an array e.g. [1, 2, 3]. A JSON value is either a JSON text or JSON Simple type where a JSON Simple type is either a JSON literal, a number, a string. A JSON literal is false, null or true. The literals false and true are called Booleans. A number may be either an integer or a floating point number. There is no limit on the precision or size of numbers, but as soon as they are converted to another representation, the limitation of that representation must of course be respected. For example, if an integer is extracted to an integer variable then the value must be between -263 and 263-1; otherwise the extraction step will produce an error. JSON strings must start and end with a double quotation mark (") and may contain any Unicode character except ", \ or control character (these characters may be escaped using \, such as \", \\ and \r. The JSON format is described in RFC 4627 on the https://www.ietf.org website.

JSON Syntax

JSON Text = JSON Object | JSON Array

JSON Object = {} | { Properties }

JSON Array = [] | [items ]

Properties = Property,Properties

Property = String :JSON Value

Items = JSON Value,Items JSON Value = JSON Text | String | Number | false | null | true

String = "" | "Characters "

Characters = Character Characters

Character = any Unicode character except ", \ or control character | \" | \\ | \/ | \b | \f | \n | \r | \t | \u 4 hex digitsNumber = a number very much like a C or Java number