Industry Foundation Classes (IFC) Supported Element Types

This section provides an overview of all the IFC elements currently supported by the IFC_API reader/writer.

Quick Links

Supported Element Types

IfcAlignment
IfcAlignmentCant
IfcAlignmentHorizontal
IfcAlignmentSegment
IfcAlignmentVertical
IfcAnnotation
IfcBeam
IfcBearing
IfcBuilding
IfcBuildingElementPart
IfcBuildingElementProxy
IfcBuildingStorey
IfcChimney
IfcColumn
IfcCourse
IfcCovering
IfcCurtainWall
IfcDeepFoundation
IfcDoor
IfcFooting
IfcGeographicElement
IfcKerb
IfcMember
IfcRail
IfcRailing
IfcRamp
IfcRampFlight
IfcRoof
IfcSite
IfcSlab
IfcSpace
IfcStair
IfcStairFlight
IfcWindow

Element Types

Alignment

Note  This element type is new to IFC 4x3 and not supported in IFC 4.

The Alignment feature type represents IfcAlignment elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Alignment. The possible types are:

  • USERDEFINED
  • NOTDEFINED

Alignment Cant

Note  This element type is new to IFC 4x3 and not supported in IFC 4.

The Alignment Cant feature type represents IfcAlignmentCant elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_rail_head_distance

Distance between the nominal center points of the two contact patches of wheel set and rails.

Alignment Horizontal

Note  This element type is new to IFC 4x3 and not supported in IFC 4.

The Alignment Horizontal feature type represents IfcAlignmentHorizontal elements in the dataset. It does not have any unique attributes.

Alignment Segment

Note  This element type is new to IFC 4x3 and not supported in IFC 4.

The Alignment Segment feature type represents IfcAlignmentSegment elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_segment_type

The type of Alignment Segment, which could be ifcalignmentcantsegment, ifcalignmenthorizontalsegment, or ifcalignmentverticalsegment.

Note  Some attributes in the table are dependent on the selected segment type. The attributes displayed will vary based on the specific alignment segment.

ifc_start_dist_along

Distance along the horizontal alignment.

Note  Displayed only when segment type is ifcalignmentverticalsegment and ifcalignmentcantsegment.

ifc_horizontal_length

Total length of the segment.

Note  Displayed only when segment type is ifcalignmentverticalsegment and ifcalignmentcantsegment.

ifc_start_cant_left

Length of left cant at the beginning of the segment.

Note  Displayed only when segment type is ifcalignmentcantsegment.

ifc_end_cant_left

Length of left cant at the end of the segment.

Note  Displayed only when segment type is ifcalignmentcantsegment.

ifc_start_cant_right

Length of the right cant at the start of the segment.

Note  Displayed only when segment type is ifcalignmentcantsegment.

ifc_end_cant_right

Length of the right cant at the end of the segment.

Note  Displayed only when segment type is ifcalignmentcantsegment.

ifc_start_point.x

The x-coordinate of the start point of the segment.

Note  Displayed only when segment type is ifcalignmenthorizontalsegment.

ifc_start_point.y

The y-coordinate of the start point of the segment.

Note  Displayed only when segment type is ifcalignmenthorizontalsegment.

ifc_start_direction

Direction of the tangent at the start point of the alignment segment.

Note  Displayed only when segment type is ifcalignmenthorizontalsegment.

ifc_start_radius_of_curvature

Radius of the curvature at the start point of the segment.

Note  Displayed only when segment type is ifcalignmenthorizontalsegment.

ifc_segment_length

Total length of the segment along the curve.

Note  Displayed only when segment type is ifcalignmenthorizontalsegment.

ifc_gravity_center_line_height

Height of the gravity center line in the vertical direction.

Note  Displayed only when segment type is ifcalignmenthorizontalsegment.

ifc_start_height

Elevation of the start point.

Note  Displayed only when segment type is ifcalignmentverticalsegment.

ifc_start_gradient

Gradient of the alignment segment at the start point.

Note  Displayed only when segment type is ifcalignmentverticalsegment.

ifc_end_gradient

Gradient of the alignment segment at the end point.

Note  Displayed only when segment type is ifcalignmentverticalsegment.

ifc_radius_of_curvature

Radius of the curvature for the segment.

Note  Displayed only when segment type is ifcalignmentverticalsegment.

ifc_predefined_type

Type of selected Alignment Segment. The possible types are:

ifcalignmentcantsegment

  • LINE
  • CIRCULARARC
  • CLOTHOID
  • COSINECURVE
  • CUBIC
  • HELMERTCURVE
  • SINECURVE
  • VIENNSEBEND

ifcalignmenthorizontalsegment

  • BLOSSCURCE
  • CONSTANTCANT
  • COSINECURVE
  • HELMERTCURVE
  • LINEARTRANSITION
  • SINECURVE
  • VIENNSEBEND

ifcalignmentverticalsegment

  • CONSTANTGRADIENT
  • PARABOLICARC
  • CIRCULARARC
  • CLOTHOID
Note  Displayed for all segment types.

ifc_start_tag

Tag to annotate the start point of the alignment segment.

ifc_end_tag

Tag to annotate the end point of the alignment segment.

Alignment Vertical

Note  This element type is new to IFC 4x3 and not supported in IFC 4.

The Alignment Vertical feature type represents IfcAlignmentVertical elements in the dataset. It does not have any unique attributes.

Annotation

The Annotation feature type represents IfcAnnotation elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Annotation. The possible types are:

  • CONTOURLINE
  • DIMENSION
  • ISOBAR
  • ISOLUX
  • ISOTHERM
  • LEADER
  • SURVEY
  • SYMBOL
  • TEXT
  • USERDEFINED
  • NOTDEFINED

Beam

The Beam feature type represents IfcBeam elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Beam. The possible types are:

  • BEAM
  • CORNICE
  • DIAPHRAGM
  • EDGEBEAM
  • GIRDER_SEGMENT
  • HATSTONE
  • HOLLOWCORE
  • JOIST
  • LINTEL
  • PIERCAP
  • SPANDREL
  • T_BEAM
  • USERDEFINED
  • NOTDEFINED

Bearing

Note  This element type is new to IFC 4x3 and not supported in IFC 4.

The Bearing feature type represents IfcBearing elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Bearing. The possible types are:

  • CYLINDRICAL
  • DISK
  • ELASTOMERIC
  • GUIDE
  • POT
  • ROCKER
  • ROLLER
  • SPHERICAL
  • USERDEFINED
  • NOTDEFINED

Building

The Building feature type represents IfcBuilding elements in the dataset. It does not have any unique attributes.

Building Element Part

The Building Element Part feature type represents IfcBuildingElementPart elements in the dataset. It does not have any unique attributes.

Building Element Proxy

The Building Element Proxy feature type represents IfcBuildingElementProxy elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Building Element Proxy. The possible types are:

  • COMPLEX
  • ELEMENT
  • PARTIAL
  • PROVISIONFORSPACE
  • PROVISIONFORVOID
  • USERDEFINED
  • NOTDEFINED

Building Storey

The Building Storey feature type represents IfcBuildingStorey elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_elevation

Represents the vertical position of the storey's base relative to the building’s internal 0.00 reference level.

Chimney

The Chimney feature type represents IfcChimney elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Chimney. The possible types of chimney are:

  • USERDEFINED
  • NOTDEFINED

Column

The Column feature type represents IfcColumn elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Column. The possible types are:

  • COLUMN
  • PIERSTEM
  • PIERSTEM_SEGMENT
  • PILASTER
  • STANDCOLUMN
  • USERDEFINED
  • NOTDEFINED

Course

Note  This element type is new to IFC 4x3 and not supported in IFC 4.

The Course feature type represents IfcCourse elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Course. The possible types are:

  • ARMOUR
  • BALLASTBED
  • CORE
  • FILTER
  • PAVEMENT
  • PROTECTION
  • USERDEFINED
  • NOTDEFINED

Covering

The Covering feature type represents IfcCovering elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Covering. The possible types are:

  • CEILING
  • CLADDING
  • COPING
  • FLOORING
  • INSULATION
  • MEMBRANE
  • MOLDING
  • ROOFING
  • SKIRTINGBOARD
  • SLEEVING
  • TOPPING
  • WRAPPING
  • USERDEFINED
  • NOTDEFINED

Curtain Wall

The Curtain Wall feature type represents IfcCurtainWall elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Curtain Wall. The possible types are :

  • USERDEFINED
  • NOTDEFINED

Deep Foundation

Note  This element type is new to IFC 4x3 and not supported in IFC 4.

The Deep Foundation feature type represents IfcDeepFoundation elements in the dataset. It does not have any unique attributes.

Door

The Door feature type represents IfcDoor elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_overall_height

Height of the door.

ifc_overall_width

Width of the door.

ifc_predefined_type

Type of Door. The possible types are:

  • BOOM_BARRIER
  • DOOR
  • GATE
  • TRAPDOOR
  • TURNSTILE
  • USERDEFINED
  • NOTDEFINED

ifc_operation_type

Defines the general layout and operation of the door type, including the partitioning of panels and the respective panel operations.

  • DOUBLE_DOOR_DOUBLE_SWING
  • DOUBLE_DOOR_FOLDING
  • DOUBLE_DOOR_LIFTING_VERTICAL
  • DOUBLE_DOOR_SINGLE_SWING
  • DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT
  • DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT
  • DOUBLE_DOOR_SLIDING
  • DOUBLE_SWING_LEFT
  • DOUBLE_SWING_RIGHT
  • FOLDING_TO_LEFT
  • FOLDING_TO_RIGHT
  • LIFTING_HORIZONTAL
  • LIFTING_VERTICAL_LEFT
  • LIFTING_VERTICAL_RIGHT
  • REVOLVING
  • REVOLVING_VERTICAL
  • ROLLINGUP
  • SINGLE_SWING_LEFT
  • SINGLE_SWING_RIGHT
  • SLIDING_TO_LEFT
  • SLIDING_TO_RIGHT
  • SWING_FIXED_LEFT
  • SWING_FIXED_RIGHT
  • USERDEFINED
  • NOTDEFINED

ifc_user_defined_operation_type

Specifies the designator for a user-defined operation type.

Footing

The Footing feature type represents IfcFooting elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Footing. The possible types are:

  • CAISSON_FOUNDATION
  • FOOTING_BEAM
  • PAD_FOOTING
  • PILE_CAP
  • STRIP_FOOTING
  • USERDEFINED
  • NOTDEFINED

GeographicElement

The GeographicElement feature type represents IfcGeographicElement elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of GeographicElement. The possible types are:

  • TERRAIN
  • SOIL_BORING_POINT (IFC 4x3 only)
  • VEGETATION (IFC 4x3 only)
  • USERDEFINED
  • NOTDEFINED

Kerb

Note  This element type is new to IFC 4x3 and not supported in IFC 4.

The Kerb feature type represents IfcKerb elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Kerb. The possible types are:

  • USERDEFINED
  • NOTDEFINED

Member

The Member feature type represents IfcMember elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Member. The possible types are:

  • ARCH_SEGMENT
  • BRACE
  • CHORD
  • COLLAR
  • MEMBER
  • MULLION
  • PLATE
  • POST
  • PURLIN
  • RAFTER
  • STAY_CABLE
  • STIFFENING_RIB
  • STRINGER
  • STRUCTURALCABLE
  • STRUT
  • STUD
  • SUSPENDER
  • SUSPENSION_CABLE
  • TIEBAR
  • USERDEFINED
  • NOTDEFINED

Rail

The Rail feature type represents IfcRail elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Rail. The possible types are:

  • BLADE
  • CHECKRAIL
  • GUARDRAIL
  • RACKRAIL
  • RAIL
  • STOCKRAIL
  • USERDEFINED
  • NOTDEFINED

Railing

The Railing feature type represents IfcRailing elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Railing. The possible types are:

  • BALUSTRADE
  • FENCE
  • GUARDRAIL
  • HANDRAIL
  • USERDEFINED
  • NOTDEFINED

Ramp

The Ramp feature type represents IfcRamp elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Ramp. The possible types are:

  • HALF_TURN_RAMP
  • QUARTER_TURN_RAMP
  • SPIRAL_RAMP
  • STRAIGHT_RUN_RAMP
  • TWO_QUARTER_TURN_RAMP
  • TWO_STRAIGHT_RUN_RAMP
  • USERDEFINED
  • NOTDEFINED

Ramp Flight

The Ramp Flight feature type represents IfcRampFlight elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Ramp Flight. The possible types are:

  • SPIRAL
  • STRAIGHT
  • USERDEFINED
  • NOTDEFINED

Roof

The Roof feature type represents IfcRoof elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Roof. The possible types are:

  • BARREL_ROOF
  • BUTTERFLY_ROOF
  • DOME_ROOF
  • FLAT_ROOF
  • FREEFORM
  • GABLE_ROOF
  • GAMBREL_ROOF
  • HIPPED_GABLE_ROOF
  • HIP_ROOF
  • MANSARD_ROOF
  • PAVILION_ROOF
  • RAINBOW_ROOF
  • SHED_ROOF
  • USERDEFINED
  • NOTDEFINED

Site

The Site feature type represents IfcSite elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_ref_latitude

Specifies the world latitude at the reference point.

ifc_ref_longitude

Specifies the world longitude at the reference point.

ifc_ref_elevation

Represents the datum elevation relative to sea level.

ifc_land_title_number

Specifies Land title number.

Note  This property has been deprecated in IFC 4x3. When writing to IFC 4x3, this attribute will be written as the Pset_LandRegistration.

Slab

The Slab feature type represents IfcSlab elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Slab. The possible types are:

  • APPROACH_SLAB
  • BASESLAB
  • FLOOR
  • LANDING
  • PAVING
  • ROOF
  • SIDEWALK
  • TRACKSLAB
  • WEARING
  • USERDEFINED
  • NOTDEFINED

Space

The Space feature type represents IfcSpace elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Space. The possible types are:

  • BERTH
  • EXTERNAL
  • GFA
  • INTERNAL
  • PARKING
  • SPACE
  • USERDEFINED
  • NOTDEFINED

ifc_elevation_with_flooring (Reader only)

Level of flooring of the space.

Stair

The Stair feature type represents IfcStair elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_predefined_type

Type of Stair. The possible types are:

  • CURVED_RUN_STAIR
  • DOUBLE_RETURN_STAIR
  • HALF_TURN_STAIR
  • HALF_WINDING_STAIR
  • LADDER
  • QUARTER_TURN_STAIR
  • QUARTER_WINDING_STAIR
  • SPIRAL_STAIR
  • STRAIGHT_RUN_STAIR
  • THREE_QUARTER_TURN_STAIR
  • THREE_QUARTER_WINDING_STAIR
  • TWO_CURVED_RUN_STAIR
  • TWO_QUARTER_TURN_STAIR
  • TWO_QUARTER_WINDING_STAIR
  • TWO_STRAIGHT_RUN_STAIR
  • USERDEFINED
  • NOTDEFINED

Stair Flight

The Stair Flight feature type represents IfcStairFlight elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_number_of_risers

Number of Risers.

Note  This property has been deprecated in IFC 4 and above. When writing, this attribute will be written as the Pset_StairFlightCommon.NumberOfRisers.

ifc_number_of_treads

Number of Treads.

Note  This property has been deprecated in IFC 4 and above. When writing, this attribute will be written as the Pset_StairFlightCommon.NumberOfTreads.

ifc_riser_height

Riser height.

Note  This property has been deprecated in IFC 4 and above. When writing, this attribute will be written as the Pset_StairFlightCommon.RiserHeight.

ifc_tread_length

Tread length.

Note  This property has been deprecated in IFC 4 and above. When writing, this attribute will be written as the Pset_StairFlightCommon.TreadLength.

ifc_predefined_type

Type of Stair Flight. The possible types are:

  • CURVED
  • FREEFORM
  • SPIRAL
  • STRAIGHT
  • WINDER
  • USERDEFINED
  • NOTDEFINED

Window

The Window feature type represents IfcWindow elements in the dataset. It has the following unique attributes:

Attribute/Trait Name

Contents

ifc_overall_height

Height of the window.

ifc_overall_width

Width of the window.

ifc_partitioning_type

Layout type of the window in terms of partitioning of panels. The possible types are:

  • DOUBLE_PANEL_HORIZONTAL
  • DOUBLE_PANEL_VERTICAL
  • SINGLE_PANEL
  • TRIPLE_PANEL_BOTTOM
  • TRIPLE_PANEL_HORIZONTAL
  • TRIPLE_PANEL_LEFT
  • TRIPLE_PANEL_RIGHT
  • TRIPLE_PANEL_TOP
  • TRIPLE_PANEL_VERTICAL
  • USERDEFINED
  • NOTDEFINED

ifc_predefined_type

Type of Window. The possible types are:

  • LIGHTDOME
  • SKYLIGHT
  • WINDOW
  • USERDEFINED
  • NOTDEFINED

ifc_related_opening_element_id

Global Id of the Opening related to the window.