buildingSMART Forums

Guidance in assigning Class & Type for Wall/Floor components

We are preparing guidance document on correct application of classes, types and classification codes for exemplary elements.

When I take the example of a Cavity wall, how would you classify the different layers, when assuming all layers are modelled as separate components?

Does this seem correct?

  • Outer Brick Layer: IfcCovering.CLADDING
  • Air Layer: What class should I use here? Or do we simply not model it at all?
  • Insulation Layer: IfcCovering.INSULATION
  • Inner Brick Layer (structural): IfcWall
  • Inner Plaster Finishing: IfcCovering.CLADDING

Similarly for a composite floor:

  • Floor Finishing Layer (e.g. Tiles): IfcCovering.FLOORING
  • Screed Floor: IfcCovering.FLOORING
  • Insulation Layer: IfcCovering.INSULATION
  • Concrete Slab: IfcFloor.FLOOR (or BASESLAB?)

Is it possible that you’d create an IfcWall and have these layers as separate parts, yet still retaining their Main Class? E.g. when exporting a composite wall/slab to IFC from ARCHICAD I can generate Parts, but they all become “IfcBuildingElementPart” classes.

[off topic] I see you’re using SfB naming/classification. Have you seen this more detailed codification of SfB?

Yes, it gets complex quickly! I’d generally do the same approach as you, but I have my own questions to add on top!

By the way, as for your question “Is it possible that you’d create an IfcWall and have these layers as separate parts, yet still retaining their Main Class?” I see two ways:

  1. Don’t worry about it! You’ve already defined IfcCoverings and an IfcWall. Remember, that an IfcCovering has a CoversElements relationship to the IfcWall, so your model should already relate all the layers of the wall together. Therefore they are all defined correctly, and people understand when they see the IfcWall's property Pset_WallCommon values for fire and acoustic rating that it applies to the full system of layers … or, uh, do they? Hah :slight_smile:

  2. If you are worried, use IfcMaterialLayerSet with a Path Connectivity set, but that’s only good enough for simple junctions. Not “separate parts” physically, but still defined separately :slight_smile:

My own questions

  1. Personally believe air should not be modeled, but how does one then detect the air layer for its acoustic and thermal properties?
  2. It should be IfcSlab, as IfcFloor doesn’t exist. Whether or not it is .FLOOR., .ROOF., .BASESLAB. etc depends on where it is in the building (e.g. suspended slab is .FLOOR. and slab on ground is .BASESLAB..
  3. If an air layer isn’t modeled, if you want a simple version of the model where all ways are represented by a massive extrusion rather than composite layers, it will create an unsightly gap. We’ve run into this problem where I work. Has anybody actually applied the Surface Geometry concept in practice to overcome this?
1 Like