Zum Inhalt springen
YellowBlue
IT-Grundlagen4 Min. Lesezeit

JSON und XML: Datenformate im Vergleich

Kurzantwort

JSON und XML sind Textformate, um strukturierte Daten zwischen Systemen auszutauschen. JSON ist kompakt und schnell zu verarbeiten und deshalb bei Web-APIs Standard. XML ist ausführlicher, dafür streng prüfbar über Schemata und in vielen Unternehmensanwendungen etabliert. Beide sind für Menschen lesbar und unabhängig von Programmiersprache und Betriebssystem.

Teil des Lernpfads Programmieren und Softwareentwicklung · Schritt 16 von 18

Zwei Systeme sollen Daten austauschen – aber wie beschreibt man „ein Azubi heißt Aylin, ist im zweiten Lehrjahr und lernt IT-Systemkauffrau" so, dass beide Seiten es verstehen? Dafür gibt es Datenformate. Die zwei wichtigsten sind JSON und XML.

Warum überhaupt ein Datenformat?

Zwei Programme können nicht einfach ihren Arbeitsspeicher austauschen – sie sind womöglich in verschiedenen Sprachen geschrieben und laufen auf verschiedenen Systemen. Also einigt man sich auf ein Textformat mit festen Regeln, das beide lesen und schreiben können.

JSON

JSON (JavaScript Object Notation) beschreibt Daten als Schlüssel-Wert-Paare in geschweiften Klammern, Listen in eckigen:

{
  "name": "Aylin",
  "lehrjahr": 2,
  "beruf": "IT-Systemkauffrau",
  "kurse": ["Netzwerke", "Kalkulation"]
}

Das ist knapp, sofort verständlich und schnell zu verarbeiten – deshalb ist JSON bei Web-APIs heute der Standard.

XML

XML (Extensible Markup Language) beschreibt dieselben Daten mit öffnenden und schließenden Tags, ähnlich wie HTML:

<azubi>
  <name>Aylin</name>
  <lehrjahr>2</lehrjahr>
  <beruf>IT-Systemkauffrau</beruf>
  <kurse>
    <kurs>Netzwerke</kurs>
    <kurs>Kalkulation</kurs>
  </kurse>
</azubi>

Deutlich ausführlicher – dafür lässt sich mit einem Schema (XSD) exakt festlegen, welche Elemente erlaubt sind, und jedes Dokument automatisch dagegen prüfen.

Der direkte Vergleich

MerkmalJSONXML
SchreibweiseSchlüssel-Wert-PaareTags
Umfangkompaktausführlicher
Lesbarkeitsehr gutgut
Prüfung gegen Schemamöglich, unüblichStandard (XSD)
Kommentarenicht vorgesehenmöglich
Typisch fürWeb-APIs, KonfigurationUnternehmens- und Behördensysteme

Wann nimmt man was?

Selbstkontrolle

Selbstkontrolle

Welcher Vorteil spricht besonders für XML gegenüber JSON?

Häufige Fragen

Ist JSON nur für JavaScript?

Nein. Der Name kommt aus JavaScript, weil die Schreibweise dort entlehnt ist, aber JSON ist ein sprachunabhängiges Textformat. Praktisch jede Programmiersprache kann JSON lesen und schreiben, meist mit Bordmitteln oder einer Standardbibliothek.

Was ist ein XML-Schema?

Ein Schema, meist als XSD-Datei, beschreibt den erlaubten Aufbau eines XML-Dokuments: welche Elemente vorkommen dürfen, in welcher Reihenfolge, wie oft und mit welchem Datentyp. Damit lässt sich automatisch prüfen, ob ein Dokument gültig ist, bevor es weiterverarbeitet wird.

Wo liegt der Unterschied zwischen XML und HTML?

HTML hat einen festen Satz vorgegebener Tags und dient der Darstellung von Inhalten im Browser. XML gibt keine Tags vor, sondern erlaubt eigene: Es dient der Beschreibung und dem Austausch von Daten, nicht ihrer Darstellung. Beide nutzen aber dieselbe Tag-Schreibweise.

Wann eignet sich CSV besser?

CSV eignet sich für einfache, tabellarische Daten ohne Verschachtelung, etwa Exporte aus einer Tabellenkalkulation. Es ist extrem kompakt und von fast jedem Programm lesbar. Sobald Daten aber hierarchisch werden, etwa ein Azubi mit mehreren Kursen, stößt CSV an seine Grenzen und JSON oder XML sind die bessere Wahl.

Weiterlesen: Zeichensatzkodierung: ASCII, Unicode und UTF-8 · Datenanalyse: von Rohdaten zur Erkenntnis · Client-Server-Modell einfach erklärt · Datenstrukturen: Array, Liste, Stack und Queue

Das Wichtigste in Kürze

  • JSON und XML sind Textformate zum Austausch strukturierter Daten – plattformunabhängig.
  • JSON: Schlüssel-Wert-Paare, kompakt, Standard bei Web-APIs.
  • XML: Tags, ausführlicher, dafür streng prüfbar über ein Schema (XSD).
  • Für einfache Tabellen ohne Verschachtelung genügt oft CSV.

Verwandte Beiträge

IT-Grundlagen5 Min. Lesezeit

Lastenheft und Pflichtenheft: der Unterschied

Lastenheft und Pflichtenheft im Vergleich: Wer sie schreibt, was hineingehört, mit Beispiel für dieselbe Anforderung und warum die Prüfung danach fragt.

IT-Grundlagen4 Min. Lesezeit

Was ist eine API? Einfach erklärt

Was eine API ist, wie Programme über Schnittstellen Daten austauschen, was eine REST-API ausmacht und warum APIs das Rückgrat moderner Software sind.

IT-Grundlagen4 Min. Lesezeit

Zeichensatzkodierung: ASCII, Unicode und UTF-8

Zeichensatzkodierung einfach erklärt: Was ASCII, Unicode und UTF-8 unterscheidet und warum Umlaute manchmal zu Fragezeichen werden – mit Fehlerbehebung.