Understanding Element Classification for IFC 2×3 exchange in ARCHICAD 18/19 – Part 3 – Predefined Types

Introduction

This is the final part of Element Classification in ARCHICAD. Now this post is predominantly put together as a resource for other ARCHICAD users interested in gaining more knowledge around IFC so its not generally something I expect everyone to read top to bottom.

The point of the post though is to demonstrate that as well as Element Classification at both Component/Element and Type level there is also an additional way to classify elements in the IFC schema. This is covered by a series of Predefined Types. Some of these are available to the user when placing Components/Elements in the model. Many users who have dabbled with Element Classification will understand that a CEILING for example is a Predefined Type of a Covering. Graphisoft added this into the list to choose from but you could also choose Covering and then select CEILING from the Predefined Type list. Either method is valid.

However, this opportunity to classify at Component/Element level is also further expanded at Type level. As we have seen in the previous post some of the out-of-the-box library parts are classified with their Predefined Types at the Type level. The list of available Predefined Types is very extensive. The idea that IFC is very limited (except perhaps for infrastructure which is being developed for IFC5) is very much shown to be untrue.

The biggest issue for users is how they would practically use the Predefined Types. The Types can be setup in GDL objects but beyond this there is no way to preconfigure the settings. A user can do this work manually but in reality this creates a lot of work and a lot of management issues as projects change.

Note: All these Predefined Types are also covered in BS 8541-1:2012 in Appendix D Summary of the IFC Vocabulary (pages 24-60).


PredefinedType at Component/Element level

  • Covering (IfcCovering)CEILING, FLOORING, CLADDING, ROOFING, INSULATION, MEMBRANE, SLEEVINGWRAPPING, USERDEFINED and NOTDEFINED.
  • Footing (IfcFooting) – FOOTING_BEAM, PAD_FOOTING, PILE_CAP, STRIP_FOOTINGUSERDEFINED and NOTDEFINED.
  • Railing (IfcRailing) – HANDRAIL, GUARDRAIL, BALUSTRADEUSERDEFINED and NOTDEFINED.
  • Ramp (IfcRamp) STRAIGHT_RUN_RAMP, TWO_STRAIGHT_RUN_RAMP, QUARTER_TURN_RAMP, TWO_QUARTER_TURN_RAMP, HALF_TURN_RAMP, SPIRAL_RAMPUSERDEFINED and NOTDEFINED.
  • Slab (IfcSlab) – FLOOR, ROOF, LANDING, BASESLABUSERDEFINED and NOTDEFINED.
  • Stair (IfcStair) – STRAIGHT_RUN_STAIR, TWO_STRAIGHT_RUN_STAIR, QUARTER_WINDING_STAIR, QUARTER_TURN_STAIR, HALF_WINDING_STAIR, HALF_TURN_STAIR, TWO_QUARTER_WINDING_STAIR, TWO_QUARTER_TURN_STAIR, THREE_QUARTER_WINDING_STAIR, THREE_QUARTER_TURN_STAIR, SPIRAL_STAIR, DOUBLE_RETURN_STAIR, CURVED_RUN_STAIR, TWO_CURVED_RUN_STAIRUSERDEFINED and NOTDEFINED.

OperationType at Component/Element level

  • Transport Element (IfcTransportElement) – ELEVATOR, ESCALATOR, MOVINGWALKWAYUSERDEFINED and NOTDEFINED.

PredefinedType at Type level

  • IfcActuatorType ELECTRICACTUATOR, HANDOPERATEDACTUATOR, HYDRAULICACTUATOR, PNEUMATICACTUATOR, THERMOSTATICACTUATORUSERDEFINED and NOTDEFINED.
  • IfcAirTerminalType GRILLE, REGISTER, DIFFUSER, EYEBALL, IRIS, LINEARGRILLE, LINEARDIFFUSERUSERDEFINED and NOTDEFINED.
  • IfcAirTerminalBoxType CONSTANTFLOW, VARIABLEFLOWPRESSUREDEPENDANT, VARIABLEFLOWPRESSUREINDEPENDANT, USERDEFINED and NOTDEFINED.
  • IfcAudioVisualApplianceType* – not yet available (IFC4)
  • IfcAirToAirHeatRecoveryType FIXEDPLATECOUNTERFLOWEXCHANGER, FIXEDPLATECROSSFLOWEXCHANGER, FIXEDPLATEPARALLELFLOWEXCHANGER, ROTARYWHEEL, RUNAROUNDCOILLOOP, HEATPIPE, TWINTOWERENTHALPHYRECOVERYLOOPS, THERMOSIPHONSEALEDTUBEHEATEXCHANGERS, THERMOSIPHONCOILTYPEHEATEXCHANGERSUSERDEFINED and NOTDEFINED.
  • IfcAlarmType BELL, BREAKGLASSBUTTON, LIGHT, MANUALPULLBOX, SIREN, WHISTLEUSERDEFINED and NOTDEFINED.
  • IfcAssemblyType* – not yet available (IFC4)
  • IfcBeamType BEAM, JOIST, LINTEL, T-BEAMUSERDEFINED and NOTDEFINED.
  • IfcBoilerType WATER, STEAM, USERDEFINED and NOTDEFINED.
  • IfcBuildingElementType – n/a
  • IfcBuildingElementPartType –  n/a
  • IfcBuildingElementProxyType – USERDEFINED and NOTDEFINED.
  • IfcBurnerType* – not yet available (IFC4)
  • IfcCableCarrierFittingType BEND, CROSS, REDUCER, TEEUSERDEFINED and NOTDEFINED.
  • IfcCableFittingType* – not yet available (IFC4)
  • IfcCableSegmentType CABLELADDERSEGMENTTYPE, CABLETRAYSEGMENT, CABLETRUNKINGSEGMENT, CONDUITSEGMENT, USERDEFINED and NOTDEFINED.
  • IfcChillerType AIRCOOLED, WATERCOOLED, HEATRECOVERYUSERDEFINED and NOTDEFINED.
  • IfcChimneyType* not yet available (IFC4)
  • IfcCoilType DXCOOLINGCOIL, WATERCOOLINGCOIL, STEAMHEATINGCOIL, WATERHEATINGCOIL, ELECTRICHEATINGCOIL, GASHEATINGCOIL, USERDEFINED and NOTDEFINED.
  • IfcColumnType – COLUMNUSERDEFINED and NOTDEFINED.
  • IfcCommunicationsApplianceType* – not yet available (IFC4)
  • IfcCompressorType  DYNAMIC, RECIPROCATING, ROTARY, SCROLL, TROCHOIDAL, SINGLESTAGE, BOOSTER, OPENTYPE, HERMETIC, SEMIHERMETIC, WELDEDSHELLHERMETIC, ROLLINGPISTON, ROTARYVANE, SINGLESCREW, TWINSCREW, USERDEFINED and NOTDEFINED.
  • IfcCooledBeamType ACTIVE, PASSIVE, USERDEFINED and NOTDEFINED.
  • IfcCoolingTowerType NATURALDRAFT, MECHANICALINDUCEDDRAFT, MECHANICALFORCEDDRAFT, USERDEFINED and NOTDEFINED.
  • IfcCondenserType WATERCOOLEDSHELLTUBE, WATERCOOLEDSHELLCOIL, WATERCOOLEDTUBEINTUBE, WATERCOOLEDBRAZEDPLATE,  AIRCOOLED, EVAPORATIVECOOLED, USERDEFINED and NOTDEFINED.
  • IfcControllerType FLOATING, PROPORTIONAL, PROPORTIONALINTEGRALPROPORTIONALINTEGRALDERIVATIVE, TIMEDTWOPOSITION, TWOPOSITIONUSERDEFINED and NOTDEFINED.
  • IfcCoveringType CEILING, FLOORING, ROOFING, INSULATION, MEMBRANE, SLEEVING, WRAPPING, USERDEFINED and NOTDEFINED.
  • IfcCurtainWallType – USERDEFINED and NOTDEFINED.
  • IfcDamperType CONTROLDAMPER, FIREDAMPER, SMOKEDAMPER, FIRESMOKEDAMPER, BACKDRAFTDAMPER, RELIEFDAMPER, BLASTDAMPER, GRAVITYDAMPER, GRAVITYRELIEFDAMPER, BALANCINGDAMPER, FUMEHOODEXHAUST, USERDEFINED and NOTDEFINED.
  • IfcDiscreteAccessoryType -n/a
  • IfcDistributionChamberElementType FORMEDDUCT, INSPECTIONCHAMBER, INSPECTIONPIT, MANHOLE, METERCHAMBER, SUMP, TRENCH, VALVECHAMBERUSERDEFINED and NOTDEFINED.
  • IfcDistributionControlElementType – n/a
  • IfcDistributionElementType – n/a
  • IfcDistributionFlowElementType – n/a
  • IfcDoorStyle – n/a
  • IfcDoorType  not yet available (IFC4)
  • IfcDuctFittingType BEND, CONNECTOR, ENTRY, EXIT, JUNCTION, OBSTRUCTION, TRANSITIONUSERDEFINED and NOTDEFINED.
  • IfcDuctSegmentType RIGIDSEGMENT, FLEXIBLESEGMENTUSERDEFINED and NOTDEFINED.
  • IfcDuctSilencerType FLATOVAL, RECTANGULAR, ROUNDUSERDEFINED and NOTDEFINED.
  • IfcElectricApplianceType COMPUTER, DIRECTWATERHEATER, DISHWASHER, ELECTRICCOOKER, ELECTRICHEATER, FACSIMILE, FREESTANDINGFAN, FREEZER, FRIDGE_FREEZER, HANDDRYER, INDIRECTWATERHEATER, MICROWAVE, PHOTOCOPIER, PRINTER, REFRIGERATOR, RADIANTHEATER, SCANNER, TELEPHONE, TUMBLEDRYER, TV, VENDINGMACHINE, WASHINGMACHINE, WATERHEATER, WATERCOOLERUSERDEFINED and NOTDEFINED.
  • IfcElectricDistributionBoardType* – not yet available (IFC4)
  • IfcElectricFlowStorageDeviceType BATTERY, CAPACITORBANK, HARMONICFILTER, INDUCTORBANK, UPSUSERDEFINED and NOTDEFINED.
  • IfcElectricGeneratorType USERDEFINED and NOTDEFINED.
  • IfcElectricHeaterType ELECTRICPOINTHEATER, ELECTRICCABLEHEATER, ELECTRICMATHEATERUSERDEFINED and NOTDEFINED.
  • IfcElectricMotorType  DC, INDUCTION, POLYPHASE, RELUCTANCESYNCHRONOUS, SYNCHRONOUS, USERDEFINED and NOTDEFINED.
  • IfcElectricTimeControlType TIMECLOCK, TIMEDELAY, RELAY, USERDEFINED and NOTDEFINED.
  • IfcElementType – n/a
  • IfcElementComponentType – n/a
  • IfcEngineType* – not yet available (IFC4)
  • IfcEnergyConversionDeviceType – n/a
  • IfcEvaporativeCoolerType DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER, DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER, DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER, DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER, DIRECTEVAPORATIVEAIRWSHER, INDIRECTEVAPORATIVEPACKAGEAIRCOOLER, INDIRECTEVAPORATIVEWETCOIL, INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER, INDIRECTDIRECTCOMBINATION, USERDEFINED and NOTDEFINED.
  • IfcEvaporatorType DIRECTEXPANSIONSHELLANDTUBE, DIRECTEXPANSIONTUBEINTUBE, DIRECTEXPANSIONBRAZEDPLATE, FLOODEDSHELLANDTUBE, SHELLANDCOIL, USERDEFINED and NOTDEFINED.
  • IfcFanType CENTRIFUGALFORWARDCURVED, CENTRIFUGALRADIAL, CENTRIFUGALBACKWARDINLINEDCURVE, CENTRIFUGALAIRCOIL,  TUBEAXIAL, VALEAXIAL, PROPELLORAXIAL, USERDEFINED and NOTDEFINED.
  • IfcFastenerType – n/a
  • IfcFilterType AIRPARTICLEFILTER, ODORFILTER, OILFILTER, STRAINER, WATERFILTERUSERDEFINED and NOTDEFINED.
  • IfcFireSuppressionTerminalType BREECHINGINLET, FIREHYDRANT, HOSEREEL, SPRINKLER, SPRINKLERDETECTORUSERDEFINED and NOTDEFINED
  • IfcFlowControllerType – n/a
  • IfcFlowFittingType – n/a
  • IfcFlowInstrumentType PRESSUREGAUGE, THERMOMETER, AMMETER, FREQUENCYMETER, POWERFACTORMETER, PHASEANGLEMETER, VOLTMETER_PEAK, VOLTMETER_RMSUSERDEFINED and NOTDEFINED
  • IfcFlowMeterType ELECTRICMETER, ENERGYMETER, FLOWMETER, GASMETER, OILMETER, WATERMETER, USERDEFINED and NOTDEFINED.
  • IfcFlowMovingDeviceType – n/a
  • IfcFlowSegmentType – n/a
  • IfcFlowStorageDeviceType – n/a
  • IfcFlowTerminalType – n/a
  • IfcFlowTreatmentDeviceType – n/a
  • IfcFurnitureType SITE, FACTORY and NOTDEFINED
  • IfcFurnishingElementType – n/a
  • IfcGasTerminalType GASAPPLIANCE, GASBOOSTER, GASBURNERUSERDEFINED and NOTDEFINED.
  • IfcGeographicalElementType* – not yet available (IFC4)
  • IfcHeatExchangerType PLATE, SHELLANDTUBE, USERDEFINED and NOTDEFINED.
  • IfcHumidifierType STEAMINJECTION, ADIABATICAIRWASHER, ADIABATICPAN, ADIABATICWETTEDELEMENT, ADIABATICATOMIZING, ADIABATICULTRASONIC, ADIABATICRIGIDMEDIA, ADIABATICCOMPRESSEDAIRNOZZLE, ASSISTEDELECTRIC, ASSISTEDNATURALGAS, ASSISTEDPROPANE, ASSISTEDBUTANE, ASSISTEDSTEAM, USERDEFINED and NOTDEFINED.
  • IfcInterceptorType* – not yet available (IFC4)
  • IfcJunctionBoxType – USERDEFINED and NOTDEFINED.
  • IfcLampType COMPACTFLUORESCENT, FLUORESCENT, HIGHPRESSUREMERCURY, HIGHPRESSURESODIUM, METALHALIDE, TUNGSTENFILAMENTUSERDEFINED and NOTDEFINED.
  • IfcLightFixtureType POINTSOURCE, DIRECTIONSOURCEUSERDEFINED and NOTDEFINED.
  • IfcMechanicalFastenerType – n/a
  • IfcMedicalDeviceType* – not yet available (IFC4)
  • IfcMemberType BRACE, CHORD, COLLAR, MEMBER, MULLION, PLATE, POST, PURLIN, RAFTER, STRINGER, STRUT, STUDUSERDEFINED and NOTDEFINED.
  • IfcMotorConnectionType BELTDRIVE, COUPLING, DIRECTDRIVE, USERDEFINED and NOTDEFINED.
  • IfcOutletType AUDIOVISUALOUTLET, COMMUNICATIONSOUTLET, POWEROUTLETUSERDEFINED and NOTDEFINED
  • IfcPipeFittingType – BEND, CONNECTOR, ENTRY, EXIT, JUNCTION, OBSTRUCTION, TRANSITIONUSERDEFINED and NOTDEFINED.
  • IfcPipeSegmentType RIGIDSEGMENT, FLEXIBLESEGMENT, GUTTER, SPOOLUSERDEFINED and NOTDEFINED.
  • IfcPlateType CURTAIN_PANEL, SHEETUSERDEFINED and NOTDEFINED.
  • IfcProtectiveDeviceType FUSEDISCONNECTOR, CIRCUITBREAKER, EARTHFAILUREDEVICE, RISIDUALCURRENTCIRCUITBREAKER, RESIDUALCURRENTSWITCH, VARISTOR, USERDEFINED and NOTDEFINED.
  • IfcProtectiveDeviceTrippingUnitType* – not yet available (IFC4)
  • IfcPumpType  CIRCULATOR, ENDSUCTION, SPLITCASE, VERTICALINLINE, VERTICALTURBINEUSERDEFINED and NOTDEFINED.
  • IfcRailingType HANDRAIL, GUARDRAIL, BALUSTRADEUSERDEFINED and NOTDEFINED.
  • IfcRampFlightType STRAIGHT, SPIRALUSERDEFINED and NOTDEFINED.
  • IfcRoofType FLOOR, ROOF, LANDING, BASESLABUSERDEFINED and NOTDEFINED.
  • IfcSanitaryTerminalTypeBATH, CISTERN, SHOWER, SINK, SANITARYFOUNTAIN, TOILETPAN, URINAL, WASHHANDBASINWCSEATUSERDEFINED and NOTDEFINED.
  • IfcSensorType CO2SENSOR, FIRESENSOR, FLOWSENSOR, GASSENSOR, HEATSENSOR, HUMIDITYSENSOR, LIGHTSENSOR, MOISTURESENSOR, MOVEMENTSENSOR, PRESSURESENSOR, SMOKESENSOR, SOUNDSENSOR, TEMPERATURESENSORUSERDEFINED and NOTDEFINED.
  • IfcShadingDeviceType* – not yet available (IFC4)
  • IfcSlabType – FLOORROOFLANDINGBASESLAB, USERDEFINED and NOTDEFINED.
  • IfcSolarDeviceType* – not yet available (IFC4)
  • IfcSpaceType USERDEFINED and NOTDEFINED.
  • IfcSpaceHeaterType SECTIONALRADIATOR, PANELRADIATOR, TUBULARRADIATOR, CONVECTOR, BASEBOARDHEATER, FINNEDTUBEUNIT, UNITHEATER, USERDEFINED and NOTDEFINED.
  • IfcSpatialStructureElementType – n/a
  • IfcStackTerminalType BIRDCAGE, COWL, RAINWATERHOPPERUSERDEFINED and NOTDEFINED.
  • IfcStairFlightType STRAIGHT, WINDER, SPIRAL, CURVED, FREEFORMUSERDEFINED and NOTDEFINED.
  • IfcSwitchingDeviceType CONTACTOR, EMERGENCYSTOP, STARTER, SWITCHDISCONNECTOR, TOOGLESWITCH, USERDEFINED and NOTDEFINED.
  • IfcSystemFurnitureElementType – n/a
  • IfcTankType PREFORMED, SECTIONAL, EXPANSION, PRESSUREVESSELUSERDEFINED and NOTDEFINED.
  • IfcTransformerType CURRENT, FREQUENCY, VOLTAGEUSERDEFINED and NOTDEFINED.
  • IfcTransportElementType ELEVATOR, ESCALATOR, MOVINGWALKWAYUSERDEFINED and NOTDEFINED.
  • IfcTubeBundleType FINNED, USERDEFINED and NOTDEFINED.
  • IfcUnitaryEquipmentType AIRHANDLER, AIRCONDITIONINGUNIT, SPLITSYSTEM, ROOFTOPUNIT, USERDEFINED and NOTDEFINED.
  • IfcUnitaryControlElementType* – not yet available (IFC4)
  • IfcValveType AIRRELEASE, ANTIVACUUM, CHANGEOVER, CHECK, COMMISSIONING, DIVERTING, DRAWOFFCOCK, DOUBLECHECK, DOUBLEREGULATING, FAUCET, FLUSHING, GASCOCK, GASTAP, ISOLATING, MIXING, PRESSUREREDUCING, PRESSURERELIEF, REGULATING, SAFETYCUTOFF, STEAMTRAP, STOPCOCKUSERDEFINED and NOTDEFINED.
  • IfcVibrationIsolatorType COMPRESSION, SPRING, USERDEFINED and NOTDEFINED.
  • IfcWallType STANDARD, POLYGONAL, SHEAR, ELEMENTEDWALL, PLUMBINGWALLUSERDEFINED and NOTDEFINED.
  • IfcWasteTerminalType FLOORTRAP, FLOORWASTE, GULLYSUMP, GULLYTRAP, GREASEINTERCEPTOR, OILINTERCEPTOR, PETROLINTERCEPTOR, ROOFDRAIN, WASTEDISPOSALUNIT, WASTETRAPUSERDEFINED and NOTDEFINED.
  • IfcWindowStyle – n/a
  • IfcWindowType – n/a

ConstructionType at Type level

  • IfcDoorStyle – ALUMINIUM, HIGH_GRADE_STEEL, STEEL, WOOD, ALUMINIUM_WOOD, PLASTIC, OTHER_CONSTRUCTION and NOTDEFINED.
  • IfcWindowStyle – ALUMINIUM, HIGH_GRADE_STEEL, STEEL, WOOD, ALUMINIUM_WOOD, PLASTIC, OTHER_CONSTRUCTION and NOTDEFINED.

OperationType at Type level

  • IfcDoorStyle – SINGLE_SWING_LEFT, SINGLE_SWING_RIGHT, DOUBLE_DOOR_SINGLE_SWING, DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT, DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT, DOUBLE_SWING_LEFT, DOUBLE_SWING_RIGHT, DOUBLE_DOOR_DOUBLE_SWING, SLIDING_TO_LEFT, SLIDING_TO_RIGHT, DOUBLE_DOOR_SLIDING, FOLDING_TO_LEFT, FOLDING_TO_RIGHT, DOUBLE_DOOR_FOLDING, REVOLVING, ROLLINGUP, USERDEFINED and NOTDEFINED.
  • IfcWindowStyle – SINGLE_PANEL, DOUBLE_PANEL_VERTICAL, DOUBLE_PANEL_HORIZONTAL, TRIPLE_PANEL_VERTICAL, TRIPLE_PANEL_BOTTOM, TRIPLE_PANEL_TOP, TRIPLE_PANEL_LEFT, TRIPLE_PANEL_RIGHT, TRIPLE_PANEL_HORIZONTAL, USERDEFINED and NOTDEFINED.

Conclusion

Those who state that IFC is very limited when it comes to classification have often not delved into the full breakdown available. (Amusingly on twitter yesterday (27.09.15) the classification got criticised for being too detailed in places! You can’t win!!) For ARCHICAD users the Predefined Types at Component/Element level are pretty straightforward and these can easily be pre-configured with Favorites. However, other than the out-of-the-box GDL objects (and other good GDL content) most of the Predefined Types at Type level would need to be assigned manually. This means editing each relevant Type which as mentioned in a previous post removes the automation of IFC mapping. This is not an elegant workflow.

Having looked at IFC4 there appears to be more scope to link the Predefined Types at both levels as there is more of a one-to-one relationship between Component/Element and Types. This should in the future allow greater automation / presets, with future versions of ARCHICAD. More on IFC4 another day.

Rob Jackson, Associate Director, Bond Bryan Architects

linkedinicon4

This post has been viewed 2350 times.

Leave a Reply

Your email address will not be published. Required fields are marked *