Einführung in JSON |
JSON (JavaScript Object Notation) ist ein schlankes Datenaustauschformat, das für Menschen einfach zu lesen und zu schreiben und für Maschinen einfach zu parsen (Analysieren von Datenstrukturen) und zu generieren ist. Es basiert auf einer Untermenge der JavaScript Programmiersprache, Standard ECMA-262 dritte Edition - Dezember 1999.
Bei JSON handelt es sich um ein Textformat, das komplett unabhängig von Programmiersprachen ist, aber vielen Konventionen folgt, die Programmierern aus der Familie der C-basierten Sprachen (wie z. B. C, C++, C#, Java, JavaScript, Perl, Python und vielen anderen) bekannt sind. Diese Eigenschaften machen JSON zu einem idealen Format für Datenaustausch.
JSON baut auf zwei Strukturen auf:
Hierbei handelt es sich um universelle Datenstrukturen, die von so gut wie allen modernen Programmiersprachen in der einen oder anderen Form unterstützt werden. Es macht also Sinn, dass ein zwischen Programmiersprachen austauschbares Datenformat auch auf diesen Strukturen aufbaut.
In JSON gibt es:
Ojekte: Ein Objekt ist eine ungeordnete Menge von Name/Wert Paaren.
Ein Objekt beginnt mit {
geschwungene Klammer auf und endet
mit }
geschwungene Klammer zu. Jedem Namen folgt
ein :
Doppelpunkt gefolgt vom Wert und die einzelnen Name/Wert
Paare werden durch ,
Komma voneinander getrennt.
Ein Array ist eine geordnete Liste von Werten. Arrays beginnen mit
[
eckige Klammer auf und enden mit ]
eckige
Klammer zu. Werte werden durch ,
Komma voneinander getrennt.
Ein Wert kann ein Objekt, ein Array, eine Zeichenkette (string), eine
Zahl oder einer der Ausdrücke true
, false
oder
null
sein.
Diese Strukturen können ineinander verschachtelt sein.
Eine Zeichenkette besteht aus keinem (leere Zeichenkette) oder mehr Unicode Zeichen und wird von doppelten Anführungszeichen umschlossen. Eine Zeichenkette kann Escape-Sequenzen mit einer besonderen Bedeutung enthalten. Ein einzelnes Zeichen wird durch eine Zeichenkette bestehend aus nur einem einzigen Zeichen dargestellt. Eine Zeichenkette (string) in JSON ist einer Zeichenkette in C oder Java sehr ähnlich.
Eine Zahl in JSON ist einer Zahl in C oder Java sehr ähnlich mit der Ausnahme, dass oktale und hexadezimale Zahlen nicht verwendet werden.
Leerzeichen können zwischen JSON-Elementen beliebig eingefügt werden.
Mit der Ausnahme einiger Details zur Enkodierung beschreibt das die gesamte Sprache.