Index-seeded alternative to the whole-model graph: decodes only the selected
roots and every IfcRelAssignsToGroup (so its cost scales with the model's
group-assignment count). Throws over the graph's entity budget, which review
could never read. Returns null when the selection touches an exact generic
IfcGroup, or when a decoded assignment is unreadable, so the complete owner
gives the answer or its own refusal.
Index-seeded alternative to the whole-model graph: decodes only the selected roots and every IfcRelAssignsToGroup (so its cost scales with the model's group-assignment count). Throws over the graph's entity budget, which review could never read. Returns null when the selection touches an exact generic IfcGroup, or when a decoded assignment is unreadable, so the complete owner gives the answer or its own refusal.