GUIDs in an BIM Project

You understood the question correctly :slight_smile:

I did not find any pages explaning this methodology, of when a GUID can be the same in IFC files.
For the general users, that would be quite helpful ex. here.

1 Like

FYIW, in IFC5, IFC will use GlobalIds to reference one another in relationships: https://github.com/buildingSMART/NextGen-IFC/issues/44

Together with the ability to link and reference IFC objects from external files (or databases, or any repository of any kind), this makes for a very powerful methodology of managing data.

The current situation of single-file-contained IFC-SPF is a limitation of the current selected STEP version and the vendor implementations - the underlying conceptual approach of treating BIM data as a data repository (file based, SQL database, whatever) is still the intention :slight_smile:

2 Likes

Maybe the best way to do this for IFC2x3 and IFC4 is to have one stakeholder/designer create a simple file that has the basic structure for the project (possibly including some placeholder objects/geometry) and then exporting the file to IFC for others to import. This is part of what the Model Setup IDM addresses (mainly focused on geo-referencing using this process). More info is in the Standards Library. Look at the “Geo-referencing in IFC” materials under “Technical Reports”.

For the future (IFC5?), one could suppose to use the same file as a “project setup basis” to reference the data into other systems and models. That would be an interesting use case to test.

@jwouellette - the intention is good but the execution fails in some BIM programs. For example, in Revit, geolocation information is not imported and is deleted. Also, levels are added and removed throughout the project, and this is not practical to achieve once the design process has begun, as copied objects from an IFC file in Revit lose their GlobalIds. Revit also loses all the spatial structure information as it only supports one site and building.

These problems have been reported to Autodesk. No response was given.

I have not tested this workflow with other major BIM applications. The workflow works with the BlenderBIM Add-on, but that’s all I can vouch for.

Since many of the stakeholders throughout the world are still working in IFC2x3 (including myself), an explanation about how to implement and at which level this GUID story would be helpful. That is the reason why I have referenced a link. Until IFC5 takes over the majority of the projects, it will take some time…

@jwouellette
I am currently experimenting on this step with my consultants working in different BIM authoring tools. I already see some problems ahead, as also @Moult explanis. On of them is for example is the IfcLabel for PHASE located at the IfcProject. And as you mention an IDM could be a solution to define the tasks of which parameters and at what stage should be generated by which stakeholder.
For more, I will write when I get back the IFCs…

3 Likes

Could you please someone clarifies why you hide my comments?
What’s wrong?

1 Like

Simple. Off-topic. I can’t see where the IDM Configurator/Toolkit is a part of this discussion. I think the previous response have a done a good job of highlighting the issues. The project you are referring to is a framework for developing and documenting IDMs (use cases, exchange requirements, process maps, etc.). That’s it. It doesn’t solve the problem stated. This is a more fundamental issue of how to reconcile GUIDs of a single concept across multiple sources. While the expectation or need are being clarified, the technical and process resolutions are not, given the issues described. The issues involve the technical underpinnings of software NOT creation of an IDM or resulting MVD. The problem exists completely independent of that.

@jwouellette You mentioned “project setup basis” so with IDM you CAN’T build it?
What’s SpecID in IDM Toolkit? (UUID, Name, Release, …)?

IDM solves many issues but “CAN’T” solve this one?
Then it would be better you notify IDM Toolkit group to solve this one tooooo

This is bSI’s issue “IF” wants all companies (mainly software vendors) use same GUIDs

This is off-topic but important:

Personally I don’t have enough knowledge to decide which one is perfect? GUID or Namespace?

Pixar was using GUID before but dropped it, GS1 uses namespace too, …

No GUIDS

USD uses a textual, hierarchical namespace to identify its data, which means it is “namespace paths” by which overrides bind to their defining prims/properties. In consequence, when the internal namespace of a referenced asset changes, higher-level overrides previously recorded in referencing assets will fall off . One solution to this problem is to identify data by a “globally unique identifer” (GUID), and then associate overrides with the same GUID as the defining prim. While solving the namespace-editing problem, GUIDs introduce other problems into a pipeline, and potentially limitations on flexibility of composition. In past iterations of USD, Pixar used a form of GUID at the model/asset granularity, and after carefully weighing the pros and cons, we have decided that for us, the cost of occasional “namespace fix-up” operations run over a collection of assets is worth paying for the ease of asset construction and aggregation, and readable ascii asset representations that we get from namespace-paths as identifiers. (Source)

There is no formal definition wether the GUID refers to the virtual or physical object. In practice as currently implemented and used it can only refer to the virtual object.
You typically have several virtual objects representing a physical object, created by different organizations for different purposes and they all need to live in parallel and have their own GUIDS. The correct way to solve this is to use linked data technology to link these objects together. We have worked on this in Finland for many years in our DRUM projects.
Also IFC should be extended with placeholders for physical objetcs that would have the physical objects GUID:

1 Like

Exactly, this GUID in IFC as subset of STEP, doesn’t distinguish Physical and Digital (Synthetic) worlds

After doing my small research with different BIM authoring tools I came to the conclusion that there is no common agreement of how these GUIDs should be handled during import/export of IFC files.
The test relied in a creation of a template IFC File where certain parameters have been defined and then this template imported by 4 different software solutions. As you can see in the below table, each software reacts differently.

These values represent the content of the exported IFC file (after importing the IFC template) to identify which of the imported values could be taken over. So, the more green cells we see, the better.

To my very big surprise Autodesk Revit came with the best results, but it does not mean it is ideal for further workflow. The Revit user reported that this method (import IFC and convert into RVT) was not the best since his revit template had to be generated from the beginning, meaning a bit time investment for each project and maybe even faulty libraries.
Archicad on the other hand imported correctly the GUIDs until the level of the IfcBuilingStorey, the same results as in DDS-CAD. In Plancal there are a bit more problems since not only the GUIDs but also parameters such as ProjectName cannot be manually changed.

There are other alphanumeric parameters that showed red in the table but can be adjusted by the user after import for future IFC exports. Sadly in most of the tested software, the GUID is locked and cannot be adjusted. There might be secondary software solutions that allow such manipulation, but is the the scenario we want to favor?

In my opinion the ideal way would be to create this ultimate template for the project which could be used by all stakeholders. Maybe the subject of Linked Data could be the solution, but sadly I don’t have much knowledge about that. This master IFC template could have also different GUID definitions and not necessarily always the same levels as in my test, for ex. IfcBuilding and especially IfcBuildingStorey in the project initiation are not clear, meaning they are defined later on during the development of the project. In this case IfcProject and IfcSite with their attributes are defined for the template.

5 Likes

@agron FYI the buildingSMART documentation clearly states (source):

the IFC-GUID is normally generated automatically and has to be persistent

Therefore, I trust any vendor who scores a red on a GUID field should consider it a bug to be fixed.

I agree with your Revit user’s conclusion that although Revit does maintain the data, it is not practical to be in use in a large project.

Would you mind sharing your template IFC file? That would be a good first step to helping vendors fix things.

I would also like to note for completeness that the following vendors do not seem to be certified yet by buildingSMART:

  • DDS-CAD (IFC4 import in progress)
  • Plancal Nova (no import certification)
  • Plancal extended (no certification)
  • Revit (if you are testing IFC4, import certification has been in progress since 2017)
  • ArchiCAD (if you are testing IFC4, import certification has been in progress since 2018)

Perhaps buildingSMART can advise their certification team or update their certification process to ensure that this template-based IDM workflow is both correct and practical?

2 Likes

The testing has been done only in ifc2x3. Since they they are not certified for ifc4 import, I even didn‘t bother in getting that road. I was hoping to find a common ground with this GUID, since today IFC2x3 is the most common version used in the market.

Here is the Nemesis.ifc (86.7 KB) that I had created. Just for Info: it posseses also slabs, since a part of my test was to see if this GUID during import/export has any impact on the IfcBuildingElement. But that is another case…

Perhaps buildingSMART can advise their certification team or update their certification process to ensure that this template-based IDM workflow is both correct and practical?

I agree with you…

I think bSI and vendors have waited for “new IDM” which will come in 2021

Because as I mentioned several times current IDM doesn’t support ISO 19650 and some other needs, so this was the main reason IDM Toolkit/Configurator project started

Thank you Agron for sharing the file and the analysis. Despite that it is about stable GUIDs, I share (just for info) the result of the import into the 3DEXPERIENCE Platform from Dassault Systèmes (yes we are also a player in the domain :slight_smile:). You do not see GUIDs because they are not exposed.
We are looking forward to support stable GUIDs as we believe it can help to better manage collaboration scenrio between platforms. Added to ifcownerhistory it could even help software editors to track changes and manage revisions on geometry but also attributes. But this another story.
Regards, Jonathan
https://app.box.com/s/27oo2y28pt480yr2fg3ps8i2xvugfxo8

I share (just for info) the result of the import into the 3DEXPERIENCE Platform from Dassault Systèmes

@jonathan.RIONDET Am I the only one seeing an *.mp4 file that you are sharing?

It’s a ArchiCAD IFC file.

Just sharing for the record that I have just tested the Nemesis file with the BlenderBIM Add-on.

I’m very happy to say that based on your table, the BlenderBIM Add-on scores green on all fields… except BuildingAddress, which is not shown in the UI. I will be sure to fix this in the next release.

3 Likes

@agron, no. everybody who has the link can download the file