X
by Xemita on 16 Apr 2025, edited 18 Apr 2025
#
Hi all,
I want to attach some external documents (.pdf, .doc, etc.) to a ifc . I just want to enrich the ifc with this external documentation. for instance, a maintenance instruction manual to al IfcPipe. I want to associate documentation ( https://standards.buildingsmart.org/IFC/RELEASE/IFC4/ADD2_TC1/HTML/link/document-association.htm)
How can I do it? Is there a tutorial or Bonsay Documentation related to this topic?
Thanks
S
by steverugi on 16 Apr 2025
#
+4 votes
@Xemita
please try "Documents" under project setup

in location you can put the path to the document itself
M
by Moult on 17 Apr 2025
#
See also https://docs.ifcopenshell.org/autoapi/ifcopenshell/api/document/index.html if you want to add this data automatically via scripting.
F
by falken10vdl on 17 Apr 2025, edited 17 Apr 2025
#
+1 votes
Is this how "Levels of Detail" can be accomplished? If the referenced document is itself an IFC file we could have something like a tree structure for details. If I take the demo project for example:
House.ifc would have for example IfcDoorType/DT01 or IfcFurnitureType/BUN01 with references to DT01.ifc and BUN01.if respectively.
DT01.ifc could have references to Handle.ifc and Panel.ifc. Handle.ifc coud then have references to some pdfs about material, suppliers, etc.
Thanks!
X
by Xemita on 17 Apr 2025
#
@steverugi:
The Dialog Box defining the path to the external documents is not the same if I create a new IFC file from scratch inside Blender

rather than if I open an external ifc (created by REVIT) and I try to attach the documents

In my case, I cannot select the path to the files
S
by steverugi on 17 Apr 2025, edited 17 Apr 2025
#
@Xemita
sorry, that is the first "container", to expand it where you can save your documents with location etc you need to click on the arrow
I should have mentioned it in my previous post, hope it's now OK


M
by Moult on 17 Apr 2025
#
Most likely your Revit IFC is IFC2X3 which is missing features. It's highly recommended to use IFC4.
I'd say that library references, not document references, are more suitable for external geometry, but this is debatable.
F
by falken10vdl on 17 Apr 2025
#
Does it mean that best practice for implementing Levels of details would be for example to have a slab as a single rectangular extruded object in the main.ifc file and then this slab with a document reference towards an ifc file detailing beams& vaults and then the beams and the vaults with library refrences to standard vault and beam libraries?
Does it make sense?
M
by Moult on 18 Apr 2025
#
There currently is no best practice. It's uncharted territory. IFC has no "native" way to reference externally defined representations, and the best case for storing LOD currently is representation contexts with the target scale attribute or similar.
Thoughts @aothms? How about a document reference or libary reference as an unofficial convention before IFC comes up with something?
T
by theoryshaw on 18 Apr 2025
#
+1 votes
Maybe worth sharing...
https://github.com/IfcOpenShell/IfcOpenShell/issues/668
A
by aothms on 18 Apr 2025
#
+3 votes
to have a slab as a single rectangular extruded object in the main.ifc file and then this slab with a document reference towards an ifc file detailing beams& vaults and then the beams and the vaults with library refrences to standard vault and beam libraries?
I would say closest to this is simply a BoundingBox representation or selectively processing IfcVoidingFeatures (or even IfcFeatureAdditions). Implementing proper LOD with the current technological basis of IFC to me just seems like an uphill battle with no end.
Could be worth it to look into this in the context of IFC5 https://github.com/buildingSMART/IFC5-development/ where it's perfectly possible to have a high lod and a low lod layer that you can reference. If these have the same structure (think of it as a project library with same names - this works because in IFC5 reference are path-based), then you can selectively load the lod layer of choice at import time (or even load them both and selectively toggle between high and low lod in the viewer).