← Zur Übersicht
AP2-09 · AP2 — Teil 2

Datenintegration & Austauschformate

Warum Systeme Daten austauschen müssen

In einem Unternehmen laufen selten alle Prozesse in einer einzigen Anwendung. Die Warenwirtschaft führt Bestände und Bestellungen, das CRM-System verwaltet Kundenkontakte, ein Monitoring-System überwacht Server und Dienste, dazu kommen Buchhaltungssoftware, Ticketsysteme oder Webshops. Damit diese Systeme sinnvoll zusammenarbeiten können — z. B. damit eine im Webshop eingegangene Bestellung automatisch im Warenwirtschaftssystem auftaucht — müssen sie Daten strukturiert austauschen können.

Würde jedes System sein eigenes, proprietäres Format verwenden, müsste für jede Verbindung zweier Systeme eine eigene, oft aufwendige Sonderlösung entwickelt werden. Das führt zu Insellösungen, die schwer wartbar sind, bei jedem Softwarewechsel neu gebaut werden müssen und die Fehleranfälligkeit erhöhen. Standardisierte Austauschformate wie JSON, XML und CSV lösen dieses Problem: Sie sind herstellerunabhängig, weit verbreitet und werden von nahezu jeder Programmiersprache und jedem System unterstützt. Ein System muss nur einmal lernen, ein Standardformat zu lesen und zu schreiben, statt für jeden Partner ein eigenes proprietäres Protokoll zu implementieren.

Prüfungstipp

In AP2-Aufgaben wird häufig nach dem Vorteil standardisierter Formate gegenüber proprietären Lösungen gefragt. Nenne konkret: Herstellerunabhängigkeit, geringerer Integrationsaufwand, bessere Wartbarkeit und breite Werkzeugunterstützung (Parser, Validatoren, Bibliotheken in jeder gängigen Sprache).

JSON — JavaScript Object Notation

JSON ist ein textbasiertes, leichtgewichtiges Format, das Daten als Schlüssel-Wert-Paare darstellt. Werte können einfache Datentypen (Zeichenketten, Zahlen, Booleans, null) sein, aber auch verschachtelte Objekte oder Arrays (Listen) enthalten — dadurch lassen sich beliebig tiefe, hierarchische Strukturen abbilden:

{"kunde": {"name": "Meier GmbH", "aktiv": true, "bestellungen": [{"id": 1023, "betrag": 249.90}, {"id": 1024, "betrag": 89.00}]}}

JSON ist heute das dominierende Format für den Datenaustausch über Web-APIs: Webanwendungen, mobile Apps und Microservices tauschen ihre Daten fast durchgängig im JSON-Format aus, da es kompakt, gut lesbar und in praktisch jeder Programmiersprache ohne großen Aufwand zu verarbeiten ist.

XML — Extensible Markup Language

XML strukturiert Daten über selbstdefinierte, öffnende und schließende Tags, die zusätzlich Attribute tragen können. Wie JSON ist XML hierarchisch aufgebaut, wirkt aber durch die Tag-Syntax deutlich ausführlicher:

<kunde aktiv="true"><name>Meier GmbH</name><bestellung id="1023"><betrag>249.90</betrag></bestellung></kunde>

Ein zentraler Vorteil von XML ist die Möglichkeit zur Schemavalidierung: Über ein XSD (XML Schema Definition) lässt sich formal festlegen, welche Elemente, Attribute, Datentypen und Reihenfolgen ein XML-Dokument enthalten darf oder muss. Ein eingehendes Dokument kann automatisiert gegen dieses Schema geprüft werden, bevor es weiterverarbeitet wird — das macht XML besonders robust für Szenarien mit hohen Anforderungen an Datenqualität und Nachvollziehbarkeit. Typische Einsatzgebiete sind daher Konfigurationsdateien sowie die Unternehmensintegration, etwa im elektronischen Geschäftsdatenaustausch (EDI) zwischen Firmen, z. B. für Bestellungen und Rechnungen.

CSV — Comma-Separated Values

CSV bildet Daten als einfache Textdatei ab: Jede Zeile entspricht einem Datensatz, die Spalten innerhalb einer Zeile werden durch ein Trennzeichen (Delimiter) getrennt. Meist steht die erste Zeile als Header mit den Spaltennamen:

id,name,betrag 1023,Meier GmbH,249.90 1024,Schulz AG,89.00

CSV ist sehr kompakt und wird häufig für den Export und Import von Tabellendaten genutzt, etwa zwischen Tabellenkalkulationen, Datenbanken und Reporting-Werkzeugen. In der Praxis gibt es allerdings typische Stolperfallen:

  • Uneinigkeit beim Trennzeichen: International wird meist das Komma , verwendet, im deutschsprachigen Raum aber häufig das Semikolon ;, weil das Komma dort schon als Dezimaltrennzeichen dient. Wird das falsche Trennzeichen erwartet, landen ganze Zeilen in einer einzigen Spalte.
  • Zeichenkodierung: Wird eine mit UTF-8 kodierte Datei fälschlich als ANSI/ISO-8859-1 (oder umgekehrt) gelesen, werden Umlaute und Sonderzeichen falsch dargestellt.
  • Fehlende Typinformation: CSV kennt von Haus aus keine Datentypen — jeder Wert ist zunächst reiner Text. Ob 1023 eine Zahl oder eine Zeichenkette ist und ob 01.02.2026 ein Datum im Format Tag.Monat.Jahr oder Monat.Tag.Jahr meint, muss die einlesende Anwendung selbst interpretieren.

Vergleich & Datenimport mit Validierung

Die folgende Übersicht fasst die wichtigsten Unterschiede der drei Formate zusammen:

FormatLesbarkeitVerschachtelungTypisierungTypischer Einsatz
JSONgut, kompaktbeliebig tiefGrundtypen vorhanden (Zahl, Boolean, String, null)Web-APIs, Microservices
XMLausführlich, aber klarbeliebig tief, mit Schema (XSD) prüfbarüber XSD festlegbar, sonst TextKonfiguration, EDI/Unternehmensintegration
CSVsehr gut bei flachen Tabellenpraktisch keine (nur flache Tabellen)keine, alles ist TextTabellenexport/-import

Egal in welchem Format Daten eintreffen: Bevor sie weiterverarbeitet werden, müssen sie validiert werden. Zu prüfen ist unter anderem, ob das Format überhaupt korrekt und vollständig ist (z. B. gültiges JSON, wohlgeformtes XML), ob alle Pflichtfelder vorhanden sind und ob die enthaltenen Werte plausible Datentypen haben (etwa eine Zahl im Feld „Betrag“ statt eines Textes). Erst nach dieser Prüfung werden die Daten in ein einheitliches internes Zielformat transformiert, mit dem das aufnehmende System intern weiterarbeitet — so bleibt die interne Verarbeitung unabhängig davon, in welchem Format die Daten ursprünglich geliefert wurden.

Den strukturierten Zugriff auf solche Daten stellen Systeme heute meist über APIs (Programmierschnittstellen) bereit. Besonders verbreitet ist die REST-API: eine Schnittstelle, die Ressourcen über feste URLs und HTTP-Methoden (GET, POST, PUT, DELETE) anspricht und die Nutzdaten dabei meist im JSON-Format überträgt.

Prüfungstipp

Wird nach dem Ablauf eines Datenimports gefragt, nenne die drei Schritte in dieser Reihenfolge: 1. Empfang/Format prüfen (syntaktisch korrekt?), 2. Validierung (Pflichtfelder, Datentypen, Plausibilität), 3. Transformation in das interne Zielformat. Diese Reihenfolge wird in AP2-Aufgaben zur Systemintegration regelmäßig erwartet.