How to create an IfcElementAssemblyType from a set of IfcElementTypes?
I remember that at one point in the past I was able to create an assembly of objects types (I did it once but I don't remember which version of BB) but now I can't.
I tried this:
Method 1 - Create the assembly type and assign the aggregated type objects


The assembly type object is not shown for selection.
Method 2 - Create the assembly type from an existing object type

Generates an error:
os: Linux
os_version: #107-Ubuntu SMP PREEMPT_DYNAMIC Fri Mar 13 19:51:50 UTC 2026
python_version: 3.11.13
architecture: ('64bit', 'ELF')
machine: x86_64
processor: x86_64
blender_version: 5.0.0
bonsai_version: 0.8.5-alpha260410
bonsai_commit_hash: a3efa7e
bonsai_commit_date: 2026-04-10T19:11:42+05:00
bonsai_git_branch: v0.8.0
last_actions:
# operator: BIM_OT_save_project
# operator: BIM_OT_add_aggregate
# operator: BIM_OT_assign_class
# ifcopenshell.api: root.create_entity
>>> {"ifc_class": "IfcElementAssemblyType", "predefined_type": "", "name": "Default_Name"}
# ifcopenshell.api: owner.create_owner_history
>>> {}
# ifcopenshell.api: geometry.edit_object_placement
>>> {"product": {"cast_type": "entity_instance", "value": 334, "Name": "Default_Name"}, "matrix": {"cast_type": "ndarray", "value": [[1.0, 0.0, 0.0, 0.0], [0.0, 1.0, 0.0, 0.0], [0.0, 0.0, 1.0, 0.0], [0.0, 0.0, 0.0, 1.0]]}}
last_error: Traceback (most recent call last):
File "/home/wal/.config/blender/5.0/extensions/.local/lib/python3.11/site-packages/bonsai/bim/ifc.py", line 523, in execute_ifc_operator
result = getattr(operator, "_execute")(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/home/wal/.config/blender/5.0/extensions/.local/lib/python3.11/site-packages/bonsai/bim/module/aggregate/operator.py", line 227, in _execute
core.assign_object(tool.Ifc, tool.Aggregate, tool.Collector, relating_obj=aggregate, related_obj=obj)
File "/home/wal/.config/blender/5.0/extensions/.local/lib/python3.11/site-packages/bonsai/core/aggregate.py", line 46, in assign_object
raise IncompatibleAggregateError
bonsai.core.aggregate.IncompatibleAggregateError
blend_file_path: Not saved
blend_file_dirty: N/A
ifc_file_path: /home/wal/Estudos Blender/Sinalização_viária/Prototipo_aplicao/1-assembly.ifc
ifc_is_dirty: True
ifc: 1-assembly.ifc
schema: IFC4X3
preprocessor_version: IfcOpenShell 0.8.5-alpha260410
originating_system: Bonsai 0.8.5-alpha260410-a3efa7e
Does anyone know if it's possible to do this, and can help me?
Thanks

Comments
Not that i know of.
I think 'Linked Aggregates' is the only way to get that type of functionality.
See the following videos from this tutorial series...
Thanks @theoryshaw,
The use case is related to this post.
I understand that "linked aggregates" is not part of the IFC schema, it's a feature exclusive to BB, am I correct?
But it could be an alternative. @Rick_Brice, what do you think?
Cheers
correct.
...
It grew out of a lack of schema support for "assembly instances". There's a long history. :)
https://github.com/buildingSMART/NextGen-IFC/issues/61#issue-653531191
According to the scheme (afaik) type can only aggregate instances, hence you can not have typed aggregation of other types.
And how to instantiate instances within typed aggregation? To use IfcRelDefinesByObject where you usually use IfcRelDefinesByType.
See drawings here: https://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/lexical/IfcRelDefinesByObject.htm
But I do not know any software that has implemented this relationship.
UPDATE: I've found that we have discussed this very topic before: https://community.osarch.org/discussion/comment/16987
@VDobranov Thanks for reminding me, it was around that time that I managed to create the type assembly , but that later disappeared and became "linked aggregates".
The cognitive deficit is getting worse... :)
Cheers