← Alle Beiträge

GAEB-Dateiformate erklärt: GAEB 90, GAEB 2000 und DA XML (X81–X89)

Ein praxisnaher Leitfaden zu GAEB-Dateiformaten – der Unterschied zwischen GAEB 90, GAEB 2000 und GAEB DA XML, was die Austauschphasen X81–X89 bedeuten und woran Sie erkennen, welche Datei Sie haben.

Wer mit deutschen Ausschreibungen arbeitet, kennt GAEB-Dateien — und hat sich vermutlich über mindestens eine geärgert. Sie kommen mit Endungen wie .d83, .x83, .p83 oder .gaeb, und ob die eigene Software sie sauber öffnet, ist oft Glückssache. Dieser Beitrag erklärt, was diese Formate sind, wie sie sich unterscheiden, was die Zahl in der Endung bedeutet und woran Sie in zehn Sekunden erkennen, welche Datei Sie in der Hand haben.

Was GAEB ist

GAEB (Gemeinsamer Ausschuss Elektronik im Bauwesen) ist der deutsche Standard für den Austausch kaufmännischer Baudaten — Leistungsverzeichnisse, Ausschreibungen, Angebote, Aufträge und Rechnungen — zwischen den Beteiligten eines Projekts. Statt ein PDF zu mailen, das anschließend abgetippt werden muss, exportiert die Software des Auftraggebers eine strukturierte Datei, die die Software des Auftragnehmers wieder einliest. So das Versprechen. Die Realität sind drei Generationen des Standards, die nebeneinander weiterleben, jede mit eigener Dateiendung.

Die drei Format-Generationen

GAEB 90 ist das älteste noch verbreitete Format. Es ist ein zeilenbasiertes Format mit festen Feldbreiten — jeder Datensatz sitzt an definierten Zeichenpositionen. Es ist kompakt und eindeutig, sobald man das Layout kennt, kennt aber keine echte Formatierung, keine Langtexte, kein Unicode und verzeiht keine noch so kleine Abweichung. Dateien tragen die Endungen .d81 bis .d89.

GAEB 2000 hat die Struktur modernisiert und reichere Texte und Formatierung eingeführt, ist aber ein Übergangsformat, das man gelegentlich noch aus älteren Kalkulationssystemen erhält. Endungen .p81 bis .p89.

GAEB DA XML ist der aktuelle Standard (DA steht für Datenaustausch). Es bildet dieselben Informationen als XML ab, was deutlich ausdrucksstärker ist — Langtexte, Auszeichnungen, Ausführungsbeschreibungen und Metadaten haben einen sauberen Platz. Endungen .x81 bis .x89, dazu .x31 für Mengen. DA XML hat selbst Versionen — 2.0, 2.1, 3.0, 3.1, 3.2 und seit 2021 3.3 — und eine 3.3-Datei ist nicht dasselbe wie eine 3.1-Datei, auch wenn jedes aktuelle Werkzeug alle liest. Wenn jemand vom „modernen GAEB-Format“ spricht, ist genau das gemeint, und darauf zielen die meisten neuen Werkzeuge zuerst.

Die Falle: Alle drei können dieselbe Ausschreibung beschreiben. Ein und derselbe Hersteller bekommt vom einen Architekten GAEB 90 und vom nächsten DA XML — für funktional identische Leistungen.

Die Austauschphasen: was die Zahl bedeutet

Die Zahl nach dem Buchstaben ist keine Version — sie ist die Phase im Vergabeprozess, zu der die Datei gehört, und sie sagt Ihnen, wer sie geschickt hat, was drinsteht und was Sie zurückschicken sollen. Genau hier entsteht die meiste Verwirrung.

PhaseNameInhaltWer schickt sieWas Sie damit tun
80LV-StammdatenEin leeres Leistungsverzeichnis: Positionen und Texte, keine Mengen, keine PreisePlaner ↔ PlanerErreicht einen Bieter selten
81LeistungsverzeichnisDas LV mit Mengen, ohne PreisePlaner → AuftraggeberLesen; die folgende 83 wird daraus abgeleitet
82KostenanschlagDie eigene Kostenschätzung des Auftraggebers; auch für den Preisspiegel mehrerer AngeboteIntern beim AuftraggeberGeht nie an Bieter
83AngebotsaufforderungDie Aufforderung zum Angebot: Positionen, Mengen, Texte — keine PreiseAuftraggeber → BieterBepreisen und als 84 zurückgeben
84AngebotsabgabeIhr Angebot: dieselbe Struktur mit Einheitspreisen und GesamtbeträgenBieter → AuftraggeberDie Datei, die Sie abgeben
85NebenangebotEin Nebenangebot, das von der Aufforderung abweichtBieter → AuftraggeberOptional, neben der 84
86AuftragserteilungDer Zuschlag: das angenommene Angebot, jetzt VertragAuftraggeber → AuftragnehmerIhr Vertrags-LV
88NachtragNachtragsangebot: neue oder geänderte Positionen nach AuftragAuftragnehmer → AuftraggeberWie ein Angebot bepreist, mit Bezug auf die 86
89RechnungRechnungsdaten: ausgeführte Mengen gegen den VertragAuftragnehmer → AuftraggeberMengen dürfen von der 86 abweichen, Preise nicht

Zwei Phasen stehen außerhalb dieser Reihe: 31 (Mengenermittlung, die Aufmaßzeilen hinter jeder Menge) und die Handelsphasen 93–97 für die Materialbestellung. Eine X31 begegnet Ihnen, wenn ein Auftraggeber Ihre Mengen belegt haben will, nicht nur genannt.

In der Praxis erhält ein Hersteller meist eine 83 und muss eine 84 zurückgeben. Positionen, Reihenfolge und Kennungen müssen exakt übereinstimmen — die Software des Auftraggebers gleicht Ihre 84 Zeile für Zeile mit der ursprünglichen 83 ab, und ein Angebot, dessen Ordnungszahlen nicht mehr passen, wird bestenfalls beim Auftraggeber von Hand nachgetippt und schlimmstenfalls ausgeschlossen.

Welche Datei habe ich?

Lesen Sie die Endung von rechts nach links:

  1. Die Zahl ist die Phase aus der Tabelle oben. 83 = Sie sollen anbieten; 84 = das ist ein Angebot; 86 = das ist ein Vertrag.
  2. Der Buchstabe ist die Generation: d = GAEB 90, p = GAEB 2000, x = DA XML. Eine .gaeb-Endung ist fast immer DA XML.
  3. In einer DA-XML-Datei nennen die ersten Zeilen die Version (GAEB_DA_XML/DA83/3.3) und die Austauschphase (<DP>83</DP>). Widersprechen sich Endung und DP, hat der DP recht — Endungen werden umbenannt, Phasenkennungen nicht.

Eine .x83 ist also eine DA-XML-Angebotsaufforderung; eine .d84 ein GAEB-90-Angebot; eine .p86 ein GAEB-2000-Vertrag. Wer die Prüfung lieber erledigt bekommt: Der kostenlose GAEB-Check nennt Generation, Version und Phase in der ersten Zeile seines Ergebnisses, dazu Positionen, Summen und alles, was an der Datei nicht stimmt.

Warum das für die Kalkulation zählt

Jede dieser Varianten ist eine Stelle, an der ein Arbeitsablauf bricht:

  • Ein Kalkulationsprogramm, das DA XML liest, aber kein GAEB 90, zwingt jemanden, die älteren Dateien von Hand abzutippen.
  • Ein feiner Kodierungs- oder Positionsfehler in einer 84 kann das ganze Angebot für den Auftraggeber unlesbar machen — nach stundenlanger Kalkulationsarbeit.
  • Langtexte überleben im XML, werden aber abgeschnitten, wenn ein Werkzeug auf ein älteres Format zurückstuft.
  • Eine als .x83 gespeicherte Datei, die in Wahrheit eine 84 ist (kommt vor — jemand hat „Speichern unter“ gedrückt), wird als Aufforderung mit Preisen importiert, und die Preise fallen stillschweigend weg.

Sobald man eine Datei nach Generation und Phase benennen kann, bleibt ein Problem: Software, die nur eine davon spricht. Genau dafür gibt es unseren Open-Source-Parser pyGAEB — er liest jede DA-XML-Version von 2.0 bis 3.3 und jede Austauschphase von 80 bis 89 in ein sauberes, typisiertes Modell, konvertiert zwischen Versionen und schreibt 3.3-Dateien, die gegen die offiziellen Schemas validieren. (GAEB 90 lesen steht auf der Roadmap, ist aber noch nicht ausgeliefert — das sagen wir lieber selbst, als dass Sie es herausfinden.) Wer nur sehen will, was in einer erhaltenen Datei steckt: Der kostenlose GAEB-Check öffnet jedes DA-XML-LV im Browser, ohne es zu speichern; die Anleitung zum Öffnen einer GAEB-Datei ohne Spezialsoftware vergleicht das mit den anderen Wegen, und der Python-Leitfaden zeigt denselben Parser aus dem Code.

Wenn Sie sich nur eines merken: Der Buchstabe nennt die Generation (90, 2000 oder XML), die Zahl nennt die Phase (Aufforderung, Angebot, Auftrag, Rechnung). Wer diese beiden auseinanderhält, dem löst sich der Großteil der GAEB-Verwirrung auf.

Kommentare

Kommentare werden vor der Veröffentlichung geprüft.

Kommentare werden geladen…

    Wird nur verwendet, falls wir Ihnen direkt antworten müssen.

    Ihr Name und Ihr Kommentar werden nach der Prüfung veröffentlicht. Datenschutzerklärung.