JavaScript Object Notation (JSON) est un format de données textuel dérivé de la notation des objets du langage JavaScript. Il concurrence XML pour la représentation et la transmission d’information structurée. Créé par Douglas Crockford entre 2002 et 2005, la première norme du JSON est ECMA-404 d'Ecma International qui a été publiée en octobre 2003. Il est également décrit en 2017 par la RFC 8259 de l’Internet Engineering Task Force qui se veut compatible avec Ecma-404 et ECMA-404. Des bibliothèques pour le format JSON existent dans de nombreux langages de programmation. Un texte en JSON comprend : deux types composés : des objets JavaScript, ou ensembles de paires « nom » (ou « clé ») / « valeur ». des listes ordonnées de valeurs (tableau) . quatre types scalaires : des booléens : prend la valeur true ou false. des nombres : un nombre décimal signé qui peut contenir une part fractionnable ou élevée à la puissance. Le JSON n'admet pas les nombres inexistants (NaN), et ne distingue pas les entiers et les flottants. des chaînes de caractères : une séquence de 0 ou plus caractères Unicode. À l'instar des clés, elles sont obligatoirement entourées de guillemets. la valeur null : qualifie l'absence de valeur. Chacun de ces types peut être utilisé pour constituer un document. Exemple de texte au format JSON : { "menu": { "id": "file", "value": "File", "popup": { "menuitem": [ { "value": "New", "onclick": "CreateNewDoc()" }, { "value": "Open", "onclick": "OpenDoc()" }, { "value": "Close", "onclick": "CloseDoc()" } ] } } } Équivalent au format XML :
Équivalent au format YAML : menu: id: file value: File popup: menuitem: value: New onclick: CreateNewDoc() value: Open onclick: OpenDoc() value: Close onclick: CloseDoc() Par définition, JSON est un format d'échange de données (data interchange format).
Brice Tanguy Alphonse Lecampion, Carlo Peruzzo, Seyyedmaalek Momeni, Fatima-Ezzahra Moukhtari, Guanyi Lu
Henry Markram, Sean Lewis Hill, Mohameth François Sy, Samuel Claude Kerrien, Carolina Johanna Elisabeth Lindqvist, Alejandra Garcia Rojas Martinez, Huanxiang Lu, Anna-Kristin Kaufmann, Jonathan Raël Lurie, Henry Genet, Pierre-Alexandre Fonta, Alexander Désiré Ulbrich, Michaël Fernand Paul Dupont, Silvia Rosario Jimenez Tejeda, Bogdan Roman, Ian Lavriushev, Didac Montero Mendez, Wojciech Adam Wajerowicz, Kenneth William Pirman, Julien Antonin Machon, Dhanesh Neela Mana, Natalia Stafeeva
Bryan Alexander Ford, Verónica del Carmen Estrada Galiñanes, Pierluca Borsò, Kelong Cong, Georgia Fragkouli, Enis Ceyhun Alp, Cristina Basescu, Gaylor Bosson