Datenbanken Online Lexikon TH Köln, Campus Gummersbach
Aktuelle Änderungen - Suchen:

JSON

Beschreibung

JSON ist die Abk�rzung f�r JavaScript Object Notation und kommt urspr�nglich aus dem Kontext der JavaScript-Programmiersprache. Es handelt sich dabei um ein schlichtes, kompaktes, aber vollst�ndiges Datenaustauschformat f�r den effizienten Austausch von Informationen zwischen Anwendungen. Obwohl es einem textbasierten Formatismus gehorcht, welcher zwangsl�ufig eine gewisse Spachunabh�ngigkeit mit sich bringt, h�lt es sich an Konventionen, die denen der C-Family -Programmiersprachen (unter anderem: C, C++, C#, Java, JavaScript, Perl, Python), sehr �hnlich sind. Dieses Verhalten macht JSON zu einer idealen Br�cke im Datenaustausch.

Charakteristisch ist auch die hierarchische Modellierung elementarer Daten zu komplexen semistrukturierten Datenstrukturen, wobei der Grad der Strukturierung sehr einfach an den jeweiligen Anwendungsfall angepasst werden kann [Flo05].

Unstrukturierte und schemalose Informationen machen heutzutage einen nennenswerten Teil der Gesamtinformationen aus und �bersteigen das Leistungspotential der Abbildung durch relationaler Datenbanken. Durch Datenformate wie JSON (oder z.B. XML) ist man dem Bed�rfnis nach mehr Flexibilit�t in einer "relationalen Welt", in der nicht mehr alles in die vorgegeben Formen passt, nachgekommen und hat geantwortet.

Ein weiterer Vorteil liegt in der einfachen Handhabung von JSON: Es ist sowohl f�r einen Menschen gut lesbar, als auch von einem Computer direkt verarbeitbar. JSON-Objekte werden zur Daten�bertragung genutzt. Im Fall von CouchDB und anderen dokumentenorientierten Datenbanken auch zur Datenspeicherung.

Sprachaufbau

JSON ist auf zwei grundlegende Strukturen gegr�ndet:

  • Eine Sammlung von NAME/VALUE-Paaren.
  • Eine geordnete Liste von VALUES.

Beides kommt in heutigen Programmiersprachen vor und ist daher universell einsetzbar. In JSON werden die in JavaScript vorhandenen Basisdatentypen unterst�tzt.
Die nachfolgende rekursive? Strukturbeschreibung soll den Aufbau verdeutlichen:

Object


Objekt-Bildungsvorschrift (Quelle: http://www.json.org/)

Ein Objekt ist eine ungeordnete Anordnung von NAME/VALUE-Pairs und die Grundlage eines jeden JSON-Dokuments.

object
{ }
{ members }


Members

members
pair
pair, members


Pair

pair
string: value



Array-Bildungsvorschrift (Quelle: http://www.json.org/)

Array

object
[ ]
[ elements ]


Elements


Value-Bildungsvorschrift (Quelle: http://www.json.org/)
elements
value
value, elements


Value

  • object
  • array
  • string
  • number
  • true
  • false
  • null



Typaufbau

Nachfolgend sollen auch noch der Aufbau der zwei Basisdatentypen String und Number dargestellt werden.

String


String-Bildungsvorschrift (Quelle: http://www.json.org/)

A string is a sequence of zero or more Unicode characters, wrapped in double quotes, using backslash escapes. A character is represented as a single character string. A string is very much like a C or Java string.





















Number


Number-Bildungsvorschrift (Quelle: http://www.json.org/)

A number is very much like a C or Java number, except that the octal and hexadecimal formats are not used.
















Beispiel

Hier ein beispielhaftes JSON-Objekt mit NAME/VALUE-Pairs, MEMBERS und einem ARRAY:

{

  "Herausgeber": "Xema",
  "Nummer": "1234-5678-9012-3456",
  "Deckung": 2e+6,
  "W�hrung": "EURO",
  "Inhaber": {
    "Name": "Mustermann",
    "Vorname": "Max",
    "m�nnlich": true,
    "Hobbys": [ "Reiten", "Golfen", "Lesen" ],
    "Alter": 42,
    "Kinder": [],
    "Partner": null
  }

}

Kategorien: Neue DB-Entwicklungen, Dokument-DB, NoSQL, !BSON, J

Quellen: