Objects without IfcClassificationReference

Are there IfcElements that cannot contain a Classification Reference? At the moment I'm working with IFC models exported from ArchiCad. These models contain multiple Classification References per object, but the entity IfcBuildingElementPart for instance does not contain any. Same with IfcOpeningElement.

The purpose of the script is to identify the objects that do not contain a Classification Reference, but where it is expected to have one.

Code snippit, filterering based upon IfcElement

ifc = ifcopenshell.open(file)
elements = ifc.by_type('IfcElement')

for element in elements:
sublist = get_related_classifications(element)


  • edited November 2021
    • Any instance of IfcObjectDefinition can be associated to a classificationReference, including IfcbuildingElementPart and IfcOpeningElement. : https://standards.buildingsmart.org/IFC/DEV/IFC4_3/RC2/HTML/schema/ifckernel/lexical/ifcobjectdefinition.htm
    • An instance of IfcObjectDefinition is not necessarily associated to a classificationReference. (Cardinality is being associated to None or many IfcRelAssociatesClassification)
    • ArchiCAD Probably don't associate a classification to IfcBuildingElementPart or IfcOpeningElement because the software automatically generates the object (I guess you are using the option to split the element when saving as to IFC) with multilayered walls and Windows. So, the user didn't identify a classification reference. Classification Reference you are seeing are all user defined in ArchiCAD.
  • @MaoZerhouni thanks for the explanation.

Sign In or Register to comment.