[IFC] Why is IfcElementAssembly under IfcElement instead of IfcSpatialElement?

It says here http://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/lexical/IfcElementAssembly.htm that one should use an aggregation relationship to the contained parts, i.e. the (INV) IsDecomposedBy relationship shall be utilized. So why is IfcElementAssembly under IfcElement instead of IfcSpatialElement?

Tagged:

Comments

  • I suppose that an Element Assembly is a thing made up of other things, whereas a Spatial Element is a space that can contain things or other spaces

    Martin156131
  • Because an IfcElementAssembly is an IfcElement.

    • Spaces <-- IfcRelAggregates --> Subspaces, i.e. spaces are made out of subspaces.
    • Elements <-- IfcRelAggregates --> Subelements, i.e. elements are made out of subelements.
    • Spaces <-- IfcRelContainedInSpatialStructure --> Elements, i.e. Spaces contain elements

    Notice aggregates are used when the same type is made out of smaller things of the same type. In contrast ContainedIn relationships are used between spaces (i.e. you can't touch it, just a virtual imaginary bounds) and elements (i.e. you can touch it, buy it, build it, etc)

    Martin156131theoryshawArv
  • So for example:
    IfcProject <-- IfcRelAggregates --> IfcSite <-- IfcRelAggregates --> IfcBuilding <-- IfcRelAggregates --> IfcBuildingstoery <-- IfcRelContainedInSpatialStructure --> IfcElementAssembly <-- IfcRelAggregates --> IfcBuildingElementProxy

    Did i understand it correctly?

Sign In or Register to comment.