# Aggregated type homogeneity

**URL:** <https://forums.buildingsmart.org/t/aggregated-type-homogeneity/3998>\
**Category:** Developers\
**Created:** [November 24, 2021, 6:09pm UTC](https://forums.buildingsmart.org/t/aggregated-type-homogeneity/3998 "2021-11-24T18:09:50Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![tauscher](https://sea2.discourse-cdn.com/flex016/user_avatar/forums.buildingsmart.org/tauscher/32/816_2.png) [@tauscher](https://forums.buildingsmart.org/u/tauscher)\
**Post date:** [November 24, 2021, 6:09pm UTC](https://forums.buildingsmart.org/t/aggregated-type-homogeneity/3998/1 "2021-11-24T18:09:50Z")

</div>

When aggregating with `IfcRelAggregates`, is there any restriction on homogeneity of aggregated objects, be it similar concrete entity type or uniformity of some attribute value? As an example, consider decomposition of an entity of type `IfcBuilding` with default value `ELEMENT` for composition type: Is there any limitation denoting that aggregated objects be of the same entity type and composition type, e.g. either one of `IfcBuilding`/`PARTIAL`, `IfcBuildingStorey`/`COMPLEX`, `IfcBuildingStorey`/`ELEMENT` or can these appear mixed among the related objects of the aggregation relation?

I did not find any such restriction, neither in formal nor informal IFC specification, but did not go through MVDs. Maybe I overlooked something or is there some restriction as per any official MVD, implementers agreement or the like?

---

<div class="post-metadata">

**Author:** ![claimred](https://avatars.discourse-cdn.com/v4/letter/c/e47c2d/32.png) [@claimred](https://forums.buildingsmart.org/u/claimred)\
**Post date:** [December 1, 2021, 9:59am UTC](https://forums.buildingsmart.org/t/aggregated-type-homogeneity/3998/2 "2021-12-01T09:59:30Z")

</div>

Perhaps this note is some kind of a rule about IfcBuilding decomposition?

[https://standards.buildingsmart.org/IFC/RELEASE/IFC4/ADD2\_TC1/HTML/link/ifcbuilding.htm](https://standards.buildingsmart.org/IFC/RELEASE/IFC4/ADD2_TC1/HTML/link/ifcbuilding.htm)

> NOTE By using the inverse relationship _IfcBuilding.IsDecomposedBy_ it references IfcBuilding || [IfcBuildingStorey](https://standards.buildingsmart.org/IFC/RELEASE/IFC4/ADD2_TC1/HTML/schema/ifcproductextension/lexical/ifcbuildingstorey.htm) through _IfcRelAggregates.RelatedObjects_ . If it refers to another instance of IfcBuilding, the referenced IfcBuilding needs to have a different and lower _CompositionType_ , i.e. ELEMENT (if the other IfcBuilding has COMPLEX), or PARTIAL (if the other IfcBuilding has ELEMENT).

Wouldn’t general homogeneity restrictions be weird for building elements aggregations though? 🤔 They could be used for all kinds of stuff.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/buildingsmart1/original/2X/f/f5a364da12f858bc504d86772f87bedbfccdeb08.png)
