Zurück zum BIM- & IFC-Blog
Exportfehler beheben · 2026-06-03 · 8 Min.
Warum sich IFC-GUIDs bei jedem Export ändern (und wie Sie sie stabil halten)
Sie exportieren dasselbe Modell erneut, schicken es an Ihren Koordinator, und plötzlich zeigen alle BCF-Kommentare, Kollisionsprobleme und FM-Tags auf das falsche Element – oder ins Leere. Die Ursache: Ihre IFC-GlobalIds wurden neu generiert. Hier erfahren Sie, warum das passiert und wie Sie sie festschreiben.
Warum sich IFC-GUIDs bei jedem Export ändern (und wie Sie sie stabil halten) — IFC Viewer Online article cover
Es gibt zwei völlig unterschiedliche GUID-Probleme in IFC, die ständig verwechselt werden. Das erste sind doppelte GUIDs – zwei Elemente teilen sich in einer einzigen Datei eine GlobalId. Das zweite, um das es hier geht, ist GUID-Instabilität: Dasselbe Element erhält bei jedem erneuten Export des Modells eine andere GlobalId. Beide stören die Koordination, aber das zweite ist heimtückischer, weil jede einzelne Datei für sich genommen völlig gültig aussieht.
Wenn Sie Kollisionen koordinieren, BCF-Workflows durchführen oder ein Modell an das Facility Management übergeben, sind stabile GlobalIds keine Option, sondern Pflicht. Nur sie ermöglichen es einem Tool zu sagen: „Diese Wand in Revision 4 ist dieselbe Wand wie in Revision 2.“ Driften sie, hängt jede Referenz, die auf die alte ID zeigte, stillschweigend ins Leere.
- 22 — Zeichen in einer IFC-GUID
- 3 — Maximalwert des ersten Zeichens
- 0 Bytes — hochgeladen zur Validierung
- 100% — läuft im Browser
Was eine stabile GlobalId sein soll
Jede IFC-Entität, die von IfcRoot erbt, trägt eine GlobalId: eine 22 Zeichen lange Zeichenfolge im speziellen Base64-Alphabet von IFC (0–9, A–Z, a–z, _, $). Die Spezifikation legt ausdrücklich fest, dass sie global eindeutig und persistent sein soll – dasselbe logische Element behält seine GlobalId über Revisionen und Software-Roundtrips hinweg. Diese Persistenz macht Änderungsverfolgung, BCF und Anlagenregister erst möglich.
// Revision 2
#1402 = IFCWALL('3LYa_FRDj3zhLfyYoQv6Jr', $, 'Exterior Wall - 300mm', ...);
// Revision 3 — same wall, regenerated GlobalId. Every reference to the old ID now dangles.
#1402 = IFCWALL('2hQ8pZ_a1ABxKm9dELc0Ru', $, 'Exterior Wall - 300mm', ...);
Warum Revit GUIDs neu generiert
Die Grundursache ist, dass es nicht immer eine saubere Eins-zu-eins-Zuordnung zwischen einem Revit-Element und der IFC-Entität gibt, in die es exportiert wird. Ein einzelnes Revit-Element kann sich in mehrere IFC-Entitäten aufteilen (ein Geländer wird zu einer Handlaufschiene plus Geländerstäben plus Handlauf), und ohne stabile 1:1-Beziehung hat der Exporter keinen verlässlichen Anker, von dem er eine konsistente GlobalId ableiten kann. Also generiert er eine neue.
Historisch war der IFC-GUID-Parameter in Revit schreibgeschützt, sodass Teams ihn nicht festlegen konnten, selbst wenn sie es wollten. Neuere Exporter-Versionen machen ihn schreibbar, sodass der Wert gespeichert und wiederverwendet werden kann – aber Sie müssen trotzdem die richtige Einstellung aktivieren, denn bei manchen Konfigurationen ist die Neugenerierung weiterhin das Standardverhalten.
- Aufteilung in Unterelemente: Ein Host-Element, das in mehrere IFC-Entitäten exportiert wird (Geländer, Treppen, Vorhangfassaden, Dächer mit Blenden), ist die klassische Ursache für Drift.
- Re-Export mit dem Verhalten „neu generieren“: Manche Exporteinstellungen erzeugen bei jedem Export neue GUIDs, statt den gespeicherten Wert wiederzuverwenden.
- Kopieren/Einfügen und Gruppenbearbeitungen in der Autorensoftware können die interne ID zurücksetzen, aus der die GUID abgeleitet wird.
- Ein Roundtrip durch ein Tool, das GlobalIds nicht bewahrt (Öffnen und erneutes Speichern in einem Viewer oder Konverter), schreibt sie neu.
Die andere Hälfte: ungültiger GUID-Bereich
Es gibt einen verwandten Fehler, auf den selbstgeschriebene Exportskripte ständig stoßen. Das erste Zeichen einer gültigen IFC-GlobalId kann im 6-Bit-Alphabet nur die Werte 0–3 codieren, weil eine in 22 Base64-Zeichen gepackte 128-Bit-UUID dem führenden Sextett nur zwei signifikante Bits lässt. Skripte, die eine gewöhnliche 32-stellige Hex-UUID naiv abschneiden oder neu codieren, erzeugen ein erstes Zeichen außerhalb dieses Bereichs.
Die GUID-Werte liegen außerhalb des gültigen Bereichs – ist die erste Stelle etwas anderes als 0, 1, 2 oder 3, handelt es sich nicht um eine konforme IFC-GlobalId.
buildingSMART-Forum — häufige Fehler beim IFC-Export
Eine außerhalb des Bereichs liegende GlobalId wird von nachsichtigen Parsern stillschweigend toleriert und von strengen zurückgewiesen – dieselbe Datei „funktioniert“ also in einem Tool und schlägt in einem anderen bei der Validierung fehl, was ohne einen Checker, der den Bereich explizit markiert, zum Verzweifeln ist.
Wie Sie instabile oder ungültige GUIDs erkennen
GUID-Drift lässt sich nicht an einer einzelnen Datei erkennen – Sie müssen zwei Exporte vergleichen oder innerhalb einer Datei auf ungültiges Format und Duplikate prüfen. Öffnen Sie beide Revisionen im Validator: Er markiert GlobalIds, die außerhalb des gültigen Bereichs liegen, innerhalb einer Datei doppelt vorkommen oder fehlerhaft formatiert sind, in unter 30 Sekunden, vollständig in Ihrem Browser. Nichts wird hochgeladen.
GlobalIds in einem echten Modell prüfen
Öffnen Sie das buildingSMART-Duplex-Modell, um einen sauberen GlobalId-Bericht zu sehen, und ziehen Sie dann zwei aufeinanderfolgende Exporte Ihres eigenen Modells hinein, um zu erkennen, bei welchen Elementen die IDs neu generiert wurden.
IFC2x3 · 2.4 MB
Interaktiven IFC-Viewer öffnen
Wie Sie GUIDs stabil halten
Revit
Verwenden Sie den Open-Source-IFC-Exporter und setzen Sie unter File → Export → IFC → Modify Setup → Advanced die Option „Export IFC GUIDs“ auf „Keep Existing“ (niemals „Generate New“). So wird die stabile GlobalId wiederverwendet, die Revit pro Element speichert, statt bei jedem Export eine neue zu erzeugen. Für Elemente, die in mehrere IFC-Entitäten aufgeteilt werden, akzeptieren Sie, dass die Unterentitäten möglicherweise nicht perfekt stabil sind – verankern Sie Ihre Koordination auf der ID des Host-Elements.
ArchiCAD
Aktivieren Sie in den IFC-Translator-Einstellungen die Option „Write stable GlobalIDs (from AC internal IDs)“. Ohne diese Option leitet ArchiCAD GlobalIds auf eine Weise ab, die sich zwischen Exporten verschieben kann.
Was bereits gedriftet ist, beheben
Enthält eine Datei bereits ungültige oder doppelte GlobalIds, kann der Validator sie automatisch beheben: Er generiert eine neue, spezifikationskonforme 22-Zeichen-GlobalId im korrekten Base64-Alphabet mit einem führenden Zeichen im Bereich 0–3. Nutzen Sie das, um das Format einer gelieferten Datei zu reparieren – korrigieren Sie aber auch die Exporteinstellung an der Quelle, sonst führt der nächste Re-Export die Drift wieder ein.
Weiterführend zum Fall doppelter GUIDs (zwei Elemente, eine ID) und zur vollständigen Reihe struktureller Prüfungen: siehe Doppelte GUIDs in IFC und Die 7 häufigsten IFC-Validierungsfehler in diesem Blog.
Warum sich IFC-GUIDs bei jedem Export ändern (und wie Sie sie stabil halten)