Torna al blog BIM e IFC
Correggere le esportazioni · 2026-05-20 · 8 min
GUID duplicati in IFC: l'errore silenzioso che manda in crisi tutto
Dopo tre settimane su un topic di coordinamento BCF, ti accorgi che i commenti fanno riferimento a elementi svaniti dal modello. Il modello sembra a posto. L'errore: due elementi che condividono lo stesso GlobalId — e ogni strumento a valle è rimasto silenziosamente confuso fin dal primo giorno.
GUID duplicati in IFC: l'errore silenzioso che manda in crisi tutto — IFC Viewer Online article cover
Cos'è un GlobalId in IFC?
Ogni entità di un file IFC che eredita da IfcRoot — il che include ogni elemento fisico, spazio, piano, edificio e sito — ha un attributo GlobalId. È una stringa di 22 caratteri che usa un alfabeto base64 personalizzato, e dovrebbe essere univoca a livello globale, stabile tra le revisioni e persistente tra i passaggi da un software all'altro.
#100 = IFCWALL('3LYa_FRDj3zhLfyYoQv6Jr', $, 'Exterior Wall - 300mm', $, $, #88, #92, $, .NOTDEFINED.);
#101 = IFCDOOR('3LYa_FRDj3zhLfyYoQv6Jr', $, 'Door D001', $, $, #89, #93, $, .NOTDEFINED.);
// Both elements share the same GlobalId — IFC schema violation.
La specifica IFC (ISO 10303-21) vieta i GlobalId duplicati. Ma la specifica non può farla rispettare — i parser dei file caricano qualunque cosa venga fornita loro. La maggior parte dei parser non controlla nemmeno. Il risultato: un file strutturalmente valido che due elementi rivendicano come proprio.
Perché si verificano i duplicati
- Ri-esportazioni da Revit: per impostazione predefinita, alcune configurazioni di esportazione di Revit rigenerano i GUID a ogni esportazione. Due esportazioni dello stesso modello producono GUID diversi — poi, se una terza esportazione copia un elemento da un file più vecchio, si ottengono collisioni.
- Copia-incolla nei software di authoring: duplicare un'istanza di famiglia senza attivare il rinnovo del GUID — comune in ArchiCAD e Vectorworks — produce due elementi con GlobalId identici.
- Merge di modelli: unire due file IFC senza controllare le collisioni di GUID tra loro è un modo garantito per introdurre duplicati, soprattutto se entrambi i file sono stati esportati dallo stesso modello sorgente.
- GUID generati da script: script di esportazione personalizzati che generano i GUID usando un semplice UUID (32 caratteri esadecimali) e li troncano a 22 caratteri senza la corretta codifica base64 — producendo stringhe non univoche o formati non validi.
Cosa rompono i GUID duplicati
Coordinamento BCF
I topic BCF fanno riferimento agli elementi tramite GlobalId. Un duplicato significa che i commenti si agganciano a qualunque elemento lo strumento ricevente carichi per primo — l'altro elemento diventa irraggiungibile per riferimento.
Collegamenti IFC di Revit
Il risolutore dei collegamenti IFC di Revit usa i GlobalId per tracciare le versioni degli elementi tra un aggiornamento del modello e l'altro. I duplicati fanno sì che gli elementi cambino identità in modo casuale tra un aggiornamento e l'altro, rompendo il change tracking.
Registri asset del CDE
Gli ambienti di condivisione dei dati (CDE) come ACC e ProjectWise indicizzano gli elementi IFC tramite GlobalId per i dati di consegna. I duplicati creano asset fantasma che compaiono nel registro ma non possono essere individuati nel modello.
Esportazioni COBie
I fogli COBie collegano i dati di facility management ai GlobalId di IfcSpace e IfcAsset. Gli spazi duplicati producono righe duplicate nel pacchetto di consegna FM.
Come rilevare i GUID duplicati
Esegui la validazione prima di ogni consegna al CDE. Il controllo RULE_DUPLICATE_GUID segnala ogni elemento che condivide un GlobalId con un altro — ed è auto-correggibile, cioè il validatore può generare nuovi GUID conformi alla specifica per i duplicati con un solo clic.
Valida il modello Duplex dal vivo
Apri il duplex di buildingSMART nel visualizzatore per vedere come appare un report di validazione pulito. Poi prova ad aprire uno dei tuoi file di progetto per controllare la presenza di GUID duplicati.
IFC2x3 · 2.4 MB
Apri il visualizzatore IFC interattivo
Come correggere i GUID duplicati
Opzione 1: auto-correzione nel validatore
Il validatore di IFC Viewer segna i problemi di GUID duplicati come auto-correggibili. Clicca sull'icona di correzione accanto a qualsiasi problema RULE_DUPLICATE_GUID e viene generato un nuovo GlobalId conforme alla specifica — una stringa di 22 caratteri che usa il corretto alfabeto base64 di IFC (0–9, A–Z, a–z, _, $) con un carattere iniziale in 0–3.
Opzione 2: correggere in Revit
In Revit, con l'esportatore IFC open source: scheda File → Export → IFC → Modify Setup → Advanced → imposta "Export IFC GUIDs" su "Keep Existing". Questo conserva i GlobalId stabili che Revit assegna internamente invece di rigenerarli a ogni esportazione.
Opzione 3: correggere in ArchiCAD
In ArchiCAD: File → Save As → IFC 2x3 → Settings → IFC Translation Settings → abilita "Write stable GlobalIDs (from AC internal IDs)". Senza questa opzione attiva, ArchiCAD genera nuovi GUID a ogni esportazione.
GUID duplicati in IFC: l'errore silenzioso che manda in crisi tutto