JSON staat voor JavaScript Object Notation. Het is een open standaard bestandsformaat, en een formaat om data uit te wisselen op basis van leesbare tekst. Het is een vaak gebruikt data formaat dat voor vele toepassingen inzetbaar is, waaronder het vervangen van XML in AJAX systemen. Wat is de betekenis van JSON en wat zijn de toepassingsmogelijkheden van dit bestandsformaat?
JavaScript Object Notation werd ontwikkeld door Douglas Crockford aan het begin van het millennium. Het werd gestandaardiseerd in 2013 als ECMA-404. Ook de versie uit 2017 voldoet aan deze standaard. In dat jaar werd ook een ISO standaard uitgegeven onder ISO/IEC 21778:2017. Hierin wordt de toegestane syntax beschreven. JSML was ook een naam die werd overwogen. Crockford voegde een clausule toe aan de gebruikersovereenkomst waarin werd vereist dat de software alleen voor goede zaken gebruikt mocht worden, niet voor slechte zaken. Dit was een sneer naar onder andere advocaten. De JSON standaard is onder een Open Source licentie uitgegeven. In een revisie uit 2019 zijn enkele commando’s die geen onderdeel uitmaken van JavaScript en ECMAScript verwijderd.
Het formaat is ontstaan uit de vraag naar een ‘real time server naar browser protocol’ zonder vaste staat. Er zijn geen browser plugins vereist zoals dit bij Flash en Java applets wel het geval is. De libraries hebben hun oorsprong in een spel voor kinderen genaamd Cartoon Orbit voor Cartoon Network. JSON is gebaseerd op een onderdeel van de JavaScript taal, en wordt ook vaak gebruikt in combinatie met JavaScript. Toch is het een taal onafhankelijk data formaat, dat voor veel programmeertalen beschikbaar is. Er zijn diverse annotaties mogelijk zoals JSONformat of JSONIgnore.
JSON wordt gezien als een alternatief voor XML omdat beide formaten overeenkomstige toepassingen hebben. Ook wordt het formaat regelmatig vergeleken met CSV en YAML of Google Protocol Buffers.