Programming

JSON (JavaScript Object Notation)

In computing, JavaScript Object Notation (JSON) is an open-standard file format that uses human-readable text to transmit data objects consisting of attribute–value pairs and array data types (or any other serializable value). It is a very common data format used for asynchronous browser–server communication, including as a replacement for XML in some AJAX-style systems.

JSON is a language-independent data format. It was derived from JavaScript, but as of 2017, many programming languages include code to generate and parse JSON-format data. The official Internet media type for JSON is application/json. JSON filenames use the extension .json.

Douglas Crockford originally specified the JSON format in the early 2000s; it was standardized in 2013 in RFC 7158 and ECMA-404. The latest RFC 8259 JSON format standard was published in 2017, and remains consistent with ECMA-404. The ECMA standard describes only the allowed syntax, whereas the RFC covers some security and interoperability considerations.

A restricted profile of JSON, known as I-JSON (short for “Internet JSON”), seeks to overcome some of the interoperability problems with JSON. It is defined in RFC 7493.

Related Articles