In den frühen 2000er Jahren mussten Webanwendungen strukturierte Daten zwischen Servern und Browsern übertragen. XML hatte Schwung, war aber verbose und benötigte Parser und Schemata; die Arbeit damit in JavaScript war mühsam, und genau dort mussten die Daten letztlich ankommen.
Douglas Crockford spezifizierte JSON als leichtgewichtiges Format, das auf den zwei universellen Strukturen aufbaut – Name/Wert-Objekten und geordneten Listen – und es bewusst auf eine Teilmenge des JavaScript Programming Language Standard (ECMA-262, 3. Auflage) stützte. Ein Browser konnte es daher nativ parsen, und die Spezifikation auf json.org wurde offen veröffentlicht, damit jeder sie implementieren konnte.
JSON verbreitete sich zuerst unter Erstellern von Web-APIs, dann überall. Im Jahr 2017 veröffentlichte die IETF RFC 8259, The JavaScript Object Notation (JSON) Data Interchange Format, der es als vom ECMAScript Programming Language Standard abgeleitet beschreibt, und es wurde zum Standardformat für den Datenaustausch von Webdiensten.
Eine Teilmenge der Sprache sein, die dich liest
Die native JavaScript-Syntax bedeutete, dass der wichtigste Client es ohne zusätzliche Maschinerie parste.
Die beiden Datenstrukturen bilden direkt die Objekte und Arrays jeder gängigen Sprache ab.
Eine offene, einfache Spezifikation beseitigte Lizenz- und Lernbarrieren.
Das siegreiche Format senkt die Kosten der allerersten Integration: Indem es die native Syntax des dominierenden Konsumenten traf, machte JSON das erste Parsen im Browser kostenlos, und jede spätere Portierung folgte.
RFC 8259 formalisierte JSON im Jahr 2017 als IETF-Standard, und praktisch jede Programmiersprache liefert einen Parser mit. Es wurde zur Standardnutzlast für Web-APIs und zum Modell für eine Generation von NoSQL-Dokumentspeichern, während sich XML in dokumentzentrierte Nischen zurückzog.
DEN BELEGEN FOLGEN
Die Quellen
- RFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format IETF · datatracker.ietf.org
- Introducing JSON (json.org) JSON.org · json.org