ifc_lite_core/generated/
schema.rs

1// This Source Code Form is subject to the terms of the Mozilla Public
2// License, v. 2.0. If a copy of the MPL was not distributed with this
3// file, You can obtain one at https://mozilla.org/MPL/2.0/.
4
5//! Auto-generated IFC Type Enum
6//!
7//! Generated from EXPRESS schema: IFC4X3_DEV_923b0514
8//!
9//! DO NOT EDIT - This file is auto-generated by @ifc-lite/codegen
10
11use std::fmt;
12
13/// A normalized IFC keyword not declared by the supported schema universe.
14#[derive(Debug, Clone, PartialEq, Eq, Hash)]
15pub struct UnknownIfcType {
16    name: String,
17    id: u32,
18}
19
20impl UnknownIfcType {
21    fn new(name: String) -> Self {
22        let id = crc32_hash(&name);
23        Self { name, id }
24    }
25
26    /// Normalized uppercase STEP keyword.
27    pub fn as_str(&self) -> &str {
28        &self.name
29    }
30
31    /// CRC32 identifier of the normalized keyword.
32    pub fn id(&self) -> u32 {
33        self.id
34    }
35}
36
37/// IFC Entity Types
38///
39/// All 1021 entity types from the supported schema universe.
40#[derive(Debug, Clone, PartialEq, Eq, Hash)]
41pub enum IfcType {
42    // Spatial Structure
43    IfcBoxedHalfSpace,
44    IfcBridge,
45    IfcBridgePart,
46    IfcBuilding,
47    IfcBuildingElementPart,
48    IfcBuildingElementPartType,
49    IfcBuildingElementProxy,
50    IfcBuildingElementProxyType,
51    IfcBuildingStorey,
52    IfcBuildingSystem,
53    IfcFacility,
54    /// Abstract entity
55    IfcFacilityPart,
56    IfcFacilityPartCommon,
57    IfcHalfSpaceSolid,
58    IfcMarineFacility,
59    IfcMarinePart,
60    IfcPolygonalBoundedHalfSpace,
61    IfcProject,
62    IfcProjectLibrary,
63    IfcProjectOrder,
64    IfcProjectedCRS,
65    IfcProjectionElement,
66    IfcRailway,
67    IfcRailwayPart,
68    IfcRelCoversSpaces,
69    IfcRelProjectsElement,
70    IfcRelServicesBuildings,
71    IfcRelSpaceBoundary,
72    IfcRelSpaceBoundary1stLevel,
73    IfcRelSpaceBoundary2ndLevel,
74    IfcRoad,
75    IfcRoadPart,
76    IfcSite,
77    IfcSpace,
78    IfcSpaceHeater,
79    IfcSpaceHeaterType,
80    IfcSpaceType,
81    /// Abstract entity
82    IfcSpatialStructureElement,
83    /// Abstract entity
84    IfcBuildingElement,
85    /// Abstract entity
86    IfcBuildingElementType,
87    /// Abstract entity
88    IfcBuildingElementComponent,
89    IfcProjectOrderRecord,
90    IfcProjectionCurve,
91    IfcRelAssignsToProjectOrder,
92    IfcRelOccupiesSpaces,
93    IfcSpaceProgram,
94    IfcSpaceThermalLoadProperties,
95
96    // Building Elements
97    IfcBeam,
98    IfcBeamType,
99    IfcColumn,
100    IfcColumnType,
101    IfcCooledBeam,
102    IfcCooledBeamType,
103    IfcCurtainWall,
104    IfcCurtainWallType,
105    IfcSlab,
106    IfcSlabType,
107    IfcTableColumn,
108    IfcWall,
109    IfcWallStandardCase,
110    IfcWallType,
111    IfcBeamStandardCase,
112    IfcColumnStandardCase,
113    IfcSlabElementedCase,
114    IfcSlabStandardCase,
115    IfcWallElementedCase,
116
117    // Openings
118    IfcDoor,
119    IfcDoorLiningProperties,
120    IfcDoorPanelProperties,
121    IfcDoorType,
122    IfcOpeningElement,
123    IfcWindow,
124    IfcWindowLiningProperties,
125    IfcWindowPanelProperties,
126    IfcWindowType,
127    IfcDoorStandardCase,
128    IfcDoorStyle,
129    IfcOpeningStandardCase,
130    IfcWindowStandardCase,
131    IfcWindowStyle,
132
133    // MEP
134    IfcActuator,
135    IfcAirTerminal,
136    IfcAirTerminalBox,
137    IfcAirToAirHeatRecovery,
138    IfcAlarm,
139    IfcAudioVisualAppliance,
140    IfcBoiler,
141    IfcBurner,
142    IfcCableCarrierFitting,
143    IfcCableCarrierFittingType,
144    IfcCableCarrierSegment,
145    IfcCableCarrierSegmentType,
146    IfcCableFitting,
147    IfcCableFittingType,
148    IfcCableSegment,
149    IfcCableSegmentType,
150    IfcChiller,
151    IfcCoil,
152    IfcCommunicationsAppliance,
153    IfcCompressor,
154    IfcCondenser,
155    IfcController,
156    IfcConveyorSegment,
157    IfcCoolingTower,
158    IfcDamper,
159    IfcDistributionBoard,
160    IfcDistributionChamberElement,
161    IfcDistributionControlElement,
162    IfcDistributionElement,
163    IfcDistributionFlowElement,
164    IfcDuctFitting,
165    IfcDuctFittingType,
166    IfcDuctSegment,
167    IfcDuctSegmentType,
168    IfcDuctSilencer,
169    IfcDuctSilencerType,
170    IfcElectricAppliance,
171    IfcElectricDistributionBoard,
172    IfcElectricFlowStorageDevice,
173    IfcElectricFlowTreatmentDevice,
174    IfcElectricGenerator,
175    IfcElectricMotor,
176    IfcElectricTimeControl,
177    IfcEnergyConversionDevice,
178    IfcEngine,
179    IfcEvaporativeCooler,
180    IfcEvaporator,
181    IfcFan,
182    IfcFilter,
183    IfcFireSuppressionTerminal,
184    IfcFlowController,
185    IfcFlowFitting,
186    IfcFlowInstrument,
187    IfcFlowMeter,
188    IfcFlowMovingDevice,
189    IfcFlowSegment,
190    IfcFlowStorageDevice,
191    IfcFlowTerminal,
192    IfcFlowTreatmentDevice,
193    IfcHeatExchanger,
194    IfcHumidifier,
195    IfcInterceptor,
196    IfcJunctionBox,
197    IfcLamp,
198    IfcLightFixture,
199    IfcLiquidTerminal,
200    IfcMedicalDevice,
201    IfcMobileTelecommunicationsAppliance,
202    IfcMotorConnection,
203    IfcOutlet,
204    IfcPipeFitting,
205    IfcPipeFittingType,
206    IfcPipeSegment,
207    IfcPipeSegmentType,
208    IfcProtectiveDevice,
209    IfcProtectiveDeviceTrippingUnit,
210    IfcPump,
211    IfcSanitaryTerminal,
212    IfcSensor,
213    IfcSignal,
214    IfcSolarDevice,
215    IfcStackTerminal,
216    IfcSwitchingDevice,
217    IfcTank,
218    IfcTransformer,
219    IfcTubeBundle,
220    IfcUnitaryControlElement,
221    IfcUnitaryEquipment,
222    IfcValve,
223    IfcWasteTerminal,
224    IfcElectricDistributionPoint,
225
226    // Geometry Representations
227    IfcAsymmetricIShapeProfileDef,
228    IfcCShapeProfileDef,
229    IfcGeometricRepresentationContext,
230    /// Abstract entity
231    IfcGeometricRepresentationItem,
232    IfcGeometricRepresentationSubContext,
233    IfcGeometricSet,
234    IfcIShapeProfileDef,
235    IfcLShapeProfileDef,
236    IfcMaterialDefinitionRepresentation,
237    IfcProductDefinitionShape,
238    /// Abstract entity
239    IfcProductRepresentation,
240    /// Abstract entity
241    IfcRepresentation,
242    /// Abstract entity
243    IfcRepresentationContext,
244    /// Abstract entity
245    IfcRepresentationItem,
246    IfcRepresentationMap,
247    IfcShapeAspect,
248    /// Abstract entity
249    IfcShapeModel,
250    IfcShapeRepresentation,
251    IfcStyledRepresentation,
252    IfcTShapeProfileDef,
253    /// Abstract entity
254    IfcTopologicalRepresentationItem,
255    IfcTopologyRepresentation,
256    IfcUShapeProfileDef,
257    IfcZShapeProfileDef,
258    IfcCraneRailAShapeProfileDef,
259    IfcCraneRailFShapeProfileDef,
260
261    // Geometry Primitives
262    IfcAdvancedBrep,
263    IfcAdvancedBrepWithVoids,
264    IfcBooleanClippingResult,
265    IfcBooleanResult,
266    IfcConnectedFaceSet,
267    /// Abstract entity
268    IfcCsgPrimitive3D,
269    IfcCsgSolid,
270    /// Abstract entity
271    IfcDirectrixCurveSweptAreaSolid,
272    IfcDirectrixDerivedReferenceSweptAreaSolid,
273    IfcExtrudedAreaSolid,
274    IfcExtrudedAreaSolidTapered,
275    IfcFacetedBrep,
276    IfcFacetedBrepWithVoids,
277    IfcFixedReferenceSweptAreaSolid,
278    /// Abstract entity
279    IfcManifoldSolidBrep,
280    IfcPolygonalFaceSet,
281    IfcRevolvedAreaSolid,
282    IfcRevolvedAreaSolidTapered,
283    /// Abstract entity
284    IfcSectionedSolid,
285    IfcSectionedSolidHorizontal,
286    /// Abstract entity
287    IfcSolidModel,
288    IfcSurfaceCurveSweptAreaSolid,
289    /// Abstract entity
290    IfcSweptAreaSolid,
291    IfcSweptDiskSolid,
292    IfcSweptDiskSolidPolygonal,
293    /// Abstract entity
294    IfcTessellatedFaceSet,
295    IfcTriangulatedFaceSet,
296
297    // Profiles
298    IfcArbitraryClosedProfileDef,
299    IfcArbitraryOpenProfileDef,
300    IfcArbitraryProfileDefWithVoids,
301    IfcCenterLineProfileDef,
302    IfcCircleHollowProfileDef,
303    IfcCircleProfileDef,
304    IfcCompositeProfileDef,
305    IfcDerivedProfileDef,
306    IfcEllipseProfileDef,
307    IfcMaterialProfile,
308    IfcMaterialProfileSet,
309    IfcMaterialProfileSetUsage,
310    IfcMaterialProfileSetUsageTapering,
311    IfcMaterialProfileWithOffsets,
312    IfcMirroredProfileDef,
313    IfcOpenCrossProfileDef,
314    /// Abstract entity
315    IfcParameterizedProfileDef,
316    IfcProfileDef,
317    IfcProfileProperties,
318    IfcRectangleHollowProfileDef,
319    IfcRectangleProfileDef,
320    IfcRelAssociatesProfileDef,
321    IfcRoundedRectangleProfileDef,
322    IfcTrapeziumProfileDef,
323    IfcGeneralProfileProperties,
324    IfcRelAssociatesProfileProperties,
325    IfcRibPlateProfileProperties,
326    IfcStructuralProfileProperties,
327    IfcStructuralSteelProfileProperties,
328
329    // Curves
330    IfcAxis2PlacementLinear,
331    /// Abstract entity
332    IfcBSplineCurve,
333    IfcBSplineCurveWithKnots,
334    /// Abstract entity
335    IfcBSplineSurface,
336    IfcBSplineSurfaceWithKnots,
337    IfcBoundaryCurve,
338    /// Abstract entity
339    IfcBoundedCurve,
340    IfcCircle,
341    IfcCompositeCurve,
342    IfcCompositeCurveOnSurface,
343    IfcCompositeCurveSegment,
344    IfcConnectionCurveGeometry,
345    /// Abstract entity
346    IfcCurve,
347    IfcCurveBoundedPlane,
348    IfcCurveBoundedSurface,
349    IfcCurveSegment,
350    IfcCurveStyle,
351    IfcCurveStyleFont,
352    IfcCurveStyleFontAndScaling,
353    IfcCurveStyleFontPattern,
354    IfcDraughtingPreDefinedCurveFont,
355    IfcEdgeCurve,
356    IfcEllipse,
357    IfcGeometricCurveSet,
358    IfcGradientCurve,
359    IfcIndexedPolyCurve,
360    IfcIntersectionCurve,
361    IfcLine,
362    IfcLinearElement,
363    IfcLinearPlacement,
364    IfcLinearPositioningElement,
365    /// Abstract entity
366    IfcOffsetCurve,
367    IfcOffsetCurve2D,
368    IfcOffsetCurve3D,
369    IfcOffsetCurveByDistances,
370    IfcOuterBoundaryCurve,
371    IfcPointOnCurve,
372    IfcPolyline,
373    IfcPolynomialCurve,
374    /// Abstract entity
375    IfcPreDefinedCurveFont,
376    IfcRationalBSplineCurveWithKnots,
377    IfcRationalBSplineSurfaceWithKnots,
378    IfcReparametrisedCompositeCurveSegment,
379    IfcSeamCurve,
380    IfcSegmentedReferenceCurve,
381    IfcStructuralCurveAction,
382    IfcStructuralCurveConnection,
383    IfcStructuralCurveMember,
384    IfcStructuralCurveMemberVarying,
385    IfcStructuralCurveReaction,
386    IfcStructuralLinearAction,
387    IfcStructuralLoadLinearForce,
388    IfcSurfaceCurve,
389    IfcSurfaceOfLinearExtrusion,
390    IfcTrimmedCurve,
391    Ifc2DCompositeCurve,
392    IfcAnnotationCurveOccurrence,
393    IfcBezierCurve,
394    IfcDimensionCurve,
395    IfcDimensionCurveDirectedCallout,
396    IfcDimensionCurveTerminator,
397    IfcLinearDimension,
398    IfcRationalBezierCurve,
399    IfcStructuralLinearActionVarying,
400    /// Abstract entity
401    IfcCurveSegment2D,
402    IfcLineSegment2D,
403    IfcTransitionCurveSegment2D,
404    IfcAlignment2DVerSegLine,
405    IfcAlignmentCurve,
406
407    // Surfaces
408    /// Abstract entity
409    IfcBoundedSurface,
410    IfcConnectionSurfaceGeometry,
411    IfcCylindricalSurface,
412    /// Abstract entity
413    IfcElementarySurface,
414    IfcExternallyDefinedSurfaceStyle,
415    IfcFaceBasedSurfaceModel,
416    IfcFaceSurface,
417    IfcPlane,
418    IfcPointOnSurface,
419    IfcRectangularTrimmedSurface,
420    IfcSectionedSurface,
421    IfcShellBasedSurfaceModel,
422    IfcSphericalSurface,
423    IfcStructuralSurfaceAction,
424    IfcStructuralSurfaceConnection,
425    IfcStructuralSurfaceMember,
426    IfcStructuralSurfaceMemberVarying,
427    IfcStructuralSurfaceReaction,
428    /// Abstract entity
429    IfcSurface,
430    IfcSurfaceFeature,
431    IfcSurfaceOfRevolution,
432    IfcSurfaceReinforcementArea,
433    IfcSurfaceStyle,
434    IfcSurfaceStyleLighting,
435    IfcSurfaceStyleRefraction,
436    IfcSurfaceStyleRendering,
437    IfcSurfaceStyleShading,
438    IfcSurfaceStyleWithTextures,
439    /// Abstract entity
440    IfcSurfaceTexture,
441    /// Abstract entity
442    IfcSweptSurface,
443    IfcToroidalSurface,
444    IfcAnnotationSurface,
445    IfcAnnotationSurfaceOccurrence,
446
447    // Relationships
448    IfcRelAdheresToElement,
449    IfcRelAggregates,
450    /// Abstract entity
451    IfcRelAssigns,
452    IfcRelAssignsToActor,
453    IfcRelAssignsToControl,
454    IfcRelAssignsToGroup,
455    IfcRelAssignsToGroupByFactor,
456    IfcRelAssignsToProcess,
457    IfcRelAssignsToProduct,
458    IfcRelAssignsToResource,
459    /// Abstract entity
460    IfcRelAssociates,
461    IfcRelAssociatesApproval,
462    IfcRelAssociatesClassification,
463    IfcRelAssociatesConstraint,
464    IfcRelAssociatesDocument,
465    IfcRelAssociatesLibrary,
466    IfcRelAssociatesMaterial,
467    /// Abstract entity
468    IfcRelConnects,
469    IfcRelConnectsElements,
470    IfcRelConnectsPathElements,
471    IfcRelConnectsPortToElement,
472    IfcRelConnectsPorts,
473    IfcRelConnectsStructuralActivity,
474    IfcRelConnectsStructuralMember,
475    IfcRelConnectsWithEccentricity,
476    IfcRelConnectsWithRealizingElements,
477    IfcRelContainedInSpatialStructure,
478    IfcRelCoversBldgElements,
479    IfcRelDeclares,
480    /// Abstract entity
481    IfcRelDecomposes,
482    /// Abstract entity
483    IfcRelDefines,
484    IfcRelDefinesByObject,
485    IfcRelDefinesByProperties,
486    IfcRelDefinesByTemplate,
487    IfcRelDefinesByType,
488    IfcRelFillsElement,
489    IfcRelFlowControlElements,
490    IfcRelInterferesElements,
491    IfcRelNests,
492    IfcRelPositions,
493    IfcRelReferencedInSpatialStructure,
494    IfcRelSequence,
495    IfcRelVoidsElement,
496    /// Abstract entity
497    IfcRelationship,
498    IfcRelAssignsTasks,
499    IfcRelAssociatesAppliedValue,
500    IfcRelConnectsStructuralElement,
501    IfcRelInteractionRequirements,
502    IfcRelOverridesProperties,
503    IfcRelSchedulesCostItems,
504    IfcRelaxation,
505
506    // Properties
507    IfcAppliedValue,
508    IfcComplexProperty,
509    IfcComplexPropertyTemplate,
510    IfcCostValue,
511    IfcElementQuantity,
512    IfcIrregularTimeSeriesValue,
513    IfcPhysicalComplexQuantity,
514    /// Abstract entity
515    IfcPhysicalQuantity,
516    /// Abstract entity
517    IfcPhysicalSimpleQuantity,
518    /// Abstract entity
519    IfcPreDefinedPropertySet,
520    /// Abstract entity
521    IfcProperty,
522    /// Abstract entity
523    IfcPropertyAbstraction,
524    IfcPropertyBoundedValue,
525    /// Abstract entity
526    IfcPropertyDefinition,
527    IfcPropertyDependencyRelationship,
528    IfcPropertyEnumeratedValue,
529    IfcPropertyEnumeration,
530    IfcPropertyListValue,
531    IfcPropertyReferenceValue,
532    IfcPropertySet,
533    /// Abstract entity
534    IfcPropertySetDefinition,
535    IfcPropertySetTemplate,
536    IfcPropertySingleValue,
537    IfcPropertyTableValue,
538    /// Abstract entity
539    IfcPropertyTemplate,
540    /// Abstract entity
541    IfcPropertyTemplateDefinition,
542    IfcQuantityArea,
543    IfcQuantityCount,
544    IfcQuantityLength,
545    IfcQuantityNumber,
546    /// Abstract entity
547    IfcQuantitySet,
548    IfcQuantityTime,
549    IfcQuantityVolume,
550    IfcQuantityWeight,
551    /// Abstract entity
552    IfcSimpleProperty,
553    IfcSimplePropertyTemplate,
554    IfcTimeSeriesValue,
555    IfcAppliedValueRelationship,
556    IfcApprovalPropertyRelationship,
557    IfcEnvironmentalImpactValue,
558    IfcPropertyConstraintRelationship,
559    IfcReferencesValueDocument,
560    IfcSoundValue,
561
562    // Materials
563    IfcConstructionMaterialResource,
564    IfcConstructionMaterialResourceType,
565    IfcMaterial,
566    IfcMaterialClassificationRelationship,
567    IfcMaterialConstituent,
568    IfcMaterialConstituentSet,
569    /// Abstract entity
570    IfcMaterialDefinition,
571    IfcMaterialLayer,
572    IfcMaterialLayerSet,
573    IfcMaterialLayerSetUsage,
574    IfcMaterialLayerWithOffsets,
575    IfcMaterialList,
576    IfcMaterialProperties,
577    IfcMaterialRelationship,
578    /// Abstract entity
579    IfcMaterialUsageDefinition,
580    IfcExtendedMaterialProperties,
581    IfcGeneralMaterialProperties,
582    IfcHygroscopicMaterialProperties,
583    IfcMechanicalConcreteMaterialProperties,
584    IfcMechanicalMaterialProperties,
585    IfcMechanicalSteelMaterialProperties,
586    IfcOpticalMaterialProperties,
587    IfcThermalMaterialProperties,
588
589    // Presentation & Style
590    IfcColourRgb,
591    IfcColourRgbList,
592    /// Abstract entity
593    IfcColourSpecification,
594    IfcDraughtingPreDefinedColour,
595    IfcExternallyDefinedHatchStyle,
596    IfcFillAreaStyle,
597    IfcFillAreaStyleHatching,
598    IfcFillAreaStyleTiles,
599    IfcIndexedColourMap,
600    /// Abstract entity
601    IfcPreDefinedColour,
602    /// Abstract entity
603    IfcPresentationItem,
604    IfcPresentationLayerAssignment,
605    IfcPresentationLayerWithStyle,
606    /// Abstract entity
607    IfcPresentationStyle,
608    /// Abstract entity
609    IfcStyleModel,
610    IfcStyledItem,
611    IfcTextStyle,
612    IfcTextStyleFontModel,
613    IfcTextStyleForDefinedFont,
614    IfcTextStyleTextModel,
615    IfcPresentationStyleAssignment,
616    IfcFillAreaStyleTileSymbolWithStyle,
617    IfcSymbolStyle,
618    IfcTextStyleWithBoxCharacteristics,
619
620    // Core & Common
621    IfcBuiltElement,
622    IfcBuiltElementType,
623    IfcCivilElement,
624    IfcCivilElementType,
625    IfcConstructionEquipmentResource,
626    IfcConstructionEquipmentResourceType,
627    IfcConstructionProductResource,
628    IfcConstructionProductResourceType,
629    /// Abstract entity
630    IfcConstructionResource,
631    /// Abstract entity
632    IfcConstructionResourceType,
633    IfcCrewResource,
634    IfcCrewResourceType,
635    IfcDerivedUnitElement,
636    IfcDistributionChamberElementType,
637    /// Abstract entity
638    IfcDistributionControlElementType,
639    IfcDistributionElementType,
640    /// Abstract entity
641    IfcDistributionFlowElementType,
642    IfcEarthworksElement,
643    /// Abstract entity
644    IfcElement,
645    IfcElementAssembly,
646    IfcElementAssemblyType,
647    /// Abstract entity
648    IfcElementComponent,
649    /// Abstract entity
650    IfcElementComponentType,
651    /// Abstract entity
652    IfcElementType,
653    IfcExternalSpatialElement,
654    /// Abstract entity
655    IfcExternalSpatialStructureElement,
656    /// Abstract entity
657    IfcFeatureElement,
658    /// Abstract entity
659    IfcFeatureElementAddition,
660    /// Abstract entity
661    IfcFeatureElementSubtraction,
662    IfcFurnishingElement,
663    IfcFurnishingElementType,
664    IfcGeographicElement,
665    IfcGeographicElementType,
666    /// Abstract entity
667    IfcGeotechnicalElement,
668    IfcLaborResource,
669    IfcLaborResourceType,
670    IfcNavigationElement,
671    IfcNavigationElementType,
672    /// Abstract entity
673    IfcObject,
674    /// Abstract entity
675    IfcObjectDefinition,
676    /// Abstract entity
677    IfcObjectPlacement,
678    IfcObjective,
679    /// Abstract entity
680    IfcPositioningElement,
681    /// Abstract entity
682    IfcProduct,
683    /// Abstract entity
684    IfcReinforcingElement,
685    /// Abstract entity
686    IfcReinforcingElementType,
687    /// Abstract entity
688    IfcResource,
689    IfcResourceApprovalRelationship,
690    IfcResourceConstraintRelationship,
691    /// Abstract entity
692    IfcResourceLevelRelationship,
693    IfcResourceTime,
694    /// Abstract entity
695    IfcRoot,
696    /// Abstract entity
697    IfcSpatialElement,
698    /// Abstract entity
699    IfcSpatialElementType,
700    /// Abstract entity
701    IfcSpatialStructureElementType,
702    IfcSubContractResource,
703    IfcSubContractResourceType,
704    IfcSystemFurnitureElement,
705    IfcSystemFurnitureElementType,
706    IfcTrackElement,
707    IfcTrackElementType,
708    IfcTransportElement,
709    IfcTransportElementType,
710    IfcTypeObject,
711    IfcTypeProduct,
712    /// Abstract entity
713    IfcTypeResource,
714    IfcUnitaryControlElementType,
715    IfcVirtualElement,
716    IfcElectricalElement,
717    IfcEquipmentElement,
718    IfcProductsOfCombustionProperties,
719
720    // Other
721    IfcActionRequest,
722    IfcActor,
723    IfcActorRole,
724    IfcActuatorType,
725    /// Abstract entity
726    IfcAddress,
727    IfcAdvancedFace,
728    IfcAirTerminalBoxType,
729    IfcAirTerminalType,
730    IfcAirToAirHeatRecoveryType,
731    IfcAlarmType,
732    IfcAlignment,
733    IfcAlignmentCant,
734    IfcAlignmentCantSegment,
735    IfcAlignmentHorizontal,
736    IfcAlignmentHorizontalSegment,
737    /// Abstract entity
738    IfcAlignmentParameterSegment,
739    IfcAlignmentSegment,
740    IfcAlignmentVertical,
741    IfcAlignmentVerticalSegment,
742    IfcAnnotation,
743    IfcAnnotationFillArea,
744    IfcApplication,
745    IfcApproval,
746    IfcApprovalRelationship,
747    IfcAsset,
748    IfcAudioVisualApplianceType,
749    IfcAxis1Placement,
750    IfcAxis2Placement2D,
751    IfcAxis2Placement3D,
752    IfcBearing,
753    IfcBearingType,
754    IfcBlobTexture,
755    IfcBlock,
756    IfcBoilerType,
757    IfcBorehole,
758    /// Abstract entity
759    IfcBoundaryCondition,
760    IfcBoundaryEdgeCondition,
761    IfcBoundaryFaceCondition,
762    IfcBoundaryNodeCondition,
763    IfcBoundaryNodeConditionWarping,
764    IfcBoundingBox,
765    IfcBuiltSystem,
766    IfcBurnerType,
767    IfcCaissonFoundation,
768    IfcCaissonFoundationType,
769    IfcCartesianPoint,
770    /// Abstract entity
771    IfcCartesianPointList,
772    IfcCartesianPointList2D,
773    IfcCartesianPointList3D,
774    /// Abstract entity
775    IfcCartesianTransformationOperator,
776    IfcCartesianTransformationOperator2D,
777    IfcCartesianTransformationOperator2DnonUniform,
778    IfcCartesianTransformationOperator3D,
779    IfcCartesianTransformationOperator3DnonUniform,
780    IfcChillerType,
781    IfcChimney,
782    IfcChimneyType,
783    IfcClassification,
784    IfcClassificationReference,
785    IfcClosedShell,
786    IfcClothoid,
787    IfcCoilType,
788    IfcCommunicationsApplianceType,
789    IfcCompressorType,
790    IfcCondenserType,
791    /// Abstract entity
792    IfcConic,
793    /// Abstract entity
794    IfcConnectionGeometry,
795    IfcConnectionPointEccentricity,
796    IfcConnectionPointGeometry,
797    IfcConnectionVolumeGeometry,
798    /// Abstract entity
799    IfcConstraint,
800    /// Abstract entity
801    IfcContext,
802    IfcContextDependentUnit,
803    /// Abstract entity
804    IfcControl,
805    IfcControllerType,
806    IfcConversionBasedUnit,
807    IfcConversionBasedUnitWithOffset,
808    IfcConveyorSegmentType,
809    IfcCoolingTowerType,
810    /// Abstract entity
811    IfcCoordinateOperation,
812    /// Abstract entity
813    IfcCoordinateReferenceSystem,
814    IfcCosineSpiral,
815    IfcCostItem,
816    IfcCostSchedule,
817    IfcCourse,
818    IfcCourseType,
819    IfcCovering,
820    IfcCoveringType,
821    IfcCurrencyRelationship,
822    IfcDamperType,
823    IfcDeepFoundation,
824    IfcDeepFoundationType,
825    IfcDerivedUnit,
826    IfcDimensionalExponents,
827    IfcDirection,
828    IfcDiscreteAccessory,
829    IfcDiscreteAccessoryType,
830    IfcDistributionBoardType,
831    IfcDistributionCircuit,
832    IfcDistributionPort,
833    IfcDistributionSystem,
834    IfcDocumentInformation,
835    IfcDocumentInformationRelationship,
836    IfcDocumentReference,
837    IfcEarthworksCut,
838    IfcEarthworksFill,
839    IfcEdge,
840    IfcEdgeLoop,
841    IfcElectricApplianceType,
842    IfcElectricDistributionBoardType,
843    IfcElectricFlowStorageDeviceType,
844    IfcElectricFlowTreatmentDeviceType,
845    IfcElectricGeneratorType,
846    IfcElectricMotorType,
847    IfcElectricTimeControlType,
848    /// Abstract entity
849    IfcEnergyConversionDeviceType,
850    IfcEngineType,
851    IfcEvaporativeCoolerType,
852    IfcEvaporatorType,
853    IfcEvent,
854    IfcEventTime,
855    IfcEventType,
856    /// Abstract entity
857    IfcExtendedProperties,
858    /// Abstract entity
859    IfcExternalInformation,
860    /// Abstract entity
861    IfcExternalReference,
862    IfcExternalReferenceRelationship,
863    IfcExternallyDefinedTextFont,
864    IfcFace,
865    IfcFaceBound,
866    IfcFaceOuterBound,
867    IfcFailureConnectionCondition,
868    IfcFanType,
869    IfcFastener,
870    IfcFastenerType,
871    IfcFilterType,
872    IfcFireSuppressionTerminalType,
873    /// Abstract entity
874    IfcFlowControllerType,
875    /// Abstract entity
876    IfcFlowFittingType,
877    IfcFlowInstrumentType,
878    IfcFlowMeterType,
879    /// Abstract entity
880    IfcFlowMovingDeviceType,
881    /// Abstract entity
882    IfcFlowSegmentType,
883    /// Abstract entity
884    IfcFlowStorageDeviceType,
885    /// Abstract entity
886    IfcFlowTerminalType,
887    /// Abstract entity
888    IfcFlowTreatmentDeviceType,
889    IfcFooting,
890    IfcFootingType,
891    IfcFurniture,
892    IfcFurnitureType,
893    IfcGeographicCRS,
894    IfcGeomodel,
895    IfcGeoslice,
896    /// Abstract entity
897    IfcGeotechnicalAssembly,
898    IfcGeotechnicalStratum,
899    IfcGrid,
900    IfcGridAxis,
901    IfcGridPlacement,
902    IfcGroup,
903    IfcHeatExchangerType,
904    IfcHumidifierType,
905    IfcImageTexture,
906    IfcImpactProtectionDevice,
907    IfcImpactProtectionDeviceType,
908    IfcIndexedPolygonalFace,
909    IfcIndexedPolygonalFaceWithVoids,
910    IfcIndexedPolygonalTextureMap,
911    /// Abstract entity
912    IfcIndexedTextureMap,
913    IfcIndexedTriangleTextureMap,
914    IfcInterceptorType,
915    IfcInventory,
916    IfcIrregularTimeSeries,
917    IfcJunctionBoxType,
918    IfcKerb,
919    IfcKerbType,
920    IfcLagTime,
921    IfcLampType,
922    IfcLibraryInformation,
923    IfcLibraryReference,
924    IfcLightDistributionData,
925    IfcLightFixtureType,
926    IfcLightIntensityDistribution,
927    /// Abstract entity
928    IfcLightSource,
929    IfcLightSourceAmbient,
930    IfcLightSourceDirectional,
931    IfcLightSourceGoniometric,
932    IfcLightSourcePositional,
933    IfcLightSourceSpot,
934    IfcLiquidTerminalType,
935    IfcLocalPlacement,
936    IfcLoop,
937    IfcMapConversion,
938    IfcMapConversionScaled,
939    IfcMappedItem,
940    IfcMeasureWithUnit,
941    IfcMechanicalFastener,
942    IfcMechanicalFastenerType,
943    IfcMedicalDeviceType,
944    IfcMember,
945    IfcMemberType,
946    IfcMetric,
947    IfcMobileTelecommunicationsApplianceType,
948    IfcMonetaryUnit,
949    IfcMooringDevice,
950    IfcMooringDeviceType,
951    IfcMotorConnectionType,
952    /// Abstract entity
953    IfcNamedUnit,
954    IfcOccupant,
955    IfcOpenShell,
956    IfcOrganization,
957    IfcOrganizationRelationship,
958    IfcOrientedEdge,
959    IfcOutletType,
960    IfcOwnerHistory,
961    IfcPath,
962    IfcPavement,
963    IfcPavementType,
964    IfcPcurve,
965    IfcPerformanceHistory,
966    IfcPermeableCoveringProperties,
967    IfcPermit,
968    IfcPerson,
969    IfcPersonAndOrganization,
970    IfcPile,
971    IfcPileType,
972    IfcPixelTexture,
973    /// Abstract entity
974    IfcPlacement,
975    IfcPlanarBox,
976    IfcPlanarExtent,
977    IfcPlate,
978    IfcPlateType,
979    /// Abstract entity
980    IfcPoint,
981    IfcPointByDistanceExpression,
982    IfcPolyLoop,
983    /// Abstract entity
984    IfcPort,
985    IfcPostalAddress,
986    /// Abstract entity
987    IfcPreDefinedItem,
988    /// Abstract entity
989    IfcPreDefinedProperties,
990    /// Abstract entity
991    IfcPreDefinedTextFont,
992    IfcProcedure,
993    IfcProcedureType,
994    /// Abstract entity
995    IfcProcess,
996    IfcProtectiveDeviceTrippingUnitType,
997    IfcProtectiveDeviceType,
998    IfcPumpType,
999    IfcRail,
1000    IfcRailType,
1001    IfcRailing,
1002    IfcRailingType,
1003    IfcRamp,
1004    IfcRampFlight,
1005    IfcRampFlightType,
1006    IfcRampType,
1007    IfcRectangularPyramid,
1008    IfcRecurrencePattern,
1009    IfcReference,
1010    IfcReferent,
1011    IfcRegularTimeSeries,
1012    IfcReinforcedSoil,
1013    IfcReinforcementBarProperties,
1014    IfcReinforcementDefinitionProperties,
1015    IfcReinforcingBar,
1016    IfcReinforcingBarType,
1017    IfcReinforcingMesh,
1018    IfcReinforcingMeshType,
1019    IfcRightCircularCone,
1020    IfcRightCircularCylinder,
1021    IfcRigidOperation,
1022    IfcRoof,
1023    IfcRoofType,
1024    IfcSIUnit,
1025    IfcSanitaryTerminalType,
1026    /// Abstract entity
1027    IfcSchedulingTime,
1028    IfcSecondOrderPolynomialSpiral,
1029    IfcSectionProperties,
1030    IfcSectionReinforcementProperties,
1031    IfcSectionedSpine,
1032    /// Abstract entity
1033    IfcSegment,
1034    IfcSensorType,
1035    IfcSeventhOrderPolynomialSpiral,
1036    IfcShadingDevice,
1037    IfcShadingDeviceType,
1038    IfcSign,
1039    IfcSignType,
1040    IfcSignalType,
1041    IfcSineSpiral,
1042    IfcSlippageConnectionCondition,
1043    IfcSolarDeviceType,
1044    IfcSpatialZone,
1045    IfcSpatialZoneType,
1046    IfcSphere,
1047    /// Abstract entity
1048    IfcSpiral,
1049    IfcStackTerminalType,
1050    IfcStair,
1051    IfcStairFlight,
1052    IfcStairFlightType,
1053    IfcStairType,
1054    /// Abstract entity
1055    IfcStructuralAction,
1056    /// Abstract entity
1057    IfcStructuralActivity,
1058    IfcStructuralAnalysisModel,
1059    /// Abstract entity
1060    IfcStructuralConnection,
1061    /// Abstract entity
1062    IfcStructuralConnectionCondition,
1063    /// Abstract entity
1064    IfcStructuralItem,
1065    /// Abstract entity
1066    IfcStructuralLoad,
1067    IfcStructuralLoadCase,
1068    IfcStructuralLoadConfiguration,
1069    IfcStructuralLoadGroup,
1070    /// Abstract entity
1071    IfcStructuralLoadOrResult,
1072    IfcStructuralLoadPlanarForce,
1073    IfcStructuralLoadSingleDisplacement,
1074    IfcStructuralLoadSingleDisplacementDistortion,
1075    IfcStructuralLoadSingleForce,
1076    IfcStructuralLoadSingleForceWarping,
1077    /// Abstract entity
1078    IfcStructuralLoadStatic,
1079    IfcStructuralLoadTemperature,
1080    /// Abstract entity
1081    IfcStructuralMember,
1082    IfcStructuralPlanarAction,
1083    IfcStructuralPointAction,
1084    IfcStructuralPointConnection,
1085    IfcStructuralPointReaction,
1086    /// Abstract entity
1087    IfcStructuralReaction,
1088    IfcStructuralResultGroup,
1089    IfcSubedge,
1090    IfcSwitchingDeviceType,
1091    IfcSystem,
1092    IfcTable,
1093    IfcTableRow,
1094    IfcTankType,
1095    IfcTask,
1096    IfcTaskTime,
1097    IfcTaskTimeRecurring,
1098    IfcTaskType,
1099    IfcTelecomAddress,
1100    IfcTendon,
1101    IfcTendonAnchor,
1102    IfcTendonAnchorType,
1103    IfcTendonConduit,
1104    IfcTendonConduitType,
1105    IfcTendonType,
1106    /// Abstract entity
1107    IfcTessellatedItem,
1108    IfcTextLiteral,
1109    IfcTextLiteralWithExtent,
1110    /// Abstract entity
1111    IfcTextureCoordinate,
1112    IfcTextureCoordinateGenerator,
1113    IfcTextureCoordinateIndices,
1114    IfcTextureCoordinateIndicesWithVoids,
1115    IfcTextureMap,
1116    IfcTextureVertex,
1117    IfcTextureVertexList,
1118    IfcThirdOrderPolynomialSpiral,
1119    IfcTimePeriod,
1120    /// Abstract entity
1121    IfcTimeSeries,
1122    IfcTransformerType,
1123    /// Abstract entity
1124    IfcTransportationDevice,
1125    /// Abstract entity
1126    IfcTransportationDeviceType,
1127    IfcTriangulatedIrregularNetwork,
1128    IfcTubeBundleType,
1129    /// Abstract entity
1130    IfcTypeProcess,
1131    IfcUnitAssignment,
1132    IfcUnitaryEquipmentType,
1133    IfcValveType,
1134    IfcVector,
1135    IfcVehicle,
1136    IfcVehicleType,
1137    IfcVertex,
1138    IfcVertexLoop,
1139    IfcVertexPoint,
1140    IfcVibrationDamper,
1141    IfcVibrationDamperType,
1142    IfcVibrationIsolator,
1143    IfcVibrationIsolatorType,
1144    IfcVirtualGridIntersection,
1145    IfcVoidingFeature,
1146    IfcWasteTerminalType,
1147    IfcWellKnownText,
1148    IfcWorkCalendar,
1149    /// Abstract entity
1150    IfcWorkControl,
1151    IfcWorkPlan,
1152    IfcWorkSchedule,
1153    IfcWorkTime,
1154    IfcZone,
1155    IfcMemberStandardCase,
1156    IfcPlateStandardCase,
1157    IfcProxy,
1158    IfcAngularDimension,
1159    IfcAnnotationFillAreaOccurrence,
1160    /// Abstract entity
1161    IfcAnnotationOccurrence,
1162    IfcAnnotationSymbolOccurrence,
1163    IfcAnnotationTextOccurrence,
1164    IfcApprovalActorRelationship,
1165    IfcCalendarDate,
1166    IfcChamferEdgeFeature,
1167    IfcClassificationItem,
1168    IfcClassificationItemRelationship,
1169    IfcClassificationNotation,
1170    IfcClassificationNotationFacet,
1171    IfcCondition,
1172    IfcConditionCriterion,
1173    IfcConnectionPortGeometry,
1174    IfcConstraintAggregationRelationship,
1175    IfcConstraintClassificationRelationship,
1176    IfcConstraintRelationship,
1177    IfcCoordinatedUniversalTimeOffset,
1178    IfcDateAndTime,
1179    IfcDefinedSymbol,
1180    IfcDiameterDimension,
1181    IfcDimensionCalloutRelationship,
1182    IfcDimensionPair,
1183    IfcDocumentElectronicFormat,
1184    IfcDraughtingCallout,
1185    IfcDraughtingCalloutRelationship,
1186    IfcDraughtingPreDefinedTextFont,
1187    /// Abstract entity
1188    IfcEdgeFeature,
1189    IfcElectricHeaterType,
1190    IfcElectricalBaseProperties,
1191    IfcElectricalCircuit,
1192    IfcEnergyProperties,
1193    IfcEquipmentStandard,
1194    IfcExternallyDefinedSymbol,
1195    IfcFluidFlowProperties,
1196    IfcFuelProperties,
1197    IfcFurnitureStandard,
1198    IfcGasTerminalType,
1199    IfcLocalTime,
1200    IfcMove,
1201    IfcOneDirectionRepeatFactor,
1202    IfcOrderAction,
1203    IfcPreDefinedDimensionSymbol,
1204    IfcPreDefinedPointMarkerSymbol,
1205    /// Abstract entity
1206    IfcPreDefinedSymbol,
1207    IfcPreDefinedTerminatorSymbol,
1208    IfcRadiusDimension,
1209    IfcRoundedEdgeFeature,
1210    IfcScheduleTimeControl,
1211    IfcServiceLife,
1212    IfcServiceLifeFactor,
1213    IfcSoundProperties,
1214    IfcStructuralPlanarActionVarying,
1215    IfcStructuredDimensionCallout,
1216    IfcTerminatorSymbol,
1217    IfcTimeSeriesReferenceRelationship,
1218    IfcTimeSeriesSchedule,
1219    IfcTwoDirectionRepeatFactor,
1220    IfcVertexBasedTextureMap,
1221    IfcWaterProperties,
1222    IfcCircularArcSegment2D,
1223    IfcDistanceExpression,
1224    IfcOrientationExpression,
1225    IfcAlignment2DHorizontal,
1226    IfcAlignment2DHorizontalSegment,
1227    /// Abstract entity
1228    IfcAlignment2DSegment,
1229    IfcAlignment2DVerSegCircularArc,
1230    /// Abstract entity
1231    IfcAlignment2DVerticalSegment,
1232    IfcAlignment2DVerSegParabolicArc,
1233    IfcAlignment2DVertical,
1234
1235    /// Unknown/unrecognized IFC type with its normalized keyword.
1236    Unknown(UnknownIfcType),
1237}
1238
1239impl IfcType {
1240    /// Parse IFC type from string (case-insensitive)
1241    #[allow(clippy::should_implement_trait)]
1242    pub fn from_str(s: &str) -> Self {
1243        // #3987: recognized STEP names need no normalization scan.
1244        if let Some(known) = Self::from_canonical_name(s) {
1245            return known;
1246        }
1247        if s.bytes().all(|b| b.is_ascii() && !b.is_ascii_lowercase()) {
1248            return Self::Unknown(UnknownIfcType::new(s.to_owned()));
1249        }
1250        // Keep Unicode uppercase expansion and the exact unknown-type CRC.
1251        let upper = s.to_uppercase();
1252        Self::from_canonical_name(&upper)
1253            .unwrap_or_else(|| Self::Unknown(UnknownIfcType::new(upper)))
1254    }
1255
1256    fn from_canonical_name(s: &str) -> Option<Self> {
1257        Some(match s {
1258            "IFCACTIONREQUEST" => Self::IfcActionRequest,
1259            "IFCACTOR" => Self::IfcActor,
1260            "IFCACTORROLE" => Self::IfcActorRole,
1261            "IFCACTUATOR" => Self::IfcActuator,
1262            "IFCACTUATORTYPE" => Self::IfcActuatorType,
1263            "IFCADDRESS" => Self::IfcAddress,
1264            "IFCADVANCEDBREP" => Self::IfcAdvancedBrep,
1265            "IFCADVANCEDBREPWITHVOIDS" => Self::IfcAdvancedBrepWithVoids,
1266            "IFCADVANCEDFACE" => Self::IfcAdvancedFace,
1267            "IFCAIRTERMINAL" => Self::IfcAirTerminal,
1268            "IFCAIRTERMINALBOX" => Self::IfcAirTerminalBox,
1269            "IFCAIRTERMINALBOXTYPE" => Self::IfcAirTerminalBoxType,
1270            "IFCAIRTERMINALTYPE" => Self::IfcAirTerminalType,
1271            "IFCAIRTOAIRHEATRECOVERY" => Self::IfcAirToAirHeatRecovery,
1272            "IFCAIRTOAIRHEATRECOVERYTYPE" => Self::IfcAirToAirHeatRecoveryType,
1273            "IFCALARM" => Self::IfcAlarm,
1274            "IFCALARMTYPE" => Self::IfcAlarmType,
1275            "IFCALIGNMENT" => Self::IfcAlignment,
1276            "IFCALIGNMENTCANT" => Self::IfcAlignmentCant,
1277            "IFCALIGNMENTCANTSEGMENT" => Self::IfcAlignmentCantSegment,
1278            "IFCALIGNMENTHORIZONTAL" => Self::IfcAlignmentHorizontal,
1279            "IFCALIGNMENTHORIZONTALSEGMENT" => Self::IfcAlignmentHorizontalSegment,
1280            "IFCALIGNMENTPARAMETERSEGMENT" => Self::IfcAlignmentParameterSegment,
1281            "IFCALIGNMENTSEGMENT" => Self::IfcAlignmentSegment,
1282            "IFCALIGNMENTVERTICAL" => Self::IfcAlignmentVertical,
1283            "IFCALIGNMENTVERTICALSEGMENT" => Self::IfcAlignmentVerticalSegment,
1284            "IFCANNOTATION" => Self::IfcAnnotation,
1285            "IFCANNOTATIONFILLAREA" => Self::IfcAnnotationFillArea,
1286            "IFCAPPLICATION" => Self::IfcApplication,
1287            "IFCAPPLIEDVALUE" => Self::IfcAppliedValue,
1288            "IFCAPPROVAL" => Self::IfcApproval,
1289            "IFCAPPROVALRELATIONSHIP" => Self::IfcApprovalRelationship,
1290            "IFCARBITRARYCLOSEDPROFILEDEF" => Self::IfcArbitraryClosedProfileDef,
1291            "IFCARBITRARYOPENPROFILEDEF" => Self::IfcArbitraryOpenProfileDef,
1292            "IFCARBITRARYPROFILEDEFWITHVOIDS" => Self::IfcArbitraryProfileDefWithVoids,
1293            "IFCASSET" => Self::IfcAsset,
1294            "IFCASYMMETRICISHAPEPROFILEDEF" => Self::IfcAsymmetricIShapeProfileDef,
1295            "IFCAUDIOVISUALAPPLIANCE" => Self::IfcAudioVisualAppliance,
1296            "IFCAUDIOVISUALAPPLIANCETYPE" => Self::IfcAudioVisualApplianceType,
1297            "IFCAXIS1PLACEMENT" => Self::IfcAxis1Placement,
1298            "IFCAXIS2PLACEMENT2D" => Self::IfcAxis2Placement2D,
1299            "IFCAXIS2PLACEMENT3D" => Self::IfcAxis2Placement3D,
1300            "IFCAXIS2PLACEMENTLINEAR" => Self::IfcAxis2PlacementLinear,
1301            "IFCBSPLINECURVE" => Self::IfcBSplineCurve,
1302            "IFCBSPLINECURVEWITHKNOTS" => Self::IfcBSplineCurveWithKnots,
1303            "IFCBSPLINESURFACE" => Self::IfcBSplineSurface,
1304            "IFCBSPLINESURFACEWITHKNOTS" => Self::IfcBSplineSurfaceWithKnots,
1305            "IFCBEAM" => Self::IfcBeam,
1306            "IFCBEAMTYPE" => Self::IfcBeamType,
1307            "IFCBEARING" => Self::IfcBearing,
1308            "IFCBEARINGTYPE" => Self::IfcBearingType,
1309            "IFCBLOBTEXTURE" => Self::IfcBlobTexture,
1310            "IFCBLOCK" => Self::IfcBlock,
1311            "IFCBOILER" => Self::IfcBoiler,
1312            "IFCBOILERTYPE" => Self::IfcBoilerType,
1313            "IFCBOOLEANCLIPPINGRESULT" => Self::IfcBooleanClippingResult,
1314            "IFCBOOLEANRESULT" => Self::IfcBooleanResult,
1315            "IFCBOREHOLE" => Self::IfcBorehole,
1316            "IFCBOUNDARYCONDITION" => Self::IfcBoundaryCondition,
1317            "IFCBOUNDARYCURVE" => Self::IfcBoundaryCurve,
1318            "IFCBOUNDARYEDGECONDITION" => Self::IfcBoundaryEdgeCondition,
1319            "IFCBOUNDARYFACECONDITION" => Self::IfcBoundaryFaceCondition,
1320            "IFCBOUNDARYNODECONDITION" => Self::IfcBoundaryNodeCondition,
1321            "IFCBOUNDARYNODECONDITIONWARPING" => Self::IfcBoundaryNodeConditionWarping,
1322            "IFCBOUNDEDCURVE" => Self::IfcBoundedCurve,
1323            "IFCBOUNDEDSURFACE" => Self::IfcBoundedSurface,
1324            "IFCBOUNDINGBOX" => Self::IfcBoundingBox,
1325            "IFCBOXEDHALFSPACE" => Self::IfcBoxedHalfSpace,
1326            "IFCBRIDGE" => Self::IfcBridge,
1327            "IFCBRIDGEPART" => Self::IfcBridgePart,
1328            "IFCBUILDING" => Self::IfcBuilding,
1329            "IFCBUILDINGELEMENTPART" => Self::IfcBuildingElementPart,
1330            "IFCBUILDINGELEMENTPARTTYPE" => Self::IfcBuildingElementPartType,
1331            "IFCBUILDINGELEMENTPROXY" => Self::IfcBuildingElementProxy,
1332            "IFCBUILDINGELEMENTPROXYTYPE" => Self::IfcBuildingElementProxyType,
1333            "IFCBUILDINGSTOREY" => Self::IfcBuildingStorey,
1334            "IFCBUILDINGSYSTEM" => Self::IfcBuildingSystem,
1335            "IFCBUILTELEMENT" => Self::IfcBuiltElement,
1336            "IFCBUILTELEMENTTYPE" => Self::IfcBuiltElementType,
1337            "IFCBUILTSYSTEM" => Self::IfcBuiltSystem,
1338            "IFCBURNER" => Self::IfcBurner,
1339            "IFCBURNERTYPE" => Self::IfcBurnerType,
1340            "IFCCSHAPEPROFILEDEF" => Self::IfcCShapeProfileDef,
1341            "IFCCABLECARRIERFITTING" => Self::IfcCableCarrierFitting,
1342            "IFCCABLECARRIERFITTINGTYPE" => Self::IfcCableCarrierFittingType,
1343            "IFCCABLECARRIERSEGMENT" => Self::IfcCableCarrierSegment,
1344            "IFCCABLECARRIERSEGMENTTYPE" => Self::IfcCableCarrierSegmentType,
1345            "IFCCABLEFITTING" => Self::IfcCableFitting,
1346            "IFCCABLEFITTINGTYPE" => Self::IfcCableFittingType,
1347            "IFCCABLESEGMENT" => Self::IfcCableSegment,
1348            "IFCCABLESEGMENTTYPE" => Self::IfcCableSegmentType,
1349            "IFCCAISSONFOUNDATION" => Self::IfcCaissonFoundation,
1350            "IFCCAISSONFOUNDATIONTYPE" => Self::IfcCaissonFoundationType,
1351            "IFCCARTESIANPOINT" => Self::IfcCartesianPoint,
1352            "IFCCARTESIANPOINTLIST" => Self::IfcCartesianPointList,
1353            "IFCCARTESIANPOINTLIST2D" => Self::IfcCartesianPointList2D,
1354            "IFCCARTESIANPOINTLIST3D" => Self::IfcCartesianPointList3D,
1355            "IFCCARTESIANTRANSFORMATIONOPERATOR" => Self::IfcCartesianTransformationOperator,
1356            "IFCCARTESIANTRANSFORMATIONOPERATOR2D" => Self::IfcCartesianTransformationOperator2D,
1357            "IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM" => {
1358                Self::IfcCartesianTransformationOperator2DnonUniform
1359            }
1360            "IFCCARTESIANTRANSFORMATIONOPERATOR3D" => Self::IfcCartesianTransformationOperator3D,
1361            "IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM" => {
1362                Self::IfcCartesianTransformationOperator3DnonUniform
1363            }
1364            "IFCCENTERLINEPROFILEDEF" => Self::IfcCenterLineProfileDef,
1365            "IFCCHILLER" => Self::IfcChiller,
1366            "IFCCHILLERTYPE" => Self::IfcChillerType,
1367            "IFCCHIMNEY" => Self::IfcChimney,
1368            "IFCCHIMNEYTYPE" => Self::IfcChimneyType,
1369            "IFCCIRCLE" => Self::IfcCircle,
1370            "IFCCIRCLEHOLLOWPROFILEDEF" => Self::IfcCircleHollowProfileDef,
1371            "IFCCIRCLEPROFILEDEF" => Self::IfcCircleProfileDef,
1372            "IFCCIVILELEMENT" => Self::IfcCivilElement,
1373            "IFCCIVILELEMENTTYPE" => Self::IfcCivilElementType,
1374            "IFCCLASSIFICATION" => Self::IfcClassification,
1375            "IFCCLASSIFICATIONREFERENCE" => Self::IfcClassificationReference,
1376            "IFCCLOSEDSHELL" => Self::IfcClosedShell,
1377            "IFCCLOTHOID" => Self::IfcClothoid,
1378            "IFCCOIL" => Self::IfcCoil,
1379            "IFCCOILTYPE" => Self::IfcCoilType,
1380            "IFCCOLOURRGB" => Self::IfcColourRgb,
1381            "IFCCOLOURRGBLIST" => Self::IfcColourRgbList,
1382            "IFCCOLOURSPECIFICATION" => Self::IfcColourSpecification,
1383            "IFCCOLUMN" => Self::IfcColumn,
1384            "IFCCOLUMNTYPE" => Self::IfcColumnType,
1385            "IFCCOMMUNICATIONSAPPLIANCE" => Self::IfcCommunicationsAppliance,
1386            "IFCCOMMUNICATIONSAPPLIANCETYPE" => Self::IfcCommunicationsApplianceType,
1387            "IFCCOMPLEXPROPERTY" => Self::IfcComplexProperty,
1388            "IFCCOMPLEXPROPERTYTEMPLATE" => Self::IfcComplexPropertyTemplate,
1389            "IFCCOMPOSITECURVE" => Self::IfcCompositeCurve,
1390            "IFCCOMPOSITECURVEONSURFACE" => Self::IfcCompositeCurveOnSurface,
1391            "IFCCOMPOSITECURVESEGMENT" => Self::IfcCompositeCurveSegment,
1392            "IFCCOMPOSITEPROFILEDEF" => Self::IfcCompositeProfileDef,
1393            "IFCCOMPRESSOR" => Self::IfcCompressor,
1394            "IFCCOMPRESSORTYPE" => Self::IfcCompressorType,
1395            "IFCCONDENSER" => Self::IfcCondenser,
1396            "IFCCONDENSERTYPE" => Self::IfcCondenserType,
1397            "IFCCONIC" => Self::IfcConic,
1398            "IFCCONNECTEDFACESET" => Self::IfcConnectedFaceSet,
1399            "IFCCONNECTIONCURVEGEOMETRY" => Self::IfcConnectionCurveGeometry,
1400            "IFCCONNECTIONGEOMETRY" => Self::IfcConnectionGeometry,
1401            "IFCCONNECTIONPOINTECCENTRICITY" => Self::IfcConnectionPointEccentricity,
1402            "IFCCONNECTIONPOINTGEOMETRY" => Self::IfcConnectionPointGeometry,
1403            "IFCCONNECTIONSURFACEGEOMETRY" => Self::IfcConnectionSurfaceGeometry,
1404            "IFCCONNECTIONVOLUMEGEOMETRY" => Self::IfcConnectionVolumeGeometry,
1405            "IFCCONSTRAINT" => Self::IfcConstraint,
1406            "IFCCONSTRUCTIONEQUIPMENTRESOURCE" => Self::IfcConstructionEquipmentResource,
1407            "IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE" => Self::IfcConstructionEquipmentResourceType,
1408            "IFCCONSTRUCTIONMATERIALRESOURCE" => Self::IfcConstructionMaterialResource,
1409            "IFCCONSTRUCTIONMATERIALRESOURCETYPE" => Self::IfcConstructionMaterialResourceType,
1410            "IFCCONSTRUCTIONPRODUCTRESOURCE" => Self::IfcConstructionProductResource,
1411            "IFCCONSTRUCTIONPRODUCTRESOURCETYPE" => Self::IfcConstructionProductResourceType,
1412            "IFCCONSTRUCTIONRESOURCE" => Self::IfcConstructionResource,
1413            "IFCCONSTRUCTIONRESOURCETYPE" => Self::IfcConstructionResourceType,
1414            "IFCCONTEXT" => Self::IfcContext,
1415            "IFCCONTEXTDEPENDENTUNIT" => Self::IfcContextDependentUnit,
1416            "IFCCONTROL" => Self::IfcControl,
1417            "IFCCONTROLLER" => Self::IfcController,
1418            "IFCCONTROLLERTYPE" => Self::IfcControllerType,
1419            "IFCCONVERSIONBASEDUNIT" => Self::IfcConversionBasedUnit,
1420            "IFCCONVERSIONBASEDUNITWITHOFFSET" => Self::IfcConversionBasedUnitWithOffset,
1421            "IFCCONVEYORSEGMENT" => Self::IfcConveyorSegment,
1422            "IFCCONVEYORSEGMENTTYPE" => Self::IfcConveyorSegmentType,
1423            "IFCCOOLEDBEAM" => Self::IfcCooledBeam,
1424            "IFCCOOLEDBEAMTYPE" => Self::IfcCooledBeamType,
1425            "IFCCOOLINGTOWER" => Self::IfcCoolingTower,
1426            "IFCCOOLINGTOWERTYPE" => Self::IfcCoolingTowerType,
1427            "IFCCOORDINATEOPERATION" => Self::IfcCoordinateOperation,
1428            "IFCCOORDINATEREFERENCESYSTEM" => Self::IfcCoordinateReferenceSystem,
1429            "IFCCOSINESPIRAL" => Self::IfcCosineSpiral,
1430            "IFCCOSTITEM" => Self::IfcCostItem,
1431            "IFCCOSTSCHEDULE" => Self::IfcCostSchedule,
1432            "IFCCOSTVALUE" => Self::IfcCostValue,
1433            "IFCCOURSE" => Self::IfcCourse,
1434            "IFCCOURSETYPE" => Self::IfcCourseType,
1435            "IFCCOVERING" => Self::IfcCovering,
1436            "IFCCOVERINGTYPE" => Self::IfcCoveringType,
1437            "IFCCREWRESOURCE" => Self::IfcCrewResource,
1438            "IFCCREWRESOURCETYPE" => Self::IfcCrewResourceType,
1439            "IFCCSGPRIMITIVE3D" => Self::IfcCsgPrimitive3D,
1440            "IFCCSGSOLID" => Self::IfcCsgSolid,
1441            "IFCCURRENCYRELATIONSHIP" => Self::IfcCurrencyRelationship,
1442            "IFCCURTAINWALL" => Self::IfcCurtainWall,
1443            "IFCCURTAINWALLTYPE" => Self::IfcCurtainWallType,
1444            "IFCCURVE" => Self::IfcCurve,
1445            "IFCCURVEBOUNDEDPLANE" => Self::IfcCurveBoundedPlane,
1446            "IFCCURVEBOUNDEDSURFACE" => Self::IfcCurveBoundedSurface,
1447            "IFCCURVESEGMENT" => Self::IfcCurveSegment,
1448            "IFCCURVESTYLE" => Self::IfcCurveStyle,
1449            "IFCCURVESTYLEFONT" => Self::IfcCurveStyleFont,
1450            "IFCCURVESTYLEFONTANDSCALING" => Self::IfcCurveStyleFontAndScaling,
1451            "IFCCURVESTYLEFONTPATTERN" => Self::IfcCurveStyleFontPattern,
1452            "IFCCYLINDRICALSURFACE" => Self::IfcCylindricalSurface,
1453            "IFCDAMPER" => Self::IfcDamper,
1454            "IFCDAMPERTYPE" => Self::IfcDamperType,
1455            "IFCDEEPFOUNDATION" => Self::IfcDeepFoundation,
1456            "IFCDEEPFOUNDATIONTYPE" => Self::IfcDeepFoundationType,
1457            "IFCDERIVEDPROFILEDEF" => Self::IfcDerivedProfileDef,
1458            "IFCDERIVEDUNIT" => Self::IfcDerivedUnit,
1459            "IFCDERIVEDUNITELEMENT" => Self::IfcDerivedUnitElement,
1460            "IFCDIMENSIONALEXPONENTS" => Self::IfcDimensionalExponents,
1461            "IFCDIRECTION" => Self::IfcDirection,
1462            "IFCDIRECTRIXCURVESWEPTAREASOLID" => Self::IfcDirectrixCurveSweptAreaSolid,
1463            "IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID" => {
1464                Self::IfcDirectrixDerivedReferenceSweptAreaSolid
1465            }
1466            "IFCDISCRETEACCESSORY" => Self::IfcDiscreteAccessory,
1467            "IFCDISCRETEACCESSORYTYPE" => Self::IfcDiscreteAccessoryType,
1468            "IFCDISTRIBUTIONBOARD" => Self::IfcDistributionBoard,
1469            "IFCDISTRIBUTIONBOARDTYPE" => Self::IfcDistributionBoardType,
1470            "IFCDISTRIBUTIONCHAMBERELEMENT" => Self::IfcDistributionChamberElement,
1471            "IFCDISTRIBUTIONCHAMBERELEMENTTYPE" => Self::IfcDistributionChamberElementType,
1472            "IFCDISTRIBUTIONCIRCUIT" => Self::IfcDistributionCircuit,
1473            "IFCDISTRIBUTIONCONTROLELEMENT" => Self::IfcDistributionControlElement,
1474            "IFCDISTRIBUTIONCONTROLELEMENTTYPE" => Self::IfcDistributionControlElementType,
1475            "IFCDISTRIBUTIONELEMENT" => Self::IfcDistributionElement,
1476            "IFCDISTRIBUTIONELEMENTTYPE" => Self::IfcDistributionElementType,
1477            "IFCDISTRIBUTIONFLOWELEMENT" => Self::IfcDistributionFlowElement,
1478            "IFCDISTRIBUTIONFLOWELEMENTTYPE" => Self::IfcDistributionFlowElementType,
1479            "IFCDISTRIBUTIONPORT" => Self::IfcDistributionPort,
1480            "IFCDISTRIBUTIONSYSTEM" => Self::IfcDistributionSystem,
1481            "IFCDOCUMENTINFORMATION" => Self::IfcDocumentInformation,
1482            "IFCDOCUMENTINFORMATIONRELATIONSHIP" => Self::IfcDocumentInformationRelationship,
1483            "IFCDOCUMENTREFERENCE" => Self::IfcDocumentReference,
1484            "IFCDOOR" => Self::IfcDoor,
1485            "IFCDOORLININGPROPERTIES" => Self::IfcDoorLiningProperties,
1486            "IFCDOORPANELPROPERTIES" => Self::IfcDoorPanelProperties,
1487            "IFCDOORTYPE" => Self::IfcDoorType,
1488            "IFCDRAUGHTINGPREDEFINEDCOLOUR" => Self::IfcDraughtingPreDefinedColour,
1489            "IFCDRAUGHTINGPREDEFINEDCURVEFONT" => Self::IfcDraughtingPreDefinedCurveFont,
1490            "IFCDUCTFITTING" => Self::IfcDuctFitting,
1491            "IFCDUCTFITTINGTYPE" => Self::IfcDuctFittingType,
1492            "IFCDUCTSEGMENT" => Self::IfcDuctSegment,
1493            "IFCDUCTSEGMENTTYPE" => Self::IfcDuctSegmentType,
1494            "IFCDUCTSILENCER" => Self::IfcDuctSilencer,
1495            "IFCDUCTSILENCERTYPE" => Self::IfcDuctSilencerType,
1496            "IFCEARTHWORKSCUT" => Self::IfcEarthworksCut,
1497            "IFCEARTHWORKSELEMENT" => Self::IfcEarthworksElement,
1498            "IFCEARTHWORKSFILL" => Self::IfcEarthworksFill,
1499            "IFCEDGE" => Self::IfcEdge,
1500            "IFCEDGECURVE" => Self::IfcEdgeCurve,
1501            "IFCEDGELOOP" => Self::IfcEdgeLoop,
1502            "IFCELECTRICAPPLIANCE" => Self::IfcElectricAppliance,
1503            "IFCELECTRICAPPLIANCETYPE" => Self::IfcElectricApplianceType,
1504            "IFCELECTRICDISTRIBUTIONBOARD" => Self::IfcElectricDistributionBoard,
1505            "IFCELECTRICDISTRIBUTIONBOARDTYPE" => Self::IfcElectricDistributionBoardType,
1506            "IFCELECTRICFLOWSTORAGEDEVICE" => Self::IfcElectricFlowStorageDevice,
1507            "IFCELECTRICFLOWSTORAGEDEVICETYPE" => Self::IfcElectricFlowStorageDeviceType,
1508            "IFCELECTRICFLOWTREATMENTDEVICE" => Self::IfcElectricFlowTreatmentDevice,
1509            "IFCELECTRICFLOWTREATMENTDEVICETYPE" => Self::IfcElectricFlowTreatmentDeviceType,
1510            "IFCELECTRICGENERATOR" => Self::IfcElectricGenerator,
1511            "IFCELECTRICGENERATORTYPE" => Self::IfcElectricGeneratorType,
1512            "IFCELECTRICMOTOR" => Self::IfcElectricMotor,
1513            "IFCELECTRICMOTORTYPE" => Self::IfcElectricMotorType,
1514            "IFCELECTRICTIMECONTROL" => Self::IfcElectricTimeControl,
1515            "IFCELECTRICTIMECONTROLTYPE" => Self::IfcElectricTimeControlType,
1516            "IFCELEMENT" => Self::IfcElement,
1517            "IFCELEMENTASSEMBLY" => Self::IfcElementAssembly,
1518            "IFCELEMENTASSEMBLYTYPE" => Self::IfcElementAssemblyType,
1519            "IFCELEMENTCOMPONENT" => Self::IfcElementComponent,
1520            "IFCELEMENTCOMPONENTTYPE" => Self::IfcElementComponentType,
1521            "IFCELEMENTQUANTITY" => Self::IfcElementQuantity,
1522            "IFCELEMENTTYPE" => Self::IfcElementType,
1523            "IFCELEMENTARYSURFACE" => Self::IfcElementarySurface,
1524            "IFCELLIPSE" => Self::IfcEllipse,
1525            "IFCELLIPSEPROFILEDEF" => Self::IfcEllipseProfileDef,
1526            "IFCENERGYCONVERSIONDEVICE" => Self::IfcEnergyConversionDevice,
1527            "IFCENERGYCONVERSIONDEVICETYPE" => Self::IfcEnergyConversionDeviceType,
1528            "IFCENGINE" => Self::IfcEngine,
1529            "IFCENGINETYPE" => Self::IfcEngineType,
1530            "IFCEVAPORATIVECOOLER" => Self::IfcEvaporativeCooler,
1531            "IFCEVAPORATIVECOOLERTYPE" => Self::IfcEvaporativeCoolerType,
1532            "IFCEVAPORATOR" => Self::IfcEvaporator,
1533            "IFCEVAPORATORTYPE" => Self::IfcEvaporatorType,
1534            "IFCEVENT" => Self::IfcEvent,
1535            "IFCEVENTTIME" => Self::IfcEventTime,
1536            "IFCEVENTTYPE" => Self::IfcEventType,
1537            "IFCEXTENDEDPROPERTIES" => Self::IfcExtendedProperties,
1538            "IFCEXTERNALINFORMATION" => Self::IfcExternalInformation,
1539            "IFCEXTERNALREFERENCE" => Self::IfcExternalReference,
1540            "IFCEXTERNALREFERENCERELATIONSHIP" => Self::IfcExternalReferenceRelationship,
1541            "IFCEXTERNALSPATIALELEMENT" => Self::IfcExternalSpatialElement,
1542            "IFCEXTERNALSPATIALSTRUCTUREELEMENT" => Self::IfcExternalSpatialStructureElement,
1543            "IFCEXTERNALLYDEFINEDHATCHSTYLE" => Self::IfcExternallyDefinedHatchStyle,
1544            "IFCEXTERNALLYDEFINEDSURFACESTYLE" => Self::IfcExternallyDefinedSurfaceStyle,
1545            "IFCEXTERNALLYDEFINEDTEXTFONT" => Self::IfcExternallyDefinedTextFont,
1546            "IFCEXTRUDEDAREASOLID" => Self::IfcExtrudedAreaSolid,
1547            "IFCEXTRUDEDAREASOLIDTAPERED" => Self::IfcExtrudedAreaSolidTapered,
1548            "IFCFACE" => Self::IfcFace,
1549            "IFCFACEBASEDSURFACEMODEL" => Self::IfcFaceBasedSurfaceModel,
1550            "IFCFACEBOUND" => Self::IfcFaceBound,
1551            "IFCFACEOUTERBOUND" => Self::IfcFaceOuterBound,
1552            "IFCFACESURFACE" => Self::IfcFaceSurface,
1553            "IFCFACETEDBREP" => Self::IfcFacetedBrep,
1554            "IFCFACETEDBREPWITHVOIDS" => Self::IfcFacetedBrepWithVoids,
1555            "IFCFACILITY" => Self::IfcFacility,
1556            "IFCFACILITYPART" => Self::IfcFacilityPart,
1557            "IFCFACILITYPARTCOMMON" => Self::IfcFacilityPartCommon,
1558            "IFCFAILURECONNECTIONCONDITION" => Self::IfcFailureConnectionCondition,
1559            "IFCFAN" => Self::IfcFan,
1560            "IFCFANTYPE" => Self::IfcFanType,
1561            "IFCFASTENER" => Self::IfcFastener,
1562            "IFCFASTENERTYPE" => Self::IfcFastenerType,
1563            "IFCFEATUREELEMENT" => Self::IfcFeatureElement,
1564            "IFCFEATUREELEMENTADDITION" => Self::IfcFeatureElementAddition,
1565            "IFCFEATUREELEMENTSUBTRACTION" => Self::IfcFeatureElementSubtraction,
1566            "IFCFILLAREASTYLE" => Self::IfcFillAreaStyle,
1567            "IFCFILLAREASTYLEHATCHING" => Self::IfcFillAreaStyleHatching,
1568            "IFCFILLAREASTYLETILES" => Self::IfcFillAreaStyleTiles,
1569            "IFCFILTER" => Self::IfcFilter,
1570            "IFCFILTERTYPE" => Self::IfcFilterType,
1571            "IFCFIRESUPPRESSIONTERMINAL" => Self::IfcFireSuppressionTerminal,
1572            "IFCFIRESUPPRESSIONTERMINALTYPE" => Self::IfcFireSuppressionTerminalType,
1573            "IFCFIXEDREFERENCESWEPTAREASOLID" => Self::IfcFixedReferenceSweptAreaSolid,
1574            "IFCFLOWCONTROLLER" => Self::IfcFlowController,
1575            "IFCFLOWCONTROLLERTYPE" => Self::IfcFlowControllerType,
1576            "IFCFLOWFITTING" => Self::IfcFlowFitting,
1577            "IFCFLOWFITTINGTYPE" => Self::IfcFlowFittingType,
1578            "IFCFLOWINSTRUMENT" => Self::IfcFlowInstrument,
1579            "IFCFLOWINSTRUMENTTYPE" => Self::IfcFlowInstrumentType,
1580            "IFCFLOWMETER" => Self::IfcFlowMeter,
1581            "IFCFLOWMETERTYPE" => Self::IfcFlowMeterType,
1582            "IFCFLOWMOVINGDEVICE" => Self::IfcFlowMovingDevice,
1583            "IFCFLOWMOVINGDEVICETYPE" => Self::IfcFlowMovingDeviceType,
1584            "IFCFLOWSEGMENT" => Self::IfcFlowSegment,
1585            "IFCFLOWSEGMENTTYPE" => Self::IfcFlowSegmentType,
1586            "IFCFLOWSTORAGEDEVICE" => Self::IfcFlowStorageDevice,
1587            "IFCFLOWSTORAGEDEVICETYPE" => Self::IfcFlowStorageDeviceType,
1588            "IFCFLOWTERMINAL" => Self::IfcFlowTerminal,
1589            "IFCFLOWTERMINALTYPE" => Self::IfcFlowTerminalType,
1590            "IFCFLOWTREATMENTDEVICE" => Self::IfcFlowTreatmentDevice,
1591            "IFCFLOWTREATMENTDEVICETYPE" => Self::IfcFlowTreatmentDeviceType,
1592            "IFCFOOTING" => Self::IfcFooting,
1593            "IFCFOOTINGTYPE" => Self::IfcFootingType,
1594            "IFCFURNISHINGELEMENT" => Self::IfcFurnishingElement,
1595            "IFCFURNISHINGELEMENTTYPE" => Self::IfcFurnishingElementType,
1596            "IFCFURNITURE" => Self::IfcFurniture,
1597            "IFCFURNITURETYPE" => Self::IfcFurnitureType,
1598            "IFCGEOGRAPHICCRS" => Self::IfcGeographicCRS,
1599            "IFCGEOGRAPHICELEMENT" => Self::IfcGeographicElement,
1600            "IFCGEOGRAPHICELEMENTTYPE" => Self::IfcGeographicElementType,
1601            "IFCGEOMETRICCURVESET" => Self::IfcGeometricCurveSet,
1602            "IFCGEOMETRICREPRESENTATIONCONTEXT" => Self::IfcGeometricRepresentationContext,
1603            "IFCGEOMETRICREPRESENTATIONITEM" => Self::IfcGeometricRepresentationItem,
1604            "IFCGEOMETRICREPRESENTATIONSUBCONTEXT" => Self::IfcGeometricRepresentationSubContext,
1605            "IFCGEOMETRICSET" => Self::IfcGeometricSet,
1606            "IFCGEOMODEL" => Self::IfcGeomodel,
1607            "IFCGEOSLICE" => Self::IfcGeoslice,
1608            "IFCGEOTECHNICALASSEMBLY" => Self::IfcGeotechnicalAssembly,
1609            "IFCGEOTECHNICALELEMENT" => Self::IfcGeotechnicalElement,
1610            "IFCGEOTECHNICALSTRATUM" => Self::IfcGeotechnicalStratum,
1611            "IFCGRADIENTCURVE" => Self::IfcGradientCurve,
1612            "IFCGRID" => Self::IfcGrid,
1613            "IFCGRIDAXIS" => Self::IfcGridAxis,
1614            "IFCGRIDPLACEMENT" => Self::IfcGridPlacement,
1615            "IFCGROUP" => Self::IfcGroup,
1616            "IFCHALFSPACESOLID" => Self::IfcHalfSpaceSolid,
1617            "IFCHEATEXCHANGER" => Self::IfcHeatExchanger,
1618            "IFCHEATEXCHANGERTYPE" => Self::IfcHeatExchangerType,
1619            "IFCHUMIDIFIER" => Self::IfcHumidifier,
1620            "IFCHUMIDIFIERTYPE" => Self::IfcHumidifierType,
1621            "IFCISHAPEPROFILEDEF" => Self::IfcIShapeProfileDef,
1622            "IFCIMAGETEXTURE" => Self::IfcImageTexture,
1623            "IFCIMPACTPROTECTIONDEVICE" => Self::IfcImpactProtectionDevice,
1624            "IFCIMPACTPROTECTIONDEVICETYPE" => Self::IfcImpactProtectionDeviceType,
1625            "IFCINDEXEDCOLOURMAP" => Self::IfcIndexedColourMap,
1626            "IFCINDEXEDPOLYCURVE" => Self::IfcIndexedPolyCurve,
1627            "IFCINDEXEDPOLYGONALFACE" => Self::IfcIndexedPolygonalFace,
1628            "IFCINDEXEDPOLYGONALFACEWITHVOIDS" => Self::IfcIndexedPolygonalFaceWithVoids,
1629            "IFCINDEXEDPOLYGONALTEXTUREMAP" => Self::IfcIndexedPolygonalTextureMap,
1630            "IFCINDEXEDTEXTUREMAP" => Self::IfcIndexedTextureMap,
1631            "IFCINDEXEDTRIANGLETEXTUREMAP" => Self::IfcIndexedTriangleTextureMap,
1632            "IFCINTERCEPTOR" => Self::IfcInterceptor,
1633            "IFCINTERCEPTORTYPE" => Self::IfcInterceptorType,
1634            "IFCINTERSECTIONCURVE" => Self::IfcIntersectionCurve,
1635            "IFCINVENTORY" => Self::IfcInventory,
1636            "IFCIRREGULARTIMESERIES" => Self::IfcIrregularTimeSeries,
1637            "IFCIRREGULARTIMESERIESVALUE" => Self::IfcIrregularTimeSeriesValue,
1638            "IFCJUNCTIONBOX" => Self::IfcJunctionBox,
1639            "IFCJUNCTIONBOXTYPE" => Self::IfcJunctionBoxType,
1640            "IFCKERB" => Self::IfcKerb,
1641            "IFCKERBTYPE" => Self::IfcKerbType,
1642            "IFCLSHAPEPROFILEDEF" => Self::IfcLShapeProfileDef,
1643            "IFCLABORRESOURCE" => Self::IfcLaborResource,
1644            "IFCLABORRESOURCETYPE" => Self::IfcLaborResourceType,
1645            "IFCLAGTIME" => Self::IfcLagTime,
1646            "IFCLAMP" => Self::IfcLamp,
1647            "IFCLAMPTYPE" => Self::IfcLampType,
1648            "IFCLIBRARYINFORMATION" => Self::IfcLibraryInformation,
1649            "IFCLIBRARYREFERENCE" => Self::IfcLibraryReference,
1650            "IFCLIGHTDISTRIBUTIONDATA" => Self::IfcLightDistributionData,
1651            "IFCLIGHTFIXTURE" => Self::IfcLightFixture,
1652            "IFCLIGHTFIXTURETYPE" => Self::IfcLightFixtureType,
1653            "IFCLIGHTINTENSITYDISTRIBUTION" => Self::IfcLightIntensityDistribution,
1654            "IFCLIGHTSOURCE" => Self::IfcLightSource,
1655            "IFCLIGHTSOURCEAMBIENT" => Self::IfcLightSourceAmbient,
1656            "IFCLIGHTSOURCEDIRECTIONAL" => Self::IfcLightSourceDirectional,
1657            "IFCLIGHTSOURCEGONIOMETRIC" => Self::IfcLightSourceGoniometric,
1658            "IFCLIGHTSOURCEPOSITIONAL" => Self::IfcLightSourcePositional,
1659            "IFCLIGHTSOURCESPOT" => Self::IfcLightSourceSpot,
1660            "IFCLINE" => Self::IfcLine,
1661            "IFCLINEARELEMENT" => Self::IfcLinearElement,
1662            "IFCLINEARPLACEMENT" => Self::IfcLinearPlacement,
1663            "IFCLINEARPOSITIONINGELEMENT" => Self::IfcLinearPositioningElement,
1664            "IFCLIQUIDTERMINAL" => Self::IfcLiquidTerminal,
1665            "IFCLIQUIDTERMINALTYPE" => Self::IfcLiquidTerminalType,
1666            "IFCLOCALPLACEMENT" => Self::IfcLocalPlacement,
1667            "IFCLOOP" => Self::IfcLoop,
1668            "IFCMANIFOLDSOLIDBREP" => Self::IfcManifoldSolidBrep,
1669            "IFCMAPCONVERSION" => Self::IfcMapConversion,
1670            "IFCMAPCONVERSIONSCALED" => Self::IfcMapConversionScaled,
1671            "IFCMAPPEDITEM" => Self::IfcMappedItem,
1672            "IFCMARINEFACILITY" => Self::IfcMarineFacility,
1673            "IFCMARINEPART" => Self::IfcMarinePart,
1674            "IFCMATERIAL" => Self::IfcMaterial,
1675            "IFCMATERIALCLASSIFICATIONRELATIONSHIP" => Self::IfcMaterialClassificationRelationship,
1676            "IFCMATERIALCONSTITUENT" => Self::IfcMaterialConstituent,
1677            "IFCMATERIALCONSTITUENTSET" => Self::IfcMaterialConstituentSet,
1678            "IFCMATERIALDEFINITION" => Self::IfcMaterialDefinition,
1679            "IFCMATERIALDEFINITIONREPRESENTATION" => Self::IfcMaterialDefinitionRepresentation,
1680            "IFCMATERIALLAYER" => Self::IfcMaterialLayer,
1681            "IFCMATERIALLAYERSET" => Self::IfcMaterialLayerSet,
1682            "IFCMATERIALLAYERSETUSAGE" => Self::IfcMaterialLayerSetUsage,
1683            "IFCMATERIALLAYERWITHOFFSETS" => Self::IfcMaterialLayerWithOffsets,
1684            "IFCMATERIALLIST" => Self::IfcMaterialList,
1685            "IFCMATERIALPROFILE" => Self::IfcMaterialProfile,
1686            "IFCMATERIALPROFILESET" => Self::IfcMaterialProfileSet,
1687            "IFCMATERIALPROFILESETUSAGE" => Self::IfcMaterialProfileSetUsage,
1688            "IFCMATERIALPROFILESETUSAGETAPERING" => Self::IfcMaterialProfileSetUsageTapering,
1689            "IFCMATERIALPROFILEWITHOFFSETS" => Self::IfcMaterialProfileWithOffsets,
1690            "IFCMATERIALPROPERTIES" => Self::IfcMaterialProperties,
1691            "IFCMATERIALRELATIONSHIP" => Self::IfcMaterialRelationship,
1692            "IFCMATERIALUSAGEDEFINITION" => Self::IfcMaterialUsageDefinition,
1693            "IFCMEASUREWITHUNIT" => Self::IfcMeasureWithUnit,
1694            "IFCMECHANICALFASTENER" => Self::IfcMechanicalFastener,
1695            "IFCMECHANICALFASTENERTYPE" => Self::IfcMechanicalFastenerType,
1696            "IFCMEDICALDEVICE" => Self::IfcMedicalDevice,
1697            "IFCMEDICALDEVICETYPE" => Self::IfcMedicalDeviceType,
1698            "IFCMEMBER" => Self::IfcMember,
1699            "IFCMEMBERTYPE" => Self::IfcMemberType,
1700            "IFCMETRIC" => Self::IfcMetric,
1701            "IFCMIRROREDPROFILEDEF" => Self::IfcMirroredProfileDef,
1702            "IFCMOBILETELECOMMUNICATIONSAPPLIANCE" => Self::IfcMobileTelecommunicationsAppliance,
1703            "IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE" => {
1704                Self::IfcMobileTelecommunicationsApplianceType
1705            }
1706            "IFCMONETARYUNIT" => Self::IfcMonetaryUnit,
1707            "IFCMOORINGDEVICE" => Self::IfcMooringDevice,
1708            "IFCMOORINGDEVICETYPE" => Self::IfcMooringDeviceType,
1709            "IFCMOTORCONNECTION" => Self::IfcMotorConnection,
1710            "IFCMOTORCONNECTIONTYPE" => Self::IfcMotorConnectionType,
1711            "IFCNAMEDUNIT" => Self::IfcNamedUnit,
1712            "IFCNAVIGATIONELEMENT" => Self::IfcNavigationElement,
1713            "IFCNAVIGATIONELEMENTTYPE" => Self::IfcNavigationElementType,
1714            "IFCOBJECT" => Self::IfcObject,
1715            "IFCOBJECTDEFINITION" => Self::IfcObjectDefinition,
1716            "IFCOBJECTPLACEMENT" => Self::IfcObjectPlacement,
1717            "IFCOBJECTIVE" => Self::IfcObjective,
1718            "IFCOCCUPANT" => Self::IfcOccupant,
1719            "IFCOFFSETCURVE" => Self::IfcOffsetCurve,
1720            "IFCOFFSETCURVE2D" => Self::IfcOffsetCurve2D,
1721            "IFCOFFSETCURVE3D" => Self::IfcOffsetCurve3D,
1722            "IFCOFFSETCURVEBYDISTANCES" => Self::IfcOffsetCurveByDistances,
1723            "IFCOPENCROSSPROFILEDEF" => Self::IfcOpenCrossProfileDef,
1724            "IFCOPENSHELL" => Self::IfcOpenShell,
1725            "IFCOPENINGELEMENT" => Self::IfcOpeningElement,
1726            "IFCORGANIZATION" => Self::IfcOrganization,
1727            "IFCORGANIZATIONRELATIONSHIP" => Self::IfcOrganizationRelationship,
1728            "IFCORIENTEDEDGE" => Self::IfcOrientedEdge,
1729            "IFCOUTERBOUNDARYCURVE" => Self::IfcOuterBoundaryCurve,
1730            "IFCOUTLET" => Self::IfcOutlet,
1731            "IFCOUTLETTYPE" => Self::IfcOutletType,
1732            "IFCOWNERHISTORY" => Self::IfcOwnerHistory,
1733            "IFCPARAMETERIZEDPROFILEDEF" => Self::IfcParameterizedProfileDef,
1734            "IFCPATH" => Self::IfcPath,
1735            "IFCPAVEMENT" => Self::IfcPavement,
1736            "IFCPAVEMENTTYPE" => Self::IfcPavementType,
1737            "IFCPCURVE" => Self::IfcPcurve,
1738            "IFCPERFORMANCEHISTORY" => Self::IfcPerformanceHistory,
1739            "IFCPERMEABLECOVERINGPROPERTIES" => Self::IfcPermeableCoveringProperties,
1740            "IFCPERMIT" => Self::IfcPermit,
1741            "IFCPERSON" => Self::IfcPerson,
1742            "IFCPERSONANDORGANIZATION" => Self::IfcPersonAndOrganization,
1743            "IFCPHYSICALCOMPLEXQUANTITY" => Self::IfcPhysicalComplexQuantity,
1744            "IFCPHYSICALQUANTITY" => Self::IfcPhysicalQuantity,
1745            "IFCPHYSICALSIMPLEQUANTITY" => Self::IfcPhysicalSimpleQuantity,
1746            "IFCPILE" => Self::IfcPile,
1747            "IFCPILETYPE" => Self::IfcPileType,
1748            "IFCPIPEFITTING" => Self::IfcPipeFitting,
1749            "IFCPIPEFITTINGTYPE" => Self::IfcPipeFittingType,
1750            "IFCPIPESEGMENT" => Self::IfcPipeSegment,
1751            "IFCPIPESEGMENTTYPE" => Self::IfcPipeSegmentType,
1752            "IFCPIXELTEXTURE" => Self::IfcPixelTexture,
1753            "IFCPLACEMENT" => Self::IfcPlacement,
1754            "IFCPLANARBOX" => Self::IfcPlanarBox,
1755            "IFCPLANAREXTENT" => Self::IfcPlanarExtent,
1756            "IFCPLANE" => Self::IfcPlane,
1757            "IFCPLATE" => Self::IfcPlate,
1758            "IFCPLATETYPE" => Self::IfcPlateType,
1759            "IFCPOINT" => Self::IfcPoint,
1760            "IFCPOINTBYDISTANCEEXPRESSION" => Self::IfcPointByDistanceExpression,
1761            "IFCPOINTONCURVE" => Self::IfcPointOnCurve,
1762            "IFCPOINTONSURFACE" => Self::IfcPointOnSurface,
1763            "IFCPOLYLOOP" => Self::IfcPolyLoop,
1764            "IFCPOLYGONALBOUNDEDHALFSPACE" => Self::IfcPolygonalBoundedHalfSpace,
1765            "IFCPOLYGONALFACESET" => Self::IfcPolygonalFaceSet,
1766            "IFCPOLYLINE" => Self::IfcPolyline,
1767            "IFCPOLYNOMIALCURVE" => Self::IfcPolynomialCurve,
1768            "IFCPORT" => Self::IfcPort,
1769            "IFCPOSITIONINGELEMENT" => Self::IfcPositioningElement,
1770            "IFCPOSTALADDRESS" => Self::IfcPostalAddress,
1771            "IFCPREDEFINEDCOLOUR" => Self::IfcPreDefinedColour,
1772            "IFCPREDEFINEDCURVEFONT" => Self::IfcPreDefinedCurveFont,
1773            "IFCPREDEFINEDITEM" => Self::IfcPreDefinedItem,
1774            "IFCPREDEFINEDPROPERTIES" => Self::IfcPreDefinedProperties,
1775            "IFCPREDEFINEDPROPERTYSET" => Self::IfcPreDefinedPropertySet,
1776            "IFCPREDEFINEDTEXTFONT" => Self::IfcPreDefinedTextFont,
1777            "IFCPRESENTATIONITEM" => Self::IfcPresentationItem,
1778            "IFCPRESENTATIONLAYERASSIGNMENT" => Self::IfcPresentationLayerAssignment,
1779            "IFCPRESENTATIONLAYERWITHSTYLE" => Self::IfcPresentationLayerWithStyle,
1780            "IFCPRESENTATIONSTYLE" => Self::IfcPresentationStyle,
1781            "IFCPROCEDURE" => Self::IfcProcedure,
1782            "IFCPROCEDURETYPE" => Self::IfcProcedureType,
1783            "IFCPROCESS" => Self::IfcProcess,
1784            "IFCPRODUCT" => Self::IfcProduct,
1785            "IFCPRODUCTDEFINITIONSHAPE" => Self::IfcProductDefinitionShape,
1786            "IFCPRODUCTREPRESENTATION" => Self::IfcProductRepresentation,
1787            "IFCPROFILEDEF" => Self::IfcProfileDef,
1788            "IFCPROFILEPROPERTIES" => Self::IfcProfileProperties,
1789            "IFCPROJECT" => Self::IfcProject,
1790            "IFCPROJECTLIBRARY" => Self::IfcProjectLibrary,
1791            "IFCPROJECTORDER" => Self::IfcProjectOrder,
1792            "IFCPROJECTEDCRS" => Self::IfcProjectedCRS,
1793            "IFCPROJECTIONELEMENT" => Self::IfcProjectionElement,
1794            "IFCPROPERTY" => Self::IfcProperty,
1795            "IFCPROPERTYABSTRACTION" => Self::IfcPropertyAbstraction,
1796            "IFCPROPERTYBOUNDEDVALUE" => Self::IfcPropertyBoundedValue,
1797            "IFCPROPERTYDEFINITION" => Self::IfcPropertyDefinition,
1798            "IFCPROPERTYDEPENDENCYRELATIONSHIP" => Self::IfcPropertyDependencyRelationship,
1799            "IFCPROPERTYENUMERATEDVALUE" => Self::IfcPropertyEnumeratedValue,
1800            "IFCPROPERTYENUMERATION" => Self::IfcPropertyEnumeration,
1801            "IFCPROPERTYLISTVALUE" => Self::IfcPropertyListValue,
1802            "IFCPROPERTYREFERENCEVALUE" => Self::IfcPropertyReferenceValue,
1803            "IFCPROPERTYSET" => Self::IfcPropertySet,
1804            "IFCPROPERTYSETDEFINITION" => Self::IfcPropertySetDefinition,
1805            "IFCPROPERTYSETTEMPLATE" => Self::IfcPropertySetTemplate,
1806            "IFCPROPERTYSINGLEVALUE" => Self::IfcPropertySingleValue,
1807            "IFCPROPERTYTABLEVALUE" => Self::IfcPropertyTableValue,
1808            "IFCPROPERTYTEMPLATE" => Self::IfcPropertyTemplate,
1809            "IFCPROPERTYTEMPLATEDEFINITION" => Self::IfcPropertyTemplateDefinition,
1810            "IFCPROTECTIVEDEVICE" => Self::IfcProtectiveDevice,
1811            "IFCPROTECTIVEDEVICETRIPPINGUNIT" => Self::IfcProtectiveDeviceTrippingUnit,
1812            "IFCPROTECTIVEDEVICETRIPPINGUNITTYPE" => Self::IfcProtectiveDeviceTrippingUnitType,
1813            "IFCPROTECTIVEDEVICETYPE" => Self::IfcProtectiveDeviceType,
1814            "IFCPUMP" => Self::IfcPump,
1815            "IFCPUMPTYPE" => Self::IfcPumpType,
1816            "IFCQUANTITYAREA" => Self::IfcQuantityArea,
1817            "IFCQUANTITYCOUNT" => Self::IfcQuantityCount,
1818            "IFCQUANTITYLENGTH" => Self::IfcQuantityLength,
1819            "IFCQUANTITYNUMBER" => Self::IfcQuantityNumber,
1820            "IFCQUANTITYSET" => Self::IfcQuantitySet,
1821            "IFCQUANTITYTIME" => Self::IfcQuantityTime,
1822            "IFCQUANTITYVOLUME" => Self::IfcQuantityVolume,
1823            "IFCQUANTITYWEIGHT" => Self::IfcQuantityWeight,
1824            "IFCRAIL" => Self::IfcRail,
1825            "IFCRAILTYPE" => Self::IfcRailType,
1826            "IFCRAILING" => Self::IfcRailing,
1827            "IFCRAILINGTYPE" => Self::IfcRailingType,
1828            "IFCRAILWAY" => Self::IfcRailway,
1829            "IFCRAILWAYPART" => Self::IfcRailwayPart,
1830            "IFCRAMP" => Self::IfcRamp,
1831            "IFCRAMPFLIGHT" => Self::IfcRampFlight,
1832            "IFCRAMPFLIGHTTYPE" => Self::IfcRampFlightType,
1833            "IFCRAMPTYPE" => Self::IfcRampType,
1834            "IFCRATIONALBSPLINECURVEWITHKNOTS" => Self::IfcRationalBSplineCurveWithKnots,
1835            "IFCRATIONALBSPLINESURFACEWITHKNOTS" => Self::IfcRationalBSplineSurfaceWithKnots,
1836            "IFCRECTANGLEHOLLOWPROFILEDEF" => Self::IfcRectangleHollowProfileDef,
1837            "IFCRECTANGLEPROFILEDEF" => Self::IfcRectangleProfileDef,
1838            "IFCRECTANGULARPYRAMID" => Self::IfcRectangularPyramid,
1839            "IFCRECTANGULARTRIMMEDSURFACE" => Self::IfcRectangularTrimmedSurface,
1840            "IFCRECURRENCEPATTERN" => Self::IfcRecurrencePattern,
1841            "IFCREFERENCE" => Self::IfcReference,
1842            "IFCREFERENT" => Self::IfcReferent,
1843            "IFCREGULARTIMESERIES" => Self::IfcRegularTimeSeries,
1844            "IFCREINFORCEDSOIL" => Self::IfcReinforcedSoil,
1845            "IFCREINFORCEMENTBARPROPERTIES" => Self::IfcReinforcementBarProperties,
1846            "IFCREINFORCEMENTDEFINITIONPROPERTIES" => Self::IfcReinforcementDefinitionProperties,
1847            "IFCREINFORCINGBAR" => Self::IfcReinforcingBar,
1848            "IFCREINFORCINGBARTYPE" => Self::IfcReinforcingBarType,
1849            "IFCREINFORCINGELEMENT" => Self::IfcReinforcingElement,
1850            "IFCREINFORCINGELEMENTTYPE" => Self::IfcReinforcingElementType,
1851            "IFCREINFORCINGMESH" => Self::IfcReinforcingMesh,
1852            "IFCREINFORCINGMESHTYPE" => Self::IfcReinforcingMeshType,
1853            "IFCRELADHERESTOELEMENT" => Self::IfcRelAdheresToElement,
1854            "IFCRELAGGREGATES" => Self::IfcRelAggregates,
1855            "IFCRELASSIGNS" => Self::IfcRelAssigns,
1856            "IFCRELASSIGNSTOACTOR" => Self::IfcRelAssignsToActor,
1857            "IFCRELASSIGNSTOCONTROL" => Self::IfcRelAssignsToControl,
1858            "IFCRELASSIGNSTOGROUP" => Self::IfcRelAssignsToGroup,
1859            "IFCRELASSIGNSTOGROUPBYFACTOR" => Self::IfcRelAssignsToGroupByFactor,
1860            "IFCRELASSIGNSTOPROCESS" => Self::IfcRelAssignsToProcess,
1861            "IFCRELASSIGNSTOPRODUCT" => Self::IfcRelAssignsToProduct,
1862            "IFCRELASSIGNSTORESOURCE" => Self::IfcRelAssignsToResource,
1863            "IFCRELASSOCIATES" => Self::IfcRelAssociates,
1864            "IFCRELASSOCIATESAPPROVAL" => Self::IfcRelAssociatesApproval,
1865            "IFCRELASSOCIATESCLASSIFICATION" => Self::IfcRelAssociatesClassification,
1866            "IFCRELASSOCIATESCONSTRAINT" => Self::IfcRelAssociatesConstraint,
1867            "IFCRELASSOCIATESDOCUMENT" => Self::IfcRelAssociatesDocument,
1868            "IFCRELASSOCIATESLIBRARY" => Self::IfcRelAssociatesLibrary,
1869            "IFCRELASSOCIATESMATERIAL" => Self::IfcRelAssociatesMaterial,
1870            "IFCRELASSOCIATESPROFILEDEF" => Self::IfcRelAssociatesProfileDef,
1871            "IFCRELCONNECTS" => Self::IfcRelConnects,
1872            "IFCRELCONNECTSELEMENTS" => Self::IfcRelConnectsElements,
1873            "IFCRELCONNECTSPATHELEMENTS" => Self::IfcRelConnectsPathElements,
1874            "IFCRELCONNECTSPORTTOELEMENT" => Self::IfcRelConnectsPortToElement,
1875            "IFCRELCONNECTSPORTS" => Self::IfcRelConnectsPorts,
1876            "IFCRELCONNECTSSTRUCTURALACTIVITY" => Self::IfcRelConnectsStructuralActivity,
1877            "IFCRELCONNECTSSTRUCTURALMEMBER" => Self::IfcRelConnectsStructuralMember,
1878            "IFCRELCONNECTSWITHECCENTRICITY" => Self::IfcRelConnectsWithEccentricity,
1879            "IFCRELCONNECTSWITHREALIZINGELEMENTS" => Self::IfcRelConnectsWithRealizingElements,
1880            "IFCRELCONTAINEDINSPATIALSTRUCTURE" => Self::IfcRelContainedInSpatialStructure,
1881            "IFCRELCOVERSBLDGELEMENTS" => Self::IfcRelCoversBldgElements,
1882            "IFCRELCOVERSSPACES" => Self::IfcRelCoversSpaces,
1883            "IFCRELDECLARES" => Self::IfcRelDeclares,
1884            "IFCRELDECOMPOSES" => Self::IfcRelDecomposes,
1885            "IFCRELDEFINES" => Self::IfcRelDefines,
1886            "IFCRELDEFINESBYOBJECT" => Self::IfcRelDefinesByObject,
1887            "IFCRELDEFINESBYPROPERTIES" => Self::IfcRelDefinesByProperties,
1888            "IFCRELDEFINESBYTEMPLATE" => Self::IfcRelDefinesByTemplate,
1889            "IFCRELDEFINESBYTYPE" => Self::IfcRelDefinesByType,
1890            "IFCRELFILLSELEMENT" => Self::IfcRelFillsElement,
1891            "IFCRELFLOWCONTROLELEMENTS" => Self::IfcRelFlowControlElements,
1892            "IFCRELINTERFERESELEMENTS" => Self::IfcRelInterferesElements,
1893            "IFCRELNESTS" => Self::IfcRelNests,
1894            "IFCRELPOSITIONS" => Self::IfcRelPositions,
1895            "IFCRELPROJECTSELEMENT" => Self::IfcRelProjectsElement,
1896            "IFCRELREFERENCEDINSPATIALSTRUCTURE" => Self::IfcRelReferencedInSpatialStructure,
1897            "IFCRELSEQUENCE" => Self::IfcRelSequence,
1898            "IFCRELSERVICESBUILDINGS" => Self::IfcRelServicesBuildings,
1899            "IFCRELSPACEBOUNDARY" => Self::IfcRelSpaceBoundary,
1900            "IFCRELSPACEBOUNDARY1STLEVEL" => Self::IfcRelSpaceBoundary1stLevel,
1901            "IFCRELSPACEBOUNDARY2NDLEVEL" => Self::IfcRelSpaceBoundary2ndLevel,
1902            "IFCRELVOIDSELEMENT" => Self::IfcRelVoidsElement,
1903            "IFCRELATIONSHIP" => Self::IfcRelationship,
1904            "IFCREPARAMETRISEDCOMPOSITECURVESEGMENT" => {
1905                Self::IfcReparametrisedCompositeCurveSegment
1906            }
1907            "IFCREPRESENTATION" => Self::IfcRepresentation,
1908            "IFCREPRESENTATIONCONTEXT" => Self::IfcRepresentationContext,
1909            "IFCREPRESENTATIONITEM" => Self::IfcRepresentationItem,
1910            "IFCREPRESENTATIONMAP" => Self::IfcRepresentationMap,
1911            "IFCRESOURCE" => Self::IfcResource,
1912            "IFCRESOURCEAPPROVALRELATIONSHIP" => Self::IfcResourceApprovalRelationship,
1913            "IFCRESOURCECONSTRAINTRELATIONSHIP" => Self::IfcResourceConstraintRelationship,
1914            "IFCRESOURCELEVELRELATIONSHIP" => Self::IfcResourceLevelRelationship,
1915            "IFCRESOURCETIME" => Self::IfcResourceTime,
1916            "IFCREVOLVEDAREASOLID" => Self::IfcRevolvedAreaSolid,
1917            "IFCREVOLVEDAREASOLIDTAPERED" => Self::IfcRevolvedAreaSolidTapered,
1918            "IFCRIGHTCIRCULARCONE" => Self::IfcRightCircularCone,
1919            "IFCRIGHTCIRCULARCYLINDER" => Self::IfcRightCircularCylinder,
1920            "IFCRIGIDOPERATION" => Self::IfcRigidOperation,
1921            "IFCROAD" => Self::IfcRoad,
1922            "IFCROADPART" => Self::IfcRoadPart,
1923            "IFCROOF" => Self::IfcRoof,
1924            "IFCROOFTYPE" => Self::IfcRoofType,
1925            "IFCROOT" => Self::IfcRoot,
1926            "IFCROUNDEDRECTANGLEPROFILEDEF" => Self::IfcRoundedRectangleProfileDef,
1927            "IFCSIUNIT" => Self::IfcSIUnit,
1928            "IFCSANITARYTERMINAL" => Self::IfcSanitaryTerminal,
1929            "IFCSANITARYTERMINALTYPE" => Self::IfcSanitaryTerminalType,
1930            "IFCSCHEDULINGTIME" => Self::IfcSchedulingTime,
1931            "IFCSEAMCURVE" => Self::IfcSeamCurve,
1932            "IFCSECONDORDERPOLYNOMIALSPIRAL" => Self::IfcSecondOrderPolynomialSpiral,
1933            "IFCSECTIONPROPERTIES" => Self::IfcSectionProperties,
1934            "IFCSECTIONREINFORCEMENTPROPERTIES" => Self::IfcSectionReinforcementProperties,
1935            "IFCSECTIONEDSOLID" => Self::IfcSectionedSolid,
1936            "IFCSECTIONEDSOLIDHORIZONTAL" => Self::IfcSectionedSolidHorizontal,
1937            "IFCSECTIONEDSPINE" => Self::IfcSectionedSpine,
1938            "IFCSECTIONEDSURFACE" => Self::IfcSectionedSurface,
1939            "IFCSEGMENT" => Self::IfcSegment,
1940            "IFCSEGMENTEDREFERENCECURVE" => Self::IfcSegmentedReferenceCurve,
1941            "IFCSENSOR" => Self::IfcSensor,
1942            "IFCSENSORTYPE" => Self::IfcSensorType,
1943            "IFCSEVENTHORDERPOLYNOMIALSPIRAL" => Self::IfcSeventhOrderPolynomialSpiral,
1944            "IFCSHADINGDEVICE" => Self::IfcShadingDevice,
1945            "IFCSHADINGDEVICETYPE" => Self::IfcShadingDeviceType,
1946            "IFCSHAPEASPECT" => Self::IfcShapeAspect,
1947            "IFCSHAPEMODEL" => Self::IfcShapeModel,
1948            "IFCSHAPEREPRESENTATION" => Self::IfcShapeRepresentation,
1949            "IFCSHELLBASEDSURFACEMODEL" => Self::IfcShellBasedSurfaceModel,
1950            "IFCSIGN" => Self::IfcSign,
1951            "IFCSIGNTYPE" => Self::IfcSignType,
1952            "IFCSIGNAL" => Self::IfcSignal,
1953            "IFCSIGNALTYPE" => Self::IfcSignalType,
1954            "IFCSIMPLEPROPERTY" => Self::IfcSimpleProperty,
1955            "IFCSIMPLEPROPERTYTEMPLATE" => Self::IfcSimplePropertyTemplate,
1956            "IFCSINESPIRAL" => Self::IfcSineSpiral,
1957            "IFCSITE" => Self::IfcSite,
1958            "IFCSLAB" => Self::IfcSlab,
1959            "IFCSLABTYPE" => Self::IfcSlabType,
1960            "IFCSLIPPAGECONNECTIONCONDITION" => Self::IfcSlippageConnectionCondition,
1961            "IFCSOLARDEVICE" => Self::IfcSolarDevice,
1962            "IFCSOLARDEVICETYPE" => Self::IfcSolarDeviceType,
1963            "IFCSOLIDMODEL" => Self::IfcSolidModel,
1964            "IFCSPACE" => Self::IfcSpace,
1965            "IFCSPACEHEATER" => Self::IfcSpaceHeater,
1966            "IFCSPACEHEATERTYPE" => Self::IfcSpaceHeaterType,
1967            "IFCSPACETYPE" => Self::IfcSpaceType,
1968            "IFCSPATIALELEMENT" => Self::IfcSpatialElement,
1969            "IFCSPATIALELEMENTTYPE" => Self::IfcSpatialElementType,
1970            "IFCSPATIALSTRUCTUREELEMENT" => Self::IfcSpatialStructureElement,
1971            "IFCSPATIALSTRUCTUREELEMENTTYPE" => Self::IfcSpatialStructureElementType,
1972            "IFCSPATIALZONE" => Self::IfcSpatialZone,
1973            "IFCSPATIALZONETYPE" => Self::IfcSpatialZoneType,
1974            "IFCSPHERE" => Self::IfcSphere,
1975            "IFCSPHERICALSURFACE" => Self::IfcSphericalSurface,
1976            "IFCSPIRAL" => Self::IfcSpiral,
1977            "IFCSTACKTERMINAL" => Self::IfcStackTerminal,
1978            "IFCSTACKTERMINALTYPE" => Self::IfcStackTerminalType,
1979            "IFCSTAIR" => Self::IfcStair,
1980            "IFCSTAIRFLIGHT" => Self::IfcStairFlight,
1981            "IFCSTAIRFLIGHTTYPE" => Self::IfcStairFlightType,
1982            "IFCSTAIRTYPE" => Self::IfcStairType,
1983            "IFCSTRUCTURALACTION" => Self::IfcStructuralAction,
1984            "IFCSTRUCTURALACTIVITY" => Self::IfcStructuralActivity,
1985            "IFCSTRUCTURALANALYSISMODEL" => Self::IfcStructuralAnalysisModel,
1986            "IFCSTRUCTURALCONNECTION" => Self::IfcStructuralConnection,
1987            "IFCSTRUCTURALCONNECTIONCONDITION" => Self::IfcStructuralConnectionCondition,
1988            "IFCSTRUCTURALCURVEACTION" => Self::IfcStructuralCurveAction,
1989            "IFCSTRUCTURALCURVECONNECTION" => Self::IfcStructuralCurveConnection,
1990            "IFCSTRUCTURALCURVEMEMBER" => Self::IfcStructuralCurveMember,
1991            "IFCSTRUCTURALCURVEMEMBERVARYING" => Self::IfcStructuralCurveMemberVarying,
1992            "IFCSTRUCTURALCURVEREACTION" => Self::IfcStructuralCurveReaction,
1993            "IFCSTRUCTURALITEM" => Self::IfcStructuralItem,
1994            "IFCSTRUCTURALLINEARACTION" => Self::IfcStructuralLinearAction,
1995            "IFCSTRUCTURALLOAD" => Self::IfcStructuralLoad,
1996            "IFCSTRUCTURALLOADCASE" => Self::IfcStructuralLoadCase,
1997            "IFCSTRUCTURALLOADCONFIGURATION" => Self::IfcStructuralLoadConfiguration,
1998            "IFCSTRUCTURALLOADGROUP" => Self::IfcStructuralLoadGroup,
1999            "IFCSTRUCTURALLOADLINEARFORCE" => Self::IfcStructuralLoadLinearForce,
2000            "IFCSTRUCTURALLOADORRESULT" => Self::IfcStructuralLoadOrResult,
2001            "IFCSTRUCTURALLOADPLANARFORCE" => Self::IfcStructuralLoadPlanarForce,
2002            "IFCSTRUCTURALLOADSINGLEDISPLACEMENT" => Self::IfcStructuralLoadSingleDisplacement,
2003            "IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION" => {
2004                Self::IfcStructuralLoadSingleDisplacementDistortion
2005            }
2006            "IFCSTRUCTURALLOADSINGLEFORCE" => Self::IfcStructuralLoadSingleForce,
2007            "IFCSTRUCTURALLOADSINGLEFORCEWARPING" => Self::IfcStructuralLoadSingleForceWarping,
2008            "IFCSTRUCTURALLOADSTATIC" => Self::IfcStructuralLoadStatic,
2009            "IFCSTRUCTURALLOADTEMPERATURE" => Self::IfcStructuralLoadTemperature,
2010            "IFCSTRUCTURALMEMBER" => Self::IfcStructuralMember,
2011            "IFCSTRUCTURALPLANARACTION" => Self::IfcStructuralPlanarAction,
2012            "IFCSTRUCTURALPOINTACTION" => Self::IfcStructuralPointAction,
2013            "IFCSTRUCTURALPOINTCONNECTION" => Self::IfcStructuralPointConnection,
2014            "IFCSTRUCTURALPOINTREACTION" => Self::IfcStructuralPointReaction,
2015            "IFCSTRUCTURALREACTION" => Self::IfcStructuralReaction,
2016            "IFCSTRUCTURALRESULTGROUP" => Self::IfcStructuralResultGroup,
2017            "IFCSTRUCTURALSURFACEACTION" => Self::IfcStructuralSurfaceAction,
2018            "IFCSTRUCTURALSURFACECONNECTION" => Self::IfcStructuralSurfaceConnection,
2019            "IFCSTRUCTURALSURFACEMEMBER" => Self::IfcStructuralSurfaceMember,
2020            "IFCSTRUCTURALSURFACEMEMBERVARYING" => Self::IfcStructuralSurfaceMemberVarying,
2021            "IFCSTRUCTURALSURFACEREACTION" => Self::IfcStructuralSurfaceReaction,
2022            "IFCSTYLEMODEL" => Self::IfcStyleModel,
2023            "IFCSTYLEDITEM" => Self::IfcStyledItem,
2024            "IFCSTYLEDREPRESENTATION" => Self::IfcStyledRepresentation,
2025            "IFCSUBCONTRACTRESOURCE" => Self::IfcSubContractResource,
2026            "IFCSUBCONTRACTRESOURCETYPE" => Self::IfcSubContractResourceType,
2027            "IFCSUBEDGE" => Self::IfcSubedge,
2028            "IFCSURFACE" => Self::IfcSurface,
2029            "IFCSURFACECURVE" => Self::IfcSurfaceCurve,
2030            "IFCSURFACECURVESWEPTAREASOLID" => Self::IfcSurfaceCurveSweptAreaSolid,
2031            "IFCSURFACEFEATURE" => Self::IfcSurfaceFeature,
2032            "IFCSURFACEOFLINEAREXTRUSION" => Self::IfcSurfaceOfLinearExtrusion,
2033            "IFCSURFACEOFREVOLUTION" => Self::IfcSurfaceOfRevolution,
2034            "IFCSURFACEREINFORCEMENTAREA" => Self::IfcSurfaceReinforcementArea,
2035            "IFCSURFACESTYLE" => Self::IfcSurfaceStyle,
2036            "IFCSURFACESTYLELIGHTING" => Self::IfcSurfaceStyleLighting,
2037            "IFCSURFACESTYLEREFRACTION" => Self::IfcSurfaceStyleRefraction,
2038            "IFCSURFACESTYLERENDERING" => Self::IfcSurfaceStyleRendering,
2039            "IFCSURFACESTYLESHADING" => Self::IfcSurfaceStyleShading,
2040            "IFCSURFACESTYLEWITHTEXTURES" => Self::IfcSurfaceStyleWithTextures,
2041            "IFCSURFACETEXTURE" => Self::IfcSurfaceTexture,
2042            "IFCSWEPTAREASOLID" => Self::IfcSweptAreaSolid,
2043            "IFCSWEPTDISKSOLID" => Self::IfcSweptDiskSolid,
2044            "IFCSWEPTDISKSOLIDPOLYGONAL" => Self::IfcSweptDiskSolidPolygonal,
2045            "IFCSWEPTSURFACE" => Self::IfcSweptSurface,
2046            "IFCSWITCHINGDEVICE" => Self::IfcSwitchingDevice,
2047            "IFCSWITCHINGDEVICETYPE" => Self::IfcSwitchingDeviceType,
2048            "IFCSYSTEM" => Self::IfcSystem,
2049            "IFCSYSTEMFURNITUREELEMENT" => Self::IfcSystemFurnitureElement,
2050            "IFCSYSTEMFURNITUREELEMENTTYPE" => Self::IfcSystemFurnitureElementType,
2051            "IFCTSHAPEPROFILEDEF" => Self::IfcTShapeProfileDef,
2052            "IFCTABLE" => Self::IfcTable,
2053            "IFCTABLECOLUMN" => Self::IfcTableColumn,
2054            "IFCTABLEROW" => Self::IfcTableRow,
2055            "IFCTANK" => Self::IfcTank,
2056            "IFCTANKTYPE" => Self::IfcTankType,
2057            "IFCTASK" => Self::IfcTask,
2058            "IFCTASKTIME" => Self::IfcTaskTime,
2059            "IFCTASKTIMERECURRING" => Self::IfcTaskTimeRecurring,
2060            "IFCTASKTYPE" => Self::IfcTaskType,
2061            "IFCTELECOMADDRESS" => Self::IfcTelecomAddress,
2062            "IFCTENDON" => Self::IfcTendon,
2063            "IFCTENDONANCHOR" => Self::IfcTendonAnchor,
2064            "IFCTENDONANCHORTYPE" => Self::IfcTendonAnchorType,
2065            "IFCTENDONCONDUIT" => Self::IfcTendonConduit,
2066            "IFCTENDONCONDUITTYPE" => Self::IfcTendonConduitType,
2067            "IFCTENDONTYPE" => Self::IfcTendonType,
2068            "IFCTESSELLATEDFACESET" => Self::IfcTessellatedFaceSet,
2069            "IFCTESSELLATEDITEM" => Self::IfcTessellatedItem,
2070            "IFCTEXTLITERAL" => Self::IfcTextLiteral,
2071            "IFCTEXTLITERALWITHEXTENT" => Self::IfcTextLiteralWithExtent,
2072            "IFCTEXTSTYLE" => Self::IfcTextStyle,
2073            "IFCTEXTSTYLEFONTMODEL" => Self::IfcTextStyleFontModel,
2074            "IFCTEXTSTYLEFORDEFINEDFONT" => Self::IfcTextStyleForDefinedFont,
2075            "IFCTEXTSTYLETEXTMODEL" => Self::IfcTextStyleTextModel,
2076            "IFCTEXTURECOORDINATE" => Self::IfcTextureCoordinate,
2077            "IFCTEXTURECOORDINATEGENERATOR" => Self::IfcTextureCoordinateGenerator,
2078            "IFCTEXTURECOORDINATEINDICES" => Self::IfcTextureCoordinateIndices,
2079            "IFCTEXTURECOORDINATEINDICESWITHVOIDS" => Self::IfcTextureCoordinateIndicesWithVoids,
2080            "IFCTEXTUREMAP" => Self::IfcTextureMap,
2081            "IFCTEXTUREVERTEX" => Self::IfcTextureVertex,
2082            "IFCTEXTUREVERTEXLIST" => Self::IfcTextureVertexList,
2083            "IFCTHIRDORDERPOLYNOMIALSPIRAL" => Self::IfcThirdOrderPolynomialSpiral,
2084            "IFCTIMEPERIOD" => Self::IfcTimePeriod,
2085            "IFCTIMESERIES" => Self::IfcTimeSeries,
2086            "IFCTIMESERIESVALUE" => Self::IfcTimeSeriesValue,
2087            "IFCTOPOLOGICALREPRESENTATIONITEM" => Self::IfcTopologicalRepresentationItem,
2088            "IFCTOPOLOGYREPRESENTATION" => Self::IfcTopologyRepresentation,
2089            "IFCTOROIDALSURFACE" => Self::IfcToroidalSurface,
2090            "IFCTRACKELEMENT" => Self::IfcTrackElement,
2091            "IFCTRACKELEMENTTYPE" => Self::IfcTrackElementType,
2092            "IFCTRANSFORMER" => Self::IfcTransformer,
2093            "IFCTRANSFORMERTYPE" => Self::IfcTransformerType,
2094            "IFCTRANSPORTELEMENT" => Self::IfcTransportElement,
2095            "IFCTRANSPORTELEMENTTYPE" => Self::IfcTransportElementType,
2096            "IFCTRANSPORTATIONDEVICE" => Self::IfcTransportationDevice,
2097            "IFCTRANSPORTATIONDEVICETYPE" => Self::IfcTransportationDeviceType,
2098            "IFCTRAPEZIUMPROFILEDEF" => Self::IfcTrapeziumProfileDef,
2099            "IFCTRIANGULATEDFACESET" => Self::IfcTriangulatedFaceSet,
2100            "IFCTRIANGULATEDIRREGULARNETWORK" => Self::IfcTriangulatedIrregularNetwork,
2101            "IFCTRIMMEDCURVE" => Self::IfcTrimmedCurve,
2102            "IFCTUBEBUNDLE" => Self::IfcTubeBundle,
2103            "IFCTUBEBUNDLETYPE" => Self::IfcTubeBundleType,
2104            "IFCTYPEOBJECT" => Self::IfcTypeObject,
2105            "IFCTYPEPROCESS" => Self::IfcTypeProcess,
2106            "IFCTYPEPRODUCT" => Self::IfcTypeProduct,
2107            "IFCTYPERESOURCE" => Self::IfcTypeResource,
2108            "IFCUSHAPEPROFILEDEF" => Self::IfcUShapeProfileDef,
2109            "IFCUNITASSIGNMENT" => Self::IfcUnitAssignment,
2110            "IFCUNITARYCONTROLELEMENT" => Self::IfcUnitaryControlElement,
2111            "IFCUNITARYCONTROLELEMENTTYPE" => Self::IfcUnitaryControlElementType,
2112            "IFCUNITARYEQUIPMENT" => Self::IfcUnitaryEquipment,
2113            "IFCUNITARYEQUIPMENTTYPE" => Self::IfcUnitaryEquipmentType,
2114            "IFCVALVE" => Self::IfcValve,
2115            "IFCVALVETYPE" => Self::IfcValveType,
2116            "IFCVECTOR" => Self::IfcVector,
2117            "IFCVEHICLE" => Self::IfcVehicle,
2118            "IFCVEHICLETYPE" => Self::IfcVehicleType,
2119            "IFCVERTEX" => Self::IfcVertex,
2120            "IFCVERTEXLOOP" => Self::IfcVertexLoop,
2121            "IFCVERTEXPOINT" => Self::IfcVertexPoint,
2122            "IFCVIBRATIONDAMPER" => Self::IfcVibrationDamper,
2123            "IFCVIBRATIONDAMPERTYPE" => Self::IfcVibrationDamperType,
2124            "IFCVIBRATIONISOLATOR" => Self::IfcVibrationIsolator,
2125            "IFCVIBRATIONISOLATORTYPE" => Self::IfcVibrationIsolatorType,
2126            "IFCVIRTUALELEMENT" => Self::IfcVirtualElement,
2127            "IFCVIRTUALGRIDINTERSECTION" => Self::IfcVirtualGridIntersection,
2128            "IFCVOIDINGFEATURE" => Self::IfcVoidingFeature,
2129            "IFCWALL" => Self::IfcWall,
2130            "IFCWALLSTANDARDCASE" => Self::IfcWallStandardCase,
2131            "IFCWALLTYPE" => Self::IfcWallType,
2132            "IFCWASTETERMINAL" => Self::IfcWasteTerminal,
2133            "IFCWASTETERMINALTYPE" => Self::IfcWasteTerminalType,
2134            "IFCWELLKNOWNTEXT" => Self::IfcWellKnownText,
2135            "IFCWINDOW" => Self::IfcWindow,
2136            "IFCWINDOWLININGPROPERTIES" => Self::IfcWindowLiningProperties,
2137            "IFCWINDOWPANELPROPERTIES" => Self::IfcWindowPanelProperties,
2138            "IFCWINDOWTYPE" => Self::IfcWindowType,
2139            "IFCWORKCALENDAR" => Self::IfcWorkCalendar,
2140            "IFCWORKCONTROL" => Self::IfcWorkControl,
2141            "IFCWORKPLAN" => Self::IfcWorkPlan,
2142            "IFCWORKSCHEDULE" => Self::IfcWorkSchedule,
2143            "IFCWORKTIME" => Self::IfcWorkTime,
2144            "IFCZSHAPEPROFILEDEF" => Self::IfcZShapeProfileDef,
2145            "IFCZONE" => Self::IfcZone,
2146            "IFCBEAMSTANDARDCASE" => Self::IfcBeamStandardCase,
2147            "IFCBUILDINGELEMENT" => Self::IfcBuildingElement,
2148            "IFCBUILDINGELEMENTTYPE" => Self::IfcBuildingElementType,
2149            "IFCCOLUMNSTANDARDCASE" => Self::IfcColumnStandardCase,
2150            "IFCDOORSTANDARDCASE" => Self::IfcDoorStandardCase,
2151            "IFCDOORSTYLE" => Self::IfcDoorStyle,
2152            "IFCMEMBERSTANDARDCASE" => Self::IfcMemberStandardCase,
2153            "IFCOPENINGSTANDARDCASE" => Self::IfcOpeningStandardCase,
2154            "IFCPLATESTANDARDCASE" => Self::IfcPlateStandardCase,
2155            "IFCPRESENTATIONSTYLEASSIGNMENT" => Self::IfcPresentationStyleAssignment,
2156            "IFCPROXY" => Self::IfcProxy,
2157            "IFCSLABELEMENTEDCASE" => Self::IfcSlabElementedCase,
2158            "IFCSLABSTANDARDCASE" => Self::IfcSlabStandardCase,
2159            "IFCWALLELEMENTEDCASE" => Self::IfcWallElementedCase,
2160            "IFCWINDOWSTANDARDCASE" => Self::IfcWindowStandardCase,
2161            "IFCWINDOWSTYLE" => Self::IfcWindowStyle,
2162            "IFC2DCOMPOSITECURVE" => Self::Ifc2DCompositeCurve,
2163            "IFCANGULARDIMENSION" => Self::IfcAngularDimension,
2164            "IFCANNOTATIONCURVEOCCURRENCE" => Self::IfcAnnotationCurveOccurrence,
2165            "IFCANNOTATIONFILLAREAOCCURRENCE" => Self::IfcAnnotationFillAreaOccurrence,
2166            "IFCANNOTATIONOCCURRENCE" => Self::IfcAnnotationOccurrence,
2167            "IFCANNOTATIONSURFACE" => Self::IfcAnnotationSurface,
2168            "IFCANNOTATIONSURFACEOCCURRENCE" => Self::IfcAnnotationSurfaceOccurrence,
2169            "IFCANNOTATIONSYMBOLOCCURRENCE" => Self::IfcAnnotationSymbolOccurrence,
2170            "IFCANNOTATIONTEXTOCCURRENCE" => Self::IfcAnnotationTextOccurrence,
2171            "IFCAPPLIEDVALUERELATIONSHIP" => Self::IfcAppliedValueRelationship,
2172            "IFCAPPROVALACTORRELATIONSHIP" => Self::IfcApprovalActorRelationship,
2173            "IFCAPPROVALPROPERTYRELATIONSHIP" => Self::IfcApprovalPropertyRelationship,
2174            "IFCBEZIERCURVE" => Self::IfcBezierCurve,
2175            "IFCBUILDINGELEMENTCOMPONENT" => Self::IfcBuildingElementComponent,
2176            "IFCCALENDARDATE" => Self::IfcCalendarDate,
2177            "IFCCHAMFEREDGEFEATURE" => Self::IfcChamferEdgeFeature,
2178            "IFCCLASSIFICATIONITEM" => Self::IfcClassificationItem,
2179            "IFCCLASSIFICATIONITEMRELATIONSHIP" => Self::IfcClassificationItemRelationship,
2180            "IFCCLASSIFICATIONNOTATION" => Self::IfcClassificationNotation,
2181            "IFCCLASSIFICATIONNOTATIONFACET" => Self::IfcClassificationNotationFacet,
2182            "IFCCONDITION" => Self::IfcCondition,
2183            "IFCCONDITIONCRITERION" => Self::IfcConditionCriterion,
2184            "IFCCONNECTIONPORTGEOMETRY" => Self::IfcConnectionPortGeometry,
2185            "IFCCONSTRAINTAGGREGATIONRELATIONSHIP" => Self::IfcConstraintAggregationRelationship,
2186            "IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP" => {
2187                Self::IfcConstraintClassificationRelationship
2188            }
2189            "IFCCONSTRAINTRELATIONSHIP" => Self::IfcConstraintRelationship,
2190            "IFCCOORDINATEDUNIVERSALTIMEOFFSET" => Self::IfcCoordinatedUniversalTimeOffset,
2191            "IFCCRANERAILASHAPEPROFILEDEF" => Self::IfcCraneRailAShapeProfileDef,
2192            "IFCCRANERAILFSHAPEPROFILEDEF" => Self::IfcCraneRailFShapeProfileDef,
2193            "IFCDATEANDTIME" => Self::IfcDateAndTime,
2194            "IFCDEFINEDSYMBOL" => Self::IfcDefinedSymbol,
2195            "IFCDIAMETERDIMENSION" => Self::IfcDiameterDimension,
2196            "IFCDIMENSIONCALLOUTRELATIONSHIP" => Self::IfcDimensionCalloutRelationship,
2197            "IFCDIMENSIONCURVE" => Self::IfcDimensionCurve,
2198            "IFCDIMENSIONCURVEDIRECTEDCALLOUT" => Self::IfcDimensionCurveDirectedCallout,
2199            "IFCDIMENSIONCURVETERMINATOR" => Self::IfcDimensionCurveTerminator,
2200            "IFCDIMENSIONPAIR" => Self::IfcDimensionPair,
2201            "IFCDOCUMENTELECTRONICFORMAT" => Self::IfcDocumentElectronicFormat,
2202            "IFCDRAUGHTINGCALLOUT" => Self::IfcDraughtingCallout,
2203            "IFCDRAUGHTINGCALLOUTRELATIONSHIP" => Self::IfcDraughtingCalloutRelationship,
2204            "IFCDRAUGHTINGPREDEFINEDTEXTFONT" => Self::IfcDraughtingPreDefinedTextFont,
2205            "IFCEDGEFEATURE" => Self::IfcEdgeFeature,
2206            "IFCELECTRICDISTRIBUTIONPOINT" => Self::IfcElectricDistributionPoint,
2207            "IFCELECTRICHEATERTYPE" => Self::IfcElectricHeaterType,
2208            "IFCELECTRICALBASEPROPERTIES" => Self::IfcElectricalBaseProperties,
2209            "IFCELECTRICALCIRCUIT" => Self::IfcElectricalCircuit,
2210            "IFCELECTRICALELEMENT" => Self::IfcElectricalElement,
2211            "IFCENERGYPROPERTIES" => Self::IfcEnergyProperties,
2212            "IFCENVIRONMENTALIMPACTVALUE" => Self::IfcEnvironmentalImpactValue,
2213            "IFCEQUIPMENTELEMENT" => Self::IfcEquipmentElement,
2214            "IFCEQUIPMENTSTANDARD" => Self::IfcEquipmentStandard,
2215            "IFCEXTENDEDMATERIALPROPERTIES" => Self::IfcExtendedMaterialProperties,
2216            "IFCEXTERNALLYDEFINEDSYMBOL" => Self::IfcExternallyDefinedSymbol,
2217            "IFCFILLAREASTYLETILESYMBOLWITHSTYLE" => Self::IfcFillAreaStyleTileSymbolWithStyle,
2218            "IFCFLUIDFLOWPROPERTIES" => Self::IfcFluidFlowProperties,
2219            "IFCFUELPROPERTIES" => Self::IfcFuelProperties,
2220            "IFCFURNITURESTANDARD" => Self::IfcFurnitureStandard,
2221            "IFCGASTERMINALTYPE" => Self::IfcGasTerminalType,
2222            "IFCGENERALMATERIALPROPERTIES" => Self::IfcGeneralMaterialProperties,
2223            "IFCGENERALPROFILEPROPERTIES" => Self::IfcGeneralProfileProperties,
2224            "IFCHYGROSCOPICMATERIALPROPERTIES" => Self::IfcHygroscopicMaterialProperties,
2225            "IFCLINEARDIMENSION" => Self::IfcLinearDimension,
2226            "IFCLOCALTIME" => Self::IfcLocalTime,
2227            "IFCMECHANICALCONCRETEMATERIALPROPERTIES" => {
2228                Self::IfcMechanicalConcreteMaterialProperties
2229            }
2230            "IFCMECHANICALMATERIALPROPERTIES" => Self::IfcMechanicalMaterialProperties,
2231            "IFCMECHANICALSTEELMATERIALPROPERTIES" => Self::IfcMechanicalSteelMaterialProperties,
2232            "IFCMOVE" => Self::IfcMove,
2233            "IFCONEDIRECTIONREPEATFACTOR" => Self::IfcOneDirectionRepeatFactor,
2234            "IFCOPTICALMATERIALPROPERTIES" => Self::IfcOpticalMaterialProperties,
2235            "IFCORDERACTION" => Self::IfcOrderAction,
2236            "IFCPREDEFINEDDIMENSIONSYMBOL" => Self::IfcPreDefinedDimensionSymbol,
2237            "IFCPREDEFINEDPOINTMARKERSYMBOL" => Self::IfcPreDefinedPointMarkerSymbol,
2238            "IFCPREDEFINEDSYMBOL" => Self::IfcPreDefinedSymbol,
2239            "IFCPREDEFINEDTERMINATORSYMBOL" => Self::IfcPreDefinedTerminatorSymbol,
2240            "IFCPRODUCTSOFCOMBUSTIONPROPERTIES" => Self::IfcProductsOfCombustionProperties,
2241            "IFCPROJECTORDERRECORD" => Self::IfcProjectOrderRecord,
2242            "IFCPROJECTIONCURVE" => Self::IfcProjectionCurve,
2243            "IFCPROPERTYCONSTRAINTRELATIONSHIP" => Self::IfcPropertyConstraintRelationship,
2244            "IFCRADIUSDIMENSION" => Self::IfcRadiusDimension,
2245            "IFCRATIONALBEZIERCURVE" => Self::IfcRationalBezierCurve,
2246            "IFCREFERENCESVALUEDOCUMENT" => Self::IfcReferencesValueDocument,
2247            "IFCRELASSIGNSTASKS" => Self::IfcRelAssignsTasks,
2248            "IFCRELASSIGNSTOPROJECTORDER" => Self::IfcRelAssignsToProjectOrder,
2249            "IFCRELASSOCIATESAPPLIEDVALUE" => Self::IfcRelAssociatesAppliedValue,
2250            "IFCRELASSOCIATESPROFILEPROPERTIES" => Self::IfcRelAssociatesProfileProperties,
2251            "IFCRELCONNECTSSTRUCTURALELEMENT" => Self::IfcRelConnectsStructuralElement,
2252            "IFCRELINTERACTIONREQUIREMENTS" => Self::IfcRelInteractionRequirements,
2253            "IFCRELOCCUPIESSPACES" => Self::IfcRelOccupiesSpaces,
2254            "IFCRELOVERRIDESPROPERTIES" => Self::IfcRelOverridesProperties,
2255            "IFCRELSCHEDULESCOSTITEMS" => Self::IfcRelSchedulesCostItems,
2256            "IFCRELAXATION" => Self::IfcRelaxation,
2257            "IFCRIBPLATEPROFILEPROPERTIES" => Self::IfcRibPlateProfileProperties,
2258            "IFCROUNDEDEDGEFEATURE" => Self::IfcRoundedEdgeFeature,
2259            "IFCSCHEDULETIMECONTROL" => Self::IfcScheduleTimeControl,
2260            "IFCSERVICELIFE" => Self::IfcServiceLife,
2261            "IFCSERVICELIFEFACTOR" => Self::IfcServiceLifeFactor,
2262            "IFCSOUNDPROPERTIES" => Self::IfcSoundProperties,
2263            "IFCSOUNDVALUE" => Self::IfcSoundValue,
2264            "IFCSPACEPROGRAM" => Self::IfcSpaceProgram,
2265            "IFCSPACETHERMALLOADPROPERTIES" => Self::IfcSpaceThermalLoadProperties,
2266            "IFCSTRUCTURALLINEARACTIONVARYING" => Self::IfcStructuralLinearActionVarying,
2267            "IFCSTRUCTURALPLANARACTIONVARYING" => Self::IfcStructuralPlanarActionVarying,
2268            "IFCSTRUCTURALPROFILEPROPERTIES" => Self::IfcStructuralProfileProperties,
2269            "IFCSTRUCTURALSTEELPROFILEPROPERTIES" => Self::IfcStructuralSteelProfileProperties,
2270            "IFCSTRUCTUREDDIMENSIONCALLOUT" => Self::IfcStructuredDimensionCallout,
2271            "IFCSYMBOLSTYLE" => Self::IfcSymbolStyle,
2272            "IFCTERMINATORSYMBOL" => Self::IfcTerminatorSymbol,
2273            "IFCTEXTSTYLEWITHBOXCHARACTERISTICS" => Self::IfcTextStyleWithBoxCharacteristics,
2274            "IFCTHERMALMATERIALPROPERTIES" => Self::IfcThermalMaterialProperties,
2275            "IFCTIMESERIESREFERENCERELATIONSHIP" => Self::IfcTimeSeriesReferenceRelationship,
2276            "IFCTIMESERIESSCHEDULE" => Self::IfcTimeSeriesSchedule,
2277            "IFCTWODIRECTIONREPEATFACTOR" => Self::IfcTwoDirectionRepeatFactor,
2278            "IFCVERTEXBASEDTEXTUREMAP" => Self::IfcVertexBasedTextureMap,
2279            "IFCWATERPROPERTIES" => Self::IfcWaterProperties,
2280            "IFCCIRCULARARCSEGMENT2D" => Self::IfcCircularArcSegment2D,
2281            "IFCCURVESEGMENT2D" => Self::IfcCurveSegment2D,
2282            "IFCDISTANCEEXPRESSION" => Self::IfcDistanceExpression,
2283            "IFCLINESEGMENT2D" => Self::IfcLineSegment2D,
2284            "IFCORIENTATIONEXPRESSION" => Self::IfcOrientationExpression,
2285            "IFCTRANSITIONCURVESEGMENT2D" => Self::IfcTransitionCurveSegment2D,
2286            "IFCALIGNMENT2DHORIZONTAL" => Self::IfcAlignment2DHorizontal,
2287            "IFCALIGNMENT2DHORIZONTALSEGMENT" => Self::IfcAlignment2DHorizontalSegment,
2288            "IFCALIGNMENT2DSEGMENT" => Self::IfcAlignment2DSegment,
2289            "IFCALIGNMENT2DVERSEGCIRCULARARC" => Self::IfcAlignment2DVerSegCircularArc,
2290            "IFCALIGNMENT2DVERTICALSEGMENT" => Self::IfcAlignment2DVerticalSegment,
2291            "IFCALIGNMENT2DVERSEGLINE" => Self::IfcAlignment2DVerSegLine,
2292            "IFCALIGNMENT2DVERSEGPARABOLICARC" => Self::IfcAlignment2DVerSegParabolicArc,
2293            "IFCALIGNMENT2DVERTICAL" => Self::IfcAlignment2DVertical,
2294            "IFCALIGNMENTCURVE" => Self::IfcAlignmentCurve,
2295            _ => return None,
2296        })
2297    }
2298
2299    /// Parse a known schema type from a CRC32 type ID.
2300    ///
2301    /// Unknown keywords cannot be reconstructed from a hash.
2302    pub fn from_id(id: u32) -> Option<Self> {
2303        match id {
2304            3821786052 => Some(Self::IfcActionRequest),
2305            2296667514 => Some(Self::IfcActor),
2306            3630933823 => Some(Self::IfcActorRole),
2307            4288193352 => Some(Self::IfcActuator),
2308            2874132201 => Some(Self::IfcActuatorType),
2309            618182010 => Some(Self::IfcAddress),
2310            1635779807 => Some(Self::IfcAdvancedBrep),
2311            2603310189 => Some(Self::IfcAdvancedBrepWithVoids),
2312            3406155212 => Some(Self::IfcAdvancedFace),
2313            1634111441 => Some(Self::IfcAirTerminal),
2314            177149247 => Some(Self::IfcAirTerminalBox),
2315            1411407467 => Some(Self::IfcAirTerminalBoxType),
2316            3352864051 => Some(Self::IfcAirTerminalType),
2317            2056796094 => Some(Self::IfcAirToAirHeatRecovery),
2318            1871374353 => Some(Self::IfcAirToAirHeatRecoveryType),
2319            3087945054 => Some(Self::IfcAlarm),
2320            3001207471 => Some(Self::IfcAlarmType),
2321            325726236 => Some(Self::IfcAlignment),
2322            4266260250 => Some(Self::IfcAlignmentCant),
2323            3752311538 => Some(Self::IfcAlignmentCantSegment),
2324            1545765605 => Some(Self::IfcAlignmentHorizontal),
2325            536804194 => Some(Self::IfcAlignmentHorizontalSegment),
2326            2879124712 => Some(Self::IfcAlignmentParameterSegment),
2327            317615605 => Some(Self::IfcAlignmentSegment),
2328            1662888072 => Some(Self::IfcAlignmentVertical),
2329            3633395639 => Some(Self::IfcAlignmentVerticalSegment),
2330            1674181508 => Some(Self::IfcAnnotation),
2331            669184980 => Some(Self::IfcAnnotationFillArea),
2332            639542469 => Some(Self::IfcApplication),
2333            411424972 => Some(Self::IfcAppliedValue),
2334            130549933 => Some(Self::IfcApproval),
2335            3869604511 => Some(Self::IfcApprovalRelationship),
2336            3798115385 => Some(Self::IfcArbitraryClosedProfileDef),
2337            1310608509 => Some(Self::IfcArbitraryOpenProfileDef),
2338            2705031697 => Some(Self::IfcArbitraryProfileDefWithVoids),
2339            3460190687 => Some(Self::IfcAsset),
2340            3207858831 => Some(Self::IfcAsymmetricIShapeProfileDef),
2341            277319702 => Some(Self::IfcAudioVisualAppliance),
2342            1532957894 => Some(Self::IfcAudioVisualApplianceType),
2343            4261334040 => Some(Self::IfcAxis1Placement),
2344            3125803723 => Some(Self::IfcAxis2Placement2D),
2345            2740243338 => Some(Self::IfcAxis2Placement3D),
2346            3425423356 => Some(Self::IfcAxis2PlacementLinear),
2347            1967976161 => Some(Self::IfcBSplineCurve),
2348            2461110595 => Some(Self::IfcBSplineCurveWithKnots),
2349            2887950389 => Some(Self::IfcBSplineSurface),
2350            167062518 => Some(Self::IfcBSplineSurfaceWithKnots),
2351            753842376 => Some(Self::IfcBeam),
2352            819618141 => Some(Self::IfcBeamType),
2353            4196446775 => Some(Self::IfcBearing),
2354            3649138523 => Some(Self::IfcBearingType),
2355            616511568 => Some(Self::IfcBlobTexture),
2356            1334484129 => Some(Self::IfcBlock),
2357            32344328 => Some(Self::IfcBoiler),
2358            231477066 => Some(Self::IfcBoilerType),
2359            3649129432 => Some(Self::IfcBooleanClippingResult),
2360            2736907675 => Some(Self::IfcBooleanResult),
2361            3314249567 => Some(Self::IfcBorehole),
2362            4037036970 => Some(Self::IfcBoundaryCondition),
2363            1136057603 => Some(Self::IfcBoundaryCurve),
2364            1560379544 => Some(Self::IfcBoundaryEdgeCondition),
2365            3367102660 => Some(Self::IfcBoundaryFaceCondition),
2366            1387855156 => Some(Self::IfcBoundaryNodeCondition),
2367            2069777674 => Some(Self::IfcBoundaryNodeConditionWarping),
2368            1260505505 => Some(Self::IfcBoundedCurve),
2369            4182860854 => Some(Self::IfcBoundedSurface),
2370            2581212453 => Some(Self::IfcBoundingBox),
2371            2713105998 => Some(Self::IfcBoxedHalfSpace),
2372            644574406 => Some(Self::IfcBridge),
2373            963979645 => Some(Self::IfcBridgePart),
2374            4031249490 => Some(Self::IfcBuilding),
2375            2979338954 => Some(Self::IfcBuildingElementPart),
2376            39481116 => Some(Self::IfcBuildingElementPartType),
2377            1095909175 => Some(Self::IfcBuildingElementProxy),
2378            1909888760 => Some(Self::IfcBuildingElementProxyType),
2379            3124254112 => Some(Self::IfcBuildingStorey),
2380            1177604601 => Some(Self::IfcBuildingSystem),
2381            1876633798 => Some(Self::IfcBuiltElement),
2382            1626504194 => Some(Self::IfcBuiltElementType),
2383            3862327254 => Some(Self::IfcBuiltSystem),
2384            2938176219 => Some(Self::IfcBurner),
2385            2188180465 => Some(Self::IfcBurnerType),
2386            2898889636 => Some(Self::IfcCShapeProfileDef),
2387            635142910 => Some(Self::IfcCableCarrierFitting),
2388            395041908 => Some(Self::IfcCableCarrierFittingType),
2389            3758799889 => Some(Self::IfcCableCarrierSegment),
2390            3293546465 => Some(Self::IfcCableCarrierSegmentType),
2391            1051757585 => Some(Self::IfcCableFitting),
2392            2674252688 => Some(Self::IfcCableFittingType),
2393            4217484030 => Some(Self::IfcCableSegment),
2394            1285652485 => Some(Self::IfcCableSegmentType),
2395            3999819293 => Some(Self::IfcCaissonFoundation),
2396            3203706013 => Some(Self::IfcCaissonFoundationType),
2397            1123145078 => Some(Self::IfcCartesianPoint),
2398            574549367 => Some(Self::IfcCartesianPointList),
2399            1675464909 => Some(Self::IfcCartesianPointList2D),
2400            2059837836 => Some(Self::IfcCartesianPointList3D),
2401            59481748 => Some(Self::IfcCartesianTransformationOperator),
2402            3749851601 => Some(Self::IfcCartesianTransformationOperator2D),
2403            3486308946 => Some(Self::IfcCartesianTransformationOperator2DnonUniform),
2404            3331915920 => Some(Self::IfcCartesianTransformationOperator3D),
2405            1416205885 => Some(Self::IfcCartesianTransformationOperator3DnonUniform),
2406            3150382593 => Some(Self::IfcCenterLineProfileDef),
2407            3902619387 => Some(Self::IfcChiller),
2408            2951183804 => Some(Self::IfcChillerType),
2409            3296154744 => Some(Self::IfcChimney),
2410            2197970202 => Some(Self::IfcChimneyType),
2411            2611217952 => Some(Self::IfcCircle),
2412            2937912522 => Some(Self::IfcCircleHollowProfileDef),
2413            1383045692 => Some(Self::IfcCircleProfileDef),
2414            1677625105 => Some(Self::IfcCivilElement),
2415            3893394355 => Some(Self::IfcCivilElementType),
2416            747523909 => Some(Self::IfcClassification),
2417            647927063 => Some(Self::IfcClassificationReference),
2418            2205249479 => Some(Self::IfcClosedShell),
2419            3497074424 => Some(Self::IfcClothoid),
2420            639361253 => Some(Self::IfcCoil),
2421            2301859152 => Some(Self::IfcCoilType),
2422            776857604 => Some(Self::IfcColourRgb),
2423            3285139300 => Some(Self::IfcColourRgbList),
2424            3264961684 => Some(Self::IfcColourSpecification),
2425            843113511 => Some(Self::IfcColumn),
2426            300633059 => Some(Self::IfcColumnType),
2427            3221913625 => Some(Self::IfcCommunicationsAppliance),
2428            400855858 => Some(Self::IfcCommunicationsApplianceType),
2429            2542286263 => Some(Self::IfcComplexProperty),
2430            3875453745 => Some(Self::IfcComplexPropertyTemplate),
2431            3732776249 => Some(Self::IfcCompositeCurve),
2432            15328376 => Some(Self::IfcCompositeCurveOnSurface),
2433            2485617015 => Some(Self::IfcCompositeCurveSegment),
2434            1485152156 => Some(Self::IfcCompositeProfileDef),
2435            3571504051 => Some(Self::IfcCompressor),
2436            3850581409 => Some(Self::IfcCompressorType),
2437            2272882330 => Some(Self::IfcCondenser),
2438            2816379211 => Some(Self::IfcCondenserType),
2439            2510884976 => Some(Self::IfcConic),
2440            370225590 => Some(Self::IfcConnectedFaceSet),
2441            1981873012 => Some(Self::IfcConnectionCurveGeometry),
2442            2859738748 => Some(Self::IfcConnectionGeometry),
2443            45288368 => Some(Self::IfcConnectionPointEccentricity),
2444            2614616156 => Some(Self::IfcConnectionPointGeometry),
2445            2732653382 => Some(Self::IfcConnectionSurfaceGeometry),
2446            775493141 => Some(Self::IfcConnectionVolumeGeometry),
2447            1959218052 => Some(Self::IfcConstraint),
2448            3898045240 => Some(Self::IfcConstructionEquipmentResource),
2449            2185764099 => Some(Self::IfcConstructionEquipmentResourceType),
2450            1060000209 => Some(Self::IfcConstructionMaterialResource),
2451            4105962743 => Some(Self::IfcConstructionMaterialResourceType),
2452            488727124 => Some(Self::IfcConstructionProductResource),
2453            1525564444 => Some(Self::IfcConstructionProductResourceType),
2454            2559216714 => Some(Self::IfcConstructionResource),
2455            2574617495 => Some(Self::IfcConstructionResourceType),
2456            3419103109 => Some(Self::IfcContext),
2457            3050246964 => Some(Self::IfcContextDependentUnit),
2458            3293443760 => Some(Self::IfcControl),
2459            25142252 => Some(Self::IfcController),
2460            578613899 => Some(Self::IfcControllerType),
2461            2889183280 => Some(Self::IfcConversionBasedUnit),
2462            2713554722 => Some(Self::IfcConversionBasedUnitWithOffset),
2463            3460952963 => Some(Self::IfcConveyorSegment),
2464            2940368186 => Some(Self::IfcConveyorSegmentType),
2465            4136498852 => Some(Self::IfcCooledBeam),
2466            335055490 => Some(Self::IfcCooledBeamType),
2467            3640358203 => Some(Self::IfcCoolingTower),
2468            2954562838 => Some(Self::IfcCoolingTowerType),
2469            1785450214 => Some(Self::IfcCoordinateOperation),
2470            1466758467 => Some(Self::IfcCoordinateReferenceSystem),
2471            2000195564 => Some(Self::IfcCosineSpiral),
2472            3895139033 => Some(Self::IfcCostItem),
2473            1419761937 => Some(Self::IfcCostSchedule),
2474            602808272 => Some(Self::IfcCostValue),
2475            1502416096 => Some(Self::IfcCourse),
2476            4189326743 => Some(Self::IfcCourseType),
2477            1973544240 => Some(Self::IfcCovering),
2478            1916426348 => Some(Self::IfcCoveringType),
2479            3295246426 => Some(Self::IfcCrewResource),
2480            1815067380 => Some(Self::IfcCrewResourceType),
2481            2506170314 => Some(Self::IfcCsgPrimitive3D),
2482            2147822146 => Some(Self::IfcCsgSolid),
2483            539742890 => Some(Self::IfcCurrencyRelationship),
2484            3495092785 => Some(Self::IfcCurtainWall),
2485            1457835157 => Some(Self::IfcCurtainWallType),
2486            2601014836 => Some(Self::IfcCurve),
2487            2827736869 => Some(Self::IfcCurveBoundedPlane),
2488            2629017746 => Some(Self::IfcCurveBoundedSurface),
2489            4212018352 => Some(Self::IfcCurveSegment),
2490            3800577675 => Some(Self::IfcCurveStyle),
2491            1105321065 => Some(Self::IfcCurveStyleFont),
2492            2367409068 => Some(Self::IfcCurveStyleFontAndScaling),
2493            3510044353 => Some(Self::IfcCurveStyleFontPattern),
2494            1213902940 => Some(Self::IfcCylindricalSurface),
2495            4074379575 => Some(Self::IfcDamper),
2496            3961806047 => Some(Self::IfcDamperType),
2497            3426335179 => Some(Self::IfcDeepFoundation),
2498            1306400036 => Some(Self::IfcDeepFoundationType),
2499            3632507154 => Some(Self::IfcDerivedProfileDef),
2500            1765591967 => Some(Self::IfcDerivedUnit),
2501            1045800335 => Some(Self::IfcDerivedUnitElement),
2502            2949456006 => Some(Self::IfcDimensionalExponents),
2503            32440307 => Some(Self::IfcDirection),
2504            593015953 => Some(Self::IfcDirectrixCurveSweptAreaSolid),
2505            4234616927 => Some(Self::IfcDirectrixDerivedReferenceSweptAreaSolid),
2506            1335981549 => Some(Self::IfcDiscreteAccessory),
2507            2635815018 => Some(Self::IfcDiscreteAccessoryType),
2508            3693000487 => Some(Self::IfcDistributionBoard),
2509            479945903 => Some(Self::IfcDistributionBoardType),
2510            1052013943 => Some(Self::IfcDistributionChamberElement),
2511            1599208980 => Some(Self::IfcDistributionChamberElementType),
2512            562808652 => Some(Self::IfcDistributionCircuit),
2513            1062813311 => Some(Self::IfcDistributionControlElement),
2514            2063403501 => Some(Self::IfcDistributionControlElementType),
2515            1945004755 => Some(Self::IfcDistributionElement),
2516            3256556792 => Some(Self::IfcDistributionElementType),
2517            3040386961 => Some(Self::IfcDistributionFlowElement),
2518            3849074793 => Some(Self::IfcDistributionFlowElementType),
2519            3041715199 => Some(Self::IfcDistributionPort),
2520            3205830791 => Some(Self::IfcDistributionSystem),
2521            1154170062 => Some(Self::IfcDocumentInformation),
2522            770865208 => Some(Self::IfcDocumentInformationRelationship),
2523            3732053477 => Some(Self::IfcDocumentReference),
2524            395920057 => Some(Self::IfcDoor),
2525            2963535650 => Some(Self::IfcDoorLiningProperties),
2526            1714330368 => Some(Self::IfcDoorPanelProperties),
2527            2323601079 => Some(Self::IfcDoorType),
2528            445594917 => Some(Self::IfcDraughtingPreDefinedColour),
2529            4006246654 => Some(Self::IfcDraughtingPreDefinedCurveFont),
2530            342316401 => Some(Self::IfcDuctFitting),
2531            869906466 => Some(Self::IfcDuctFittingType),
2532            3518393246 => Some(Self::IfcDuctSegment),
2533            3760055223 => Some(Self::IfcDuctSegmentType),
2534            1360408905 => Some(Self::IfcDuctSilencer),
2535            2030761528 => Some(Self::IfcDuctSilencerType),
2536            3071239417 => Some(Self::IfcEarthworksCut),
2537            1077100507 => Some(Self::IfcEarthworksElement),
2538            3376911765 => Some(Self::IfcEarthworksFill),
2539            3900360178 => Some(Self::IfcEdge),
2540            476780140 => Some(Self::IfcEdgeCurve),
2541            1472233963 => Some(Self::IfcEdgeLoop),
2542            1904799276 => Some(Self::IfcElectricAppliance),
2543            663422040 => Some(Self::IfcElectricApplianceType),
2544            862014818 => Some(Self::IfcElectricDistributionBoard),
2545            2417008758 => Some(Self::IfcElectricDistributionBoardType),
2546            3310460725 => Some(Self::IfcElectricFlowStorageDevice),
2547            3277789161 => Some(Self::IfcElectricFlowStorageDeviceType),
2548            24726584 => Some(Self::IfcElectricFlowTreatmentDevice),
2549            2142170206 => Some(Self::IfcElectricFlowTreatmentDeviceType),
2550            264262732 => Some(Self::IfcElectricGenerator),
2551            1534661035 => Some(Self::IfcElectricGeneratorType),
2552            402227799 => Some(Self::IfcElectricMotor),
2553            1217240411 => Some(Self::IfcElectricMotorType),
2554            1003880860 => Some(Self::IfcElectricTimeControl),
2555            712377611 => Some(Self::IfcElectricTimeControlType),
2556            1758889154 => Some(Self::IfcElement),
2557            4123344466 => Some(Self::IfcElementAssembly),
2558            2397081782 => Some(Self::IfcElementAssemblyType),
2559            1623761950 => Some(Self::IfcElementComponent),
2560            2590856083 => Some(Self::IfcElementComponentType),
2561            1883228015 => Some(Self::IfcElementQuantity),
2562            339256511 => Some(Self::IfcElementType),
2563            2777663545 => Some(Self::IfcElementarySurface),
2564            1704287377 => Some(Self::IfcEllipse),
2565            2835456948 => Some(Self::IfcEllipseProfileDef),
2566            1658829314 => Some(Self::IfcEnergyConversionDevice),
2567            2107101300 => Some(Self::IfcEnergyConversionDeviceType),
2568            2814081492 => Some(Self::IfcEngine),
2569            132023988 => Some(Self::IfcEngineType),
2570            3747195512 => Some(Self::IfcEvaporativeCooler),
2571            3174744832 => Some(Self::IfcEvaporativeCoolerType),
2572            484807127 => Some(Self::IfcEvaporator),
2573            3390157468 => Some(Self::IfcEvaporatorType),
2574            4148101412 => Some(Self::IfcEvent),
2575            211053100 => Some(Self::IfcEventTime),
2576            4024345920 => Some(Self::IfcEventType),
2577            297599258 => Some(Self::IfcExtendedProperties),
2578            4294318154 => Some(Self::IfcExternalInformation),
2579            3200245327 => Some(Self::IfcExternalReference),
2580            1437805879 => Some(Self::IfcExternalReferenceRelationship),
2581            1209101575 => Some(Self::IfcExternalSpatialElement),
2582            2853485674 => Some(Self::IfcExternalSpatialStructureElement),
2583            2242383968 => Some(Self::IfcExternallyDefinedHatchStyle),
2584            1040185647 => Some(Self::IfcExternallyDefinedSurfaceStyle),
2585            3548104201 => Some(Self::IfcExternallyDefinedTextFont),
2586            477187591 => Some(Self::IfcExtrudedAreaSolid),
2587            2804161546 => Some(Self::IfcExtrudedAreaSolidTapered),
2588            2556980723 => Some(Self::IfcFace),
2589            2047409740 => Some(Self::IfcFaceBasedSurfaceModel),
2590            1809719519 => Some(Self::IfcFaceBound),
2591            803316827 => Some(Self::IfcFaceOuterBound),
2592            3008276851 => Some(Self::IfcFaceSurface),
2593            807026263 => Some(Self::IfcFacetedBrep),
2594            3737207727 => Some(Self::IfcFacetedBrepWithVoids),
2595            24185140 => Some(Self::IfcFacility),
2596            1310830890 => Some(Self::IfcFacilityPart),
2597            4228831410 => Some(Self::IfcFacilityPartCommon),
2598            4219587988 => Some(Self::IfcFailureConnectionCondition),
2599            3415622556 => Some(Self::IfcFan),
2600            346874300 => Some(Self::IfcFanType),
2601            647756555 => Some(Self::IfcFastener),
2602            2489546625 => Some(Self::IfcFastenerType),
2603            2827207264 => Some(Self::IfcFeatureElement),
2604            2143335405 => Some(Self::IfcFeatureElementAddition),
2605            1287392070 => Some(Self::IfcFeatureElementSubtraction),
2606            738692330 => Some(Self::IfcFillAreaStyle),
2607            374418227 => Some(Self::IfcFillAreaStyleHatching),
2608            315944413 => Some(Self::IfcFillAreaStyleTiles),
2609            819412036 => Some(Self::IfcFilter),
2610            1810631287 => Some(Self::IfcFilterType),
2611            1426591983 => Some(Self::IfcFireSuppressionTerminal),
2612            4222183408 => Some(Self::IfcFireSuppressionTerminalType),
2613            2652556860 => Some(Self::IfcFixedReferenceSweptAreaSolid),
2614            2058353004 => Some(Self::IfcFlowController),
2615            3907093117 => Some(Self::IfcFlowControllerType),
2616            4278956645 => Some(Self::IfcFlowFitting),
2617            3198132628 => Some(Self::IfcFlowFittingType),
2618            182646315 => Some(Self::IfcFlowInstrument),
2619            4037862832 => Some(Self::IfcFlowInstrumentType),
2620            2188021234 => Some(Self::IfcFlowMeter),
2621            3815607619 => Some(Self::IfcFlowMeterType),
2622            3132237377 => Some(Self::IfcFlowMovingDevice),
2623            1482959167 => Some(Self::IfcFlowMovingDeviceType),
2624            987401354 => Some(Self::IfcFlowSegment),
2625            1834744321 => Some(Self::IfcFlowSegmentType),
2626            707683696 => Some(Self::IfcFlowStorageDevice),
2627            1339347760 => Some(Self::IfcFlowStorageDeviceType),
2628            2223149337 => Some(Self::IfcFlowTerminal),
2629            2297155007 => Some(Self::IfcFlowTerminalType),
2630            3508470533 => Some(Self::IfcFlowTreatmentDevice),
2631            3009222698 => Some(Self::IfcFlowTreatmentDeviceType),
2632            900683007 => Some(Self::IfcFooting),
2633            1893162501 => Some(Self::IfcFootingType),
2634            263784265 => Some(Self::IfcFurnishingElement),
2635            4238390223 => Some(Self::IfcFurnishingElementType),
2636            1509553395 => Some(Self::IfcFurniture),
2637            1268542332 => Some(Self::IfcFurnitureType),
2638            917726184 => Some(Self::IfcGeographicCRS),
2639            3493046030 => Some(Self::IfcGeographicElement),
2640            4095422895 => Some(Self::IfcGeographicElementType),
2641            987898635 => Some(Self::IfcGeometricCurveSet),
2642            3448662350 => Some(Self::IfcGeometricRepresentationContext),
2643            2453401579 => Some(Self::IfcGeometricRepresentationItem),
2644            4142052618 => Some(Self::IfcGeometricRepresentationSubContext),
2645            3590301190 => Some(Self::IfcGeometricSet),
2646            2680139844 => Some(Self::IfcGeomodel),
2647            1971632696 => Some(Self::IfcGeoslice),
2648            2713699986 => Some(Self::IfcGeotechnicalAssembly),
2649            4230923436 => Some(Self::IfcGeotechnicalElement),
2650            1594536857 => Some(Self::IfcGeotechnicalStratum),
2651            2898700619 => Some(Self::IfcGradientCurve),
2652            3009204131 => Some(Self::IfcGrid),
2653            852622518 => Some(Self::IfcGridAxis),
2654            178086475 => Some(Self::IfcGridPlacement),
2655            2706460486 => Some(Self::IfcGroup),
2656            812098782 => Some(Self::IfcHalfSpaceSolid),
2657            3319311131 => Some(Self::IfcHeatExchanger),
2658            1251058090 => Some(Self::IfcHeatExchangerType),
2659            2068733104 => Some(Self::IfcHumidifier),
2660            1806887404 => Some(Self::IfcHumidifierType),
2661            1484403080 => Some(Self::IfcIShapeProfileDef),
2662            3905492369 => Some(Self::IfcImageTexture),
2663            2568555532 => Some(Self::IfcImpactProtectionDevice),
2664            3948183225 => Some(Self::IfcImpactProtectionDeviceType),
2665            3570813810 => Some(Self::IfcIndexedColourMap),
2666            2571569899 => Some(Self::IfcIndexedPolyCurve),
2667            178912537 => Some(Self::IfcIndexedPolygonalFace),
2668            2294589976 => Some(Self::IfcIndexedPolygonalFaceWithVoids),
2669            3465909080 => Some(Self::IfcIndexedPolygonalTextureMap),
2670            1437953363 => Some(Self::IfcIndexedTextureMap),
2671            2133299955 => Some(Self::IfcIndexedTriangleTextureMap),
2672            4175244083 => Some(Self::IfcInterceptor),
2673            3946677679 => Some(Self::IfcInterceptorType),
2674            3113134337 => Some(Self::IfcIntersectionCurve),
2675            2391368822 => Some(Self::IfcInventory),
2676            3741457305 => Some(Self::IfcIrregularTimeSeries),
2677            3020489413 => Some(Self::IfcIrregularTimeSeriesValue),
2678            2176052936 => Some(Self::IfcJunctionBox),
2679            4288270099 => Some(Self::IfcJunctionBoxType),
2680            2696325953 => Some(Self::IfcKerb),
2681            679976338 => Some(Self::IfcKerbType),
2682            572779678 => Some(Self::IfcLShapeProfileDef),
2683            3827777499 => Some(Self::IfcLaborResource),
2684            428585644 => Some(Self::IfcLaborResourceType),
2685            1585845231 => Some(Self::IfcLagTime),
2686            76236018 => Some(Self::IfcLamp),
2687            1051575348 => Some(Self::IfcLampType),
2688            2655187982 => Some(Self::IfcLibraryInformation),
2689            3452421091 => Some(Self::IfcLibraryReference),
2690            4162380809 => Some(Self::IfcLightDistributionData),
2691            629592764 => Some(Self::IfcLightFixture),
2692            1161773419 => Some(Self::IfcLightFixtureType),
2693            1566485204 => Some(Self::IfcLightIntensityDistribution),
2694            1402838566 => Some(Self::IfcLightSource),
2695            125510826 => Some(Self::IfcLightSourceAmbient),
2696            2604431987 => Some(Self::IfcLightSourceDirectional),
2697            4266656042 => Some(Self::IfcLightSourceGoniometric),
2698            1520743889 => Some(Self::IfcLightSourcePositional),
2699            3422422726 => Some(Self::IfcLightSourceSpot),
2700            1281925730 => Some(Self::IfcLine),
2701            2176059722 => Some(Self::IfcLinearElement),
2702            388784114 => Some(Self::IfcLinearPlacement),
2703            1154579445 => Some(Self::IfcLinearPositioningElement),
2704            1638804497 => Some(Self::IfcLiquidTerminal),
2705            1770583370 => Some(Self::IfcLiquidTerminalType),
2706            2624227202 => Some(Self::IfcLocalPlacement),
2707            1008929658 => Some(Self::IfcLoop),
2708            1425443689 => Some(Self::IfcManifoldSolidBrep),
2709            3057273783 => Some(Self::IfcMapConversion),
2710            4105526436 => Some(Self::IfcMapConversionScaled),
2711            2347385850 => Some(Self::IfcMappedItem),
2712            525669439 => Some(Self::IfcMarineFacility),
2713            976884017 => Some(Self::IfcMarinePart),
2714            1838606355 => Some(Self::IfcMaterial),
2715            1847130766 => Some(Self::IfcMaterialClassificationRelationship),
2716            3708119000 => Some(Self::IfcMaterialConstituent),
2717            2852063980 => Some(Self::IfcMaterialConstituentSet),
2718            760658860 => Some(Self::IfcMaterialDefinition),
2719            2022407955 => Some(Self::IfcMaterialDefinitionRepresentation),
2720            248100487 => Some(Self::IfcMaterialLayer),
2721            3303938423 => Some(Self::IfcMaterialLayerSet),
2722            1303795690 => Some(Self::IfcMaterialLayerSetUsage),
2723            1847252529 => Some(Self::IfcMaterialLayerWithOffsets),
2724            2199411900 => Some(Self::IfcMaterialList),
2725            2235152071 => Some(Self::IfcMaterialProfile),
2726            164193824 => Some(Self::IfcMaterialProfileSet),
2727            3079605661 => Some(Self::IfcMaterialProfileSetUsage),
2728            3404854881 => Some(Self::IfcMaterialProfileSetUsageTapering),
2729            552965576 => Some(Self::IfcMaterialProfileWithOffsets),
2730            3265635763 => Some(Self::IfcMaterialProperties),
2731            853536259 => Some(Self::IfcMaterialRelationship),
2732            1507914824 => Some(Self::IfcMaterialUsageDefinition),
2733            2597039031 => Some(Self::IfcMeasureWithUnit),
2734            377706215 => Some(Self::IfcMechanicalFastener),
2735            2108223431 => Some(Self::IfcMechanicalFastenerType),
2736            1437502449 => Some(Self::IfcMedicalDevice),
2737            1114901282 => Some(Self::IfcMedicalDeviceType),
2738            1073191201 => Some(Self::IfcMember),
2739            3181161470 => Some(Self::IfcMemberType),
2740            3368373690 => Some(Self::IfcMetric),
2741            2998442950 => Some(Self::IfcMirroredProfileDef),
2742            2078563270 => Some(Self::IfcMobileTelecommunicationsAppliance),
2743            1950438474 => Some(Self::IfcMobileTelecommunicationsApplianceType),
2744            2706619895 => Some(Self::IfcMonetaryUnit),
2745            234836483 => Some(Self::IfcMooringDevice),
2746            710110818 => Some(Self::IfcMooringDeviceType),
2747            2474470126 => Some(Self::IfcMotorConnection),
2748            977012517 => Some(Self::IfcMotorConnectionType),
2749            1918398963 => Some(Self::IfcNamedUnit),
2750            2182337498 => Some(Self::IfcNavigationElement),
2751            506776471 => Some(Self::IfcNavigationElementType),
2752            3888040117 => Some(Self::IfcObject),
2753            219451334 => Some(Self::IfcObjectDefinition),
2754            3701648758 => Some(Self::IfcObjectPlacement),
2755            2251480897 => Some(Self::IfcObjective),
2756            4143007308 => Some(Self::IfcOccupant),
2757            590820931 => Some(Self::IfcOffsetCurve),
2758            3388369263 => Some(Self::IfcOffsetCurve2D),
2759            3505215534 => Some(Self::IfcOffsetCurve3D),
2760            2485787929 => Some(Self::IfcOffsetCurveByDistances),
2761            182550632 => Some(Self::IfcOpenCrossProfileDef),
2762            2665983363 => Some(Self::IfcOpenShell),
2763            3588315303 => Some(Self::IfcOpeningElement),
2764            4251960020 => Some(Self::IfcOrganization),
2765            1411181986 => Some(Self::IfcOrganizationRelationship),
2766            1029017970 => Some(Self::IfcOrientedEdge),
2767            144952367 => Some(Self::IfcOuterBoundaryCurve),
2768            3694346114 => Some(Self::IfcOutlet),
2769            2837617999 => Some(Self::IfcOutletType),
2770            1207048766 => Some(Self::IfcOwnerHistory),
2771            2529465313 => Some(Self::IfcParameterizedProfileDef),
2772            2519244187 => Some(Self::IfcPath),
2773            1383356374 => Some(Self::IfcPavement),
2774            514975943 => Some(Self::IfcPavementType),
2775            1682466193 => Some(Self::IfcPcurve),
2776            2382730787 => Some(Self::IfcPerformanceHistory),
2777            3566463478 => Some(Self::IfcPermeableCoveringProperties),
2778            3327091369 => Some(Self::IfcPermit),
2779            2077209135 => Some(Self::IfcPerson),
2780            101040310 => Some(Self::IfcPersonAndOrganization),
2781            3021840470 => Some(Self::IfcPhysicalComplexQuantity),
2782            2483315170 => Some(Self::IfcPhysicalQuantity),
2783            2226359599 => Some(Self::IfcPhysicalSimpleQuantity),
2784            1687234759 => Some(Self::IfcPile),
2785            1158309216 => Some(Self::IfcPileType),
2786            310824031 => Some(Self::IfcPipeFitting),
2787            804291784 => Some(Self::IfcPipeFittingType),
2788            3612865200 => Some(Self::IfcPipeSegment),
2789            4231323485 => Some(Self::IfcPipeSegmentType),
2790            597895409 => Some(Self::IfcPixelTexture),
2791            2004835150 => Some(Self::IfcPlacement),
2792            603570806 => Some(Self::IfcPlanarBox),
2793            1663979128 => Some(Self::IfcPlanarExtent),
2794            220341763 => Some(Self::IfcPlane),
2795            3171933400 => Some(Self::IfcPlate),
2796            4017108033 => Some(Self::IfcPlateType),
2797            2067069095 => Some(Self::IfcPoint),
2798            2165702409 => Some(Self::IfcPointByDistanceExpression),
2799            4022376103 => Some(Self::IfcPointOnCurve),
2800            1423911732 => Some(Self::IfcPointOnSurface),
2801            2924175390 => Some(Self::IfcPolyLoop),
2802            2775532180 => Some(Self::IfcPolygonalBoundedHalfSpace),
2803            2839578677 => Some(Self::IfcPolygonalFaceSet),
2804            3724593414 => Some(Self::IfcPolyline),
2805            3381221214 => Some(Self::IfcPolynomialCurve),
2806            3740093272 => Some(Self::IfcPort),
2807            1946335990 => Some(Self::IfcPositioningElement),
2808            3355820592 => Some(Self::IfcPostalAddress),
2809            759155922 => Some(Self::IfcPreDefinedColour),
2810            2559016684 => Some(Self::IfcPreDefinedCurveFont),
2811            3727388367 => Some(Self::IfcPreDefinedItem),
2812            3778827333 => Some(Self::IfcPreDefinedProperties),
2813            3967405729 => Some(Self::IfcPreDefinedPropertySet),
2814            1775413392 => Some(Self::IfcPreDefinedTextFont),
2815            677532197 => Some(Self::IfcPresentationItem),
2816            2022622350 => Some(Self::IfcPresentationLayerAssignment),
2817            1304840413 => Some(Self::IfcPresentationLayerWithStyle),
2818            3119450353 => Some(Self::IfcPresentationStyle),
2819            2744685151 => Some(Self::IfcProcedure),
2820            569719735 => Some(Self::IfcProcedureType),
2821            2945172077 => Some(Self::IfcProcess),
2822            4208778838 => Some(Self::IfcProduct),
2823            673634403 => Some(Self::IfcProductDefinitionShape),
2824            2095639259 => Some(Self::IfcProductRepresentation),
2825            3958567839 => Some(Self::IfcProfileDef),
2826            2802850158 => Some(Self::IfcProfileProperties),
2827            103090709 => Some(Self::IfcProject),
2828            653396225 => Some(Self::IfcProjectLibrary),
2829            2904328755 => Some(Self::IfcProjectOrder),
2830            3843373140 => Some(Self::IfcProjectedCRS),
2831            3651124850 => Some(Self::IfcProjectionElement),
2832            2598011224 => Some(Self::IfcProperty),
2833            986844984 => Some(Self::IfcPropertyAbstraction),
2834            871118103 => Some(Self::IfcPropertyBoundedValue),
2835            1680319473 => Some(Self::IfcPropertyDefinition),
2836            148025276 => Some(Self::IfcPropertyDependencyRelationship),
2837            4166981789 => Some(Self::IfcPropertyEnumeratedValue),
2838            3710013099 => Some(Self::IfcPropertyEnumeration),
2839            2752243245 => Some(Self::IfcPropertyListValue),
2840            941946838 => Some(Self::IfcPropertyReferenceValue),
2841            1451395588 => Some(Self::IfcPropertySet),
2842            3357820518 => Some(Self::IfcPropertySetDefinition),
2843            492091185 => Some(Self::IfcPropertySetTemplate),
2844            3650150729 => Some(Self::IfcPropertySingleValue),
2845            110355661 => Some(Self::IfcPropertyTableValue),
2846            3521284610 => Some(Self::IfcPropertyTemplate),
2847            1482703590 => Some(Self::IfcPropertyTemplateDefinition),
2848            738039164 => Some(Self::IfcProtectiveDevice),
2849            2295281155 => Some(Self::IfcProtectiveDeviceTrippingUnit),
2850            655969474 => Some(Self::IfcProtectiveDeviceTrippingUnitType),
2851            1842657554 => Some(Self::IfcProtectiveDeviceType),
2852            90941305 => Some(Self::IfcPump),
2853            2250791053 => Some(Self::IfcPumpType),
2854            2044713172 => Some(Self::IfcQuantityArea),
2855            2093928680 => Some(Self::IfcQuantityCount),
2856            931644368 => Some(Self::IfcQuantityLength),
2857            2691318326 => Some(Self::IfcQuantityNumber),
2858            2090586900 => Some(Self::IfcQuantitySet),
2859            3252649465 => Some(Self::IfcQuantityTime),
2860            2405470396 => Some(Self::IfcQuantityVolume),
2861            825690147 => Some(Self::IfcQuantityWeight),
2862            3290496277 => Some(Self::IfcRail),
2863            1763565496 => Some(Self::IfcRailType),
2864            2262370178 => Some(Self::IfcRailing),
2865            2893384427 => Some(Self::IfcRailingType),
2866            3992365140 => Some(Self::IfcRailway),
2867            1891881377 => Some(Self::IfcRailwayPart),
2868            3024970846 => Some(Self::IfcRamp),
2869            3283111854 => Some(Self::IfcRampFlight),
2870            2324767716 => Some(Self::IfcRampFlightType),
2871            1469900589 => Some(Self::IfcRampType),
2872            1232101972 => Some(Self::IfcRationalBSplineCurveWithKnots),
2873            683857671 => Some(Self::IfcRationalBSplineSurfaceWithKnots),
2874            2770003689 => Some(Self::IfcRectangleHollowProfileDef),
2875            3615266464 => Some(Self::IfcRectangleProfileDef),
2876            2798486643 => Some(Self::IfcRectangularPyramid),
2877            3454111270 => Some(Self::IfcRectangularTrimmedSurface),
2878            3915482550 => Some(Self::IfcRecurrencePattern),
2879            2433181523 => Some(Self::IfcReference),
2880            4021432810 => Some(Self::IfcReferent),
2881            3413951693 => Some(Self::IfcRegularTimeSeries),
2882            3798194928 => Some(Self::IfcReinforcedSoil),
2883            1580146022 => Some(Self::IfcReinforcementBarProperties),
2884            3765753017 => Some(Self::IfcReinforcementDefinitionProperties),
2885            979691226 => Some(Self::IfcReinforcingBar),
2886            2572171363 => Some(Self::IfcReinforcingBarType),
2887            3027567501 => Some(Self::IfcReinforcingElement),
2888            964333572 => Some(Self::IfcReinforcingElementType),
2889            2320036040 => Some(Self::IfcReinforcingMesh),
2890            2310774935 => Some(Self::IfcReinforcingMeshType),
2891            3818125796 => Some(Self::IfcRelAdheresToElement),
2892            160246688 => Some(Self::IfcRelAggregates),
2893            3939117080 => Some(Self::IfcRelAssigns),
2894            1683148259 => Some(Self::IfcRelAssignsToActor),
2895            2495723537 => Some(Self::IfcRelAssignsToControl),
2896            1307041759 => Some(Self::IfcRelAssignsToGroup),
2897            1027710054 => Some(Self::IfcRelAssignsToGroupByFactor),
2898            4278684876 => Some(Self::IfcRelAssignsToProcess),
2899            2857406711 => Some(Self::IfcRelAssignsToProduct),
2900            205026976 => Some(Self::IfcRelAssignsToResource),
2901            1865459582 => Some(Self::IfcRelAssociates),
2902            4095574036 => Some(Self::IfcRelAssociatesApproval),
2903            919958153 => Some(Self::IfcRelAssociatesClassification),
2904            2728634034 => Some(Self::IfcRelAssociatesConstraint),
2905            982818633 => Some(Self::IfcRelAssociatesDocument),
2906            3840914261 => Some(Self::IfcRelAssociatesLibrary),
2907            2655215786 => Some(Self::IfcRelAssociatesMaterial),
2908            1033248425 => Some(Self::IfcRelAssociatesProfileDef),
2909            826625072 => Some(Self::IfcRelConnects),
2910            1204542856 => Some(Self::IfcRelConnectsElements),
2911            3945020480 => Some(Self::IfcRelConnectsPathElements),
2912            4201705270 => Some(Self::IfcRelConnectsPortToElement),
2913            3190031847 => Some(Self::IfcRelConnectsPorts),
2914            2127690289 => Some(Self::IfcRelConnectsStructuralActivity),
2915            1638771189 => Some(Self::IfcRelConnectsStructuralMember),
2916            504942748 => Some(Self::IfcRelConnectsWithEccentricity),
2917            3678494232 => Some(Self::IfcRelConnectsWithRealizingElements),
2918            3242617779 => Some(Self::IfcRelContainedInSpatialStructure),
2919            886880790 => Some(Self::IfcRelCoversBldgElements),
2920            2802773753 => Some(Self::IfcRelCoversSpaces),
2921            2565941209 => Some(Self::IfcRelDeclares),
2922            2551354335 => Some(Self::IfcRelDecomposes),
2923            693640335 => Some(Self::IfcRelDefines),
2924            1462361463 => Some(Self::IfcRelDefinesByObject),
2925            4186316022 => Some(Self::IfcRelDefinesByProperties),
2926            307848117 => Some(Self::IfcRelDefinesByTemplate),
2927            781010003 => Some(Self::IfcRelDefinesByType),
2928            3940055652 => Some(Self::IfcRelFillsElement),
2929            279856033 => Some(Self::IfcRelFlowControlElements),
2930            427948657 => Some(Self::IfcRelInterferesElements),
2931            3268803585 => Some(Self::IfcRelNests),
2932            1441486842 => Some(Self::IfcRelPositions),
2933            750771296 => Some(Self::IfcRelProjectsElement),
2934            1245217292 => Some(Self::IfcRelReferencedInSpatialStructure),
2935            4122056220 => Some(Self::IfcRelSequence),
2936            366585022 => Some(Self::IfcRelServicesBuildings),
2937            3451746338 => Some(Self::IfcRelSpaceBoundary),
2938            3523091289 => Some(Self::IfcRelSpaceBoundary1stLevel),
2939            1521410863 => Some(Self::IfcRelSpaceBoundary2ndLevel),
2940            1401173127 => Some(Self::IfcRelVoidsElement),
2941            478536968 => Some(Self::IfcRelationship),
2942            816062949 => Some(Self::IfcReparametrisedCompositeCurveSegment),
2943            1076942058 => Some(Self::IfcRepresentation),
2944            3377609919 => Some(Self::IfcRepresentationContext),
2945            3008791417 => Some(Self::IfcRepresentationItem),
2946            1660063152 => Some(Self::IfcRepresentationMap),
2947            2914609552 => Some(Self::IfcResource),
2948            2943643501 => Some(Self::IfcResourceApprovalRelationship),
2949            1608871552 => Some(Self::IfcResourceConstraintRelationship),
2950            2439245199 => Some(Self::IfcResourceLevelRelationship),
2951            1042787934 => Some(Self::IfcResourceTime),
2952            1856042241 => Some(Self::IfcRevolvedAreaSolid),
2953            3243963512 => Some(Self::IfcRevolvedAreaSolidTapered),
2954            4158566097 => Some(Self::IfcRightCircularCone),
2955            3626867408 => Some(Self::IfcRightCircularCylinder),
2956            1794013214 => Some(Self::IfcRigidOperation),
2957            146592293 => Some(Self::IfcRoad),
2958            550521510 => Some(Self::IfcRoadPart),
2959            2016517767 => Some(Self::IfcRoof),
2960            2781568857 => Some(Self::IfcRoofType),
2961            2341007311 => Some(Self::IfcRoot),
2962            2778083089 => Some(Self::IfcRoundedRectangleProfileDef),
2963            448429030 => Some(Self::IfcSIUnit),
2964            3053780830 => Some(Self::IfcSanitaryTerminal),
2965            1768891740 => Some(Self::IfcSanitaryTerminalType),
2966            1054537805 => Some(Self::IfcSchedulingTime),
2967            2157484638 => Some(Self::IfcSeamCurve),
2968            3649235739 => Some(Self::IfcSecondOrderPolynomialSpiral),
2969            2042790032 => Some(Self::IfcSectionProperties),
2970            4165799628 => Some(Self::IfcSectionReinforcementProperties),
2971            1862484736 => Some(Self::IfcSectionedSolid),
2972            1290935644 => Some(Self::IfcSectionedSolidHorizontal),
2973            1509187699 => Some(Self::IfcSectionedSpine),
2974            1356537516 => Some(Self::IfcSectionedSurface),
2975            823603102 => Some(Self::IfcSegment),
2976            544395925 => Some(Self::IfcSegmentedReferenceCurve),
2977            4086658281 => Some(Self::IfcSensor),
2978            1783015770 => Some(Self::IfcSensorType),
2979            1027922057 => Some(Self::IfcSeventhOrderPolynomialSpiral),
2980            1329646415 => Some(Self::IfcShadingDevice),
2981            4074543187 => Some(Self::IfcShadingDeviceType),
2982            867548509 => Some(Self::IfcShapeAspect),
2983            3982875396 => Some(Self::IfcShapeModel),
2984            4240577450 => Some(Self::IfcShapeRepresentation),
2985            4124623270 => Some(Self::IfcShellBasedSurfaceModel),
2986            33720170 => Some(Self::IfcSign),
2987            3599934289 => Some(Self::IfcSignType),
2988            991950508 => Some(Self::IfcSignal),
2989            1894708472 => Some(Self::IfcSignalType),
2990            3692461612 => Some(Self::IfcSimpleProperty),
2991            3663146110 => Some(Self::IfcSimplePropertyTemplate),
2992            42703149 => Some(Self::IfcSineSpiral),
2993            4097777520 => Some(Self::IfcSite),
2994            1529196076 => Some(Self::IfcSlab),
2995            2533589738 => Some(Self::IfcSlabType),
2996            2609359061 => Some(Self::IfcSlippageConnectionCondition),
2997            3420628829 => Some(Self::IfcSolarDevice),
2998            1072016465 => Some(Self::IfcSolarDeviceType),
2999            723233188 => Some(Self::IfcSolidModel),
3000            3856911033 => Some(Self::IfcSpace),
3001            1999602285 => Some(Self::IfcSpaceHeater),
3002            1305183839 => Some(Self::IfcSpaceHeaterType),
3003            3812236995 => Some(Self::IfcSpaceType),
3004            1412071761 => Some(Self::IfcSpatialElement),
3005            710998568 => Some(Self::IfcSpatialElementType),
3006            2706606064 => Some(Self::IfcSpatialStructureElement),
3007            3893378262 => Some(Self::IfcSpatialStructureElementType),
3008            463610769 => Some(Self::IfcSpatialZone),
3009            2481509218 => Some(Self::IfcSpatialZoneType),
3010            451544542 => Some(Self::IfcSphere),
3011            4015995234 => Some(Self::IfcSphericalSurface),
3012            2735484536 => Some(Self::IfcSpiral),
3013            1404847402 => Some(Self::IfcStackTerminal),
3014            3112655638 => Some(Self::IfcStackTerminalType),
3015            331165859 => Some(Self::IfcStair),
3016            4252922144 => Some(Self::IfcStairFlight),
3017            1039846685 => Some(Self::IfcStairFlightType),
3018            338393293 => Some(Self::IfcStairType),
3019            682877961 => Some(Self::IfcStructuralAction),
3020            3544373492 => Some(Self::IfcStructuralActivity),
3021            2515109513 => Some(Self::IfcStructuralAnalysisModel),
3022            1179482911 => Some(Self::IfcStructuralConnection),
3023            2273995522 => Some(Self::IfcStructuralConnectionCondition),
3024            1004757350 => Some(Self::IfcStructuralCurveAction),
3025            4243806635 => Some(Self::IfcStructuralCurveConnection),
3026            214636428 => Some(Self::IfcStructuralCurveMember),
3027            2445595289 => Some(Self::IfcStructuralCurveMemberVarying),
3028            2757150158 => Some(Self::IfcStructuralCurveReaction),
3029            3136571912 => Some(Self::IfcStructuralItem),
3030            1807405624 => Some(Self::IfcStructuralLinearAction),
3031            2162789131 => Some(Self::IfcStructuralLoad),
3032            385403989 => Some(Self::IfcStructuralLoadCase),
3033            3478079324 => Some(Self::IfcStructuralLoadConfiguration),
3034            1252848954 => Some(Self::IfcStructuralLoadGroup),
3035            1595516126 => Some(Self::IfcStructuralLoadLinearForce),
3036            609421318 => Some(Self::IfcStructuralLoadOrResult),
3037            2668620305 => Some(Self::IfcStructuralLoadPlanarForce),
3038            2473145415 => Some(Self::IfcStructuralLoadSingleDisplacement),
3039            1973038258 => Some(Self::IfcStructuralLoadSingleDisplacementDistortion),
3040            1597423693 => Some(Self::IfcStructuralLoadSingleForce),
3041            1190533807 => Some(Self::IfcStructuralLoadSingleForceWarping),
3042            2525727697 => Some(Self::IfcStructuralLoadStatic),
3043            3408363356 => Some(Self::IfcStructuralLoadTemperature),
3044            530289379 => Some(Self::IfcStructuralMember),
3045            1621171031 => Some(Self::IfcStructuralPlanarAction),
3046            2082059205 => Some(Self::IfcStructuralPointAction),
3047            734778138 => Some(Self::IfcStructuralPointConnection),
3048            1235345126 => Some(Self::IfcStructuralPointReaction),
3049            3689010777 => Some(Self::IfcStructuralReaction),
3050            2986769608 => Some(Self::IfcStructuralResultGroup),
3051            3657597509 => Some(Self::IfcStructuralSurfaceAction),
3052            1975003073 => Some(Self::IfcStructuralSurfaceConnection),
3053            3979015343 => Some(Self::IfcStructuralSurfaceMember),
3054            2218152070 => Some(Self::IfcStructuralSurfaceMemberVarying),
3055            603775116 => Some(Self::IfcStructuralSurfaceReaction),
3056            2830218821 => Some(Self::IfcStyleModel),
3057            3958052878 => Some(Self::IfcStyledItem),
3058            3049322572 => Some(Self::IfcStyledRepresentation),
3059            148013059 => Some(Self::IfcSubContractResource),
3060            4095615324 => Some(Self::IfcSubContractResourceType),
3061            2233826070 => Some(Self::IfcSubedge),
3062            2513912981 => Some(Self::IfcSurface),
3063            699246055 => Some(Self::IfcSurfaceCurve),
3064            2028607225 => Some(Self::IfcSurfaceCurveSweptAreaSolid),
3065            3101698114 => Some(Self::IfcSurfaceFeature),
3066            2809605785 => Some(Self::IfcSurfaceOfLinearExtrusion),
3067            4124788165 => Some(Self::IfcSurfaceOfRevolution),
3068            2934153892 => Some(Self::IfcSurfaceReinforcementArea),
3069            1300840506 => Some(Self::IfcSurfaceStyle),
3070            3303107099 => Some(Self::IfcSurfaceStyleLighting),
3071            1607154358 => Some(Self::IfcSurfaceStyleRefraction),
3072            1878645084 => Some(Self::IfcSurfaceStyleRendering),
3073            846575682 => Some(Self::IfcSurfaceStyleShading),
3074            1351298697 => Some(Self::IfcSurfaceStyleWithTextures),
3075            626085974 => Some(Self::IfcSurfaceTexture),
3076            2247615214 => Some(Self::IfcSweptAreaSolid),
3077            1260650574 => Some(Self::IfcSweptDiskSolid),
3078            1096409881 => Some(Self::IfcSweptDiskSolidPolygonal),
3079            230924584 => Some(Self::IfcSweptSurface),
3080            1162798199 => Some(Self::IfcSwitchingDevice),
3081            2315554128 => Some(Self::IfcSwitchingDeviceType),
3082            2254336722 => Some(Self::IfcSystem),
3083            413509423 => Some(Self::IfcSystemFurnitureElement),
3084            1580310250 => Some(Self::IfcSystemFurnitureElementType),
3085            3071757647 => Some(Self::IfcTShapeProfileDef),
3086            985171141 => Some(Self::IfcTable),
3087            2043862942 => Some(Self::IfcTableColumn),
3088            531007025 => Some(Self::IfcTableRow),
3089            812556717 => Some(Self::IfcTank),
3090            5716631 => Some(Self::IfcTankType),
3091            3473067441 => Some(Self::IfcTask),
3092            1549132990 => Some(Self::IfcTaskTime),
3093            2771591690 => Some(Self::IfcTaskTimeRecurring),
3094            3206491090 => Some(Self::IfcTaskType),
3095            912023232 => Some(Self::IfcTelecomAddress),
3096            3824725483 => Some(Self::IfcTendon),
3097            2347447852 => Some(Self::IfcTendonAnchor),
3098            3081323446 => Some(Self::IfcTendonAnchorType),
3099            3663046924 => Some(Self::IfcTendonConduit),
3100            2281632017 => Some(Self::IfcTendonConduitType),
3101            2415094496 => Some(Self::IfcTendonType),
3102            2387106220 => Some(Self::IfcTessellatedFaceSet),
3103            901063453 => Some(Self::IfcTessellatedItem),
3104            4282788508 => Some(Self::IfcTextLiteral),
3105            3124975700 => Some(Self::IfcTextLiteralWithExtent),
3106            1447204868 => Some(Self::IfcTextStyle),
3107            1983826977 => Some(Self::IfcTextStyleFontModel),
3108            2636378356 => Some(Self::IfcTextStyleForDefinedFont),
3109            1640371178 => Some(Self::IfcTextStyleTextModel),
3110            280115917 => Some(Self::IfcTextureCoordinate),
3111            1742049831 => Some(Self::IfcTextureCoordinateGenerator),
3112            222769930 => Some(Self::IfcTextureCoordinateIndices),
3113            1010789467 => Some(Self::IfcTextureCoordinateIndicesWithVoids),
3114            2552916305 => Some(Self::IfcTextureMap),
3115            1210645708 => Some(Self::IfcTextureVertex),
3116            3611470254 => Some(Self::IfcTextureVertexList),
3117            782932809 => Some(Self::IfcThirdOrderPolynomialSpiral),
3118            1199560280 => Some(Self::IfcTimePeriod),
3119            3101149627 => Some(Self::IfcTimeSeries),
3120            581633288 => Some(Self::IfcTimeSeriesValue),
3121            1377556343 => Some(Self::IfcTopologicalRepresentationItem),
3122            1735638870 => Some(Self::IfcTopologyRepresentation),
3123            1935646853 => Some(Self::IfcToroidalSurface),
3124            3425753595 => Some(Self::IfcTrackElement),
3125            618700268 => Some(Self::IfcTrackElementType),
3126            3825984169 => Some(Self::IfcTransformer),
3127            1692211062 => Some(Self::IfcTransformerType),
3128            1620046519 => Some(Self::IfcTransportElement),
3129            2097647324 => Some(Self::IfcTransportElementType),
3130            1953115116 => Some(Self::IfcTransportationDevice),
3131            3665877780 => Some(Self::IfcTransportationDeviceType),
3132            2715220739 => Some(Self::IfcTrapeziumProfileDef),
3133            2916149573 => Some(Self::IfcTriangulatedFaceSet),
3134            1229763772 => Some(Self::IfcTriangulatedIrregularNetwork),
3135            3593883385 => Some(Self::IfcTrimmedCurve),
3136            3026737570 => Some(Self::IfcTubeBundle),
3137            1600972822 => Some(Self::IfcTubeBundleType),
3138            1628702193 => Some(Self::IfcTypeObject),
3139            3736923433 => Some(Self::IfcTypeProcess),
3140            2347495698 => Some(Self::IfcTypeProduct),
3141            3698973494 => Some(Self::IfcTypeResource),
3142            427810014 => Some(Self::IfcUShapeProfileDef),
3143            180925521 => Some(Self::IfcUnitAssignment),
3144            630975310 => Some(Self::IfcUnitaryControlElement),
3145            3179687236 => Some(Self::IfcUnitaryControlElementType),
3146            4292641817 => Some(Self::IfcUnitaryEquipment),
3147            1911125066 => Some(Self::IfcUnitaryEquipmentType),
3148            4207607924 => Some(Self::IfcValve),
3149            728799441 => Some(Self::IfcValveType),
3150            1417489154 => Some(Self::IfcVector),
3151            840318589 => Some(Self::IfcVehicle),
3152            3651464721 => Some(Self::IfcVehicleType),
3153            2799835756 => Some(Self::IfcVertex),
3154            2759199220 => Some(Self::IfcVertexLoop),
3155            1907098498 => Some(Self::IfcVertexPoint),
3156            1530820697 => Some(Self::IfcVibrationDamper),
3157            3956297820 => Some(Self::IfcVibrationDamperType),
3158            2391383451 => Some(Self::IfcVibrationIsolator),
3159            3313531582 => Some(Self::IfcVibrationIsolatorType),
3160            2769231204 => Some(Self::IfcVirtualElement),
3161            891718957 => Some(Self::IfcVirtualGridIntersection),
3162            926996030 => Some(Self::IfcVoidingFeature),
3163            2391406946 => Some(Self::IfcWall),
3164            3512223829 => Some(Self::IfcWallStandardCase),
3165            1898987631 => Some(Self::IfcWallType),
3166            4237592921 => Some(Self::IfcWasteTerminal),
3167            1133259667 => Some(Self::IfcWasteTerminalType),
3168            1175146630 => Some(Self::IfcWellKnownText),
3169            3304561284 => Some(Self::IfcWindow),
3170            336235671 => Some(Self::IfcWindowLiningProperties),
3171            512836454 => Some(Self::IfcWindowPanelProperties),
3172            4009809668 => Some(Self::IfcWindowType),
3173            4088093105 => Some(Self::IfcWorkCalendar),
3174            1028945134 => Some(Self::IfcWorkControl),
3175            4218914973 => Some(Self::IfcWorkPlan),
3176            3342526732 => Some(Self::IfcWorkSchedule),
3177            1236880293 => Some(Self::IfcWorkTime),
3178            2543172580 => Some(Self::IfcZShapeProfileDef),
3179            1033361043 => Some(Self::IfcZone),
3180            2906023776 => Some(Self::IfcBeamStandardCase),
3181            3299480353 => Some(Self::IfcBuildingElement),
3182            1950629157 => Some(Self::IfcBuildingElementType),
3183            905975707 => Some(Self::IfcColumnStandardCase),
3184            3242481149 => Some(Self::IfcDoorStandardCase),
3185            526551008 => Some(Self::IfcDoorStyle),
3186            1911478936 => Some(Self::IfcMemberStandardCase),
3187            3079942009 => Some(Self::IfcOpeningStandardCase),
3188            1156407060 => Some(Self::IfcPlateStandardCase),
3189            2417041796 => Some(Self::IfcPresentationStyleAssignment),
3190            3219374653 => Some(Self::IfcProxy),
3191            3127900445 => Some(Self::IfcSlabElementedCase),
3192            3027962421 => Some(Self::IfcSlabStandardCase),
3193            4156078855 => Some(Self::IfcWallElementedCase),
3194            486154966 => Some(Self::IfcWindowStandardCase),
3195            1299126871 => Some(Self::IfcWindowStyle),
3196            1213861670 => Some(Self::Ifc2DCompositeCurve),
3197            2470393545 => Some(Self::IfcAngularDimension),
3198            3288037868 => Some(Self::IfcAnnotationCurveOccurrence),
3199            2265737646 => Some(Self::IfcAnnotationFillAreaOccurrence),
3200            2442683028 => Some(Self::IfcAnnotationOccurrence),
3201            1302238472 => Some(Self::IfcAnnotationSurface),
3202            962685235 => Some(Self::IfcAnnotationSurfaceOccurrence),
3203            3612888222 => Some(Self::IfcAnnotationSymbolOccurrence),
3204            2297822566 => Some(Self::IfcAnnotationTextOccurrence),
3205            1110488051 => Some(Self::IfcAppliedValueRelationship),
3206            2080292479 => Some(Self::IfcApprovalActorRelationship),
3207            390851274 => Some(Self::IfcApprovalPropertyRelationship),
3208            1916977116 => Some(Self::IfcBezierCurve),
3209            52481810 => Some(Self::IfcBuildingElementComponent),
3210            622194075 => Some(Self::IfcCalendarDate),
3211            2454782716 => Some(Self::IfcChamferEdgeFeature),
3212            1767535486 => Some(Self::IfcClassificationItem),
3213            1098599126 => Some(Self::IfcClassificationItemRelationship),
3214            938368621 => Some(Self::IfcClassificationNotation),
3215            3639012971 => Some(Self::IfcClassificationNotationFacet),
3216            2188551683 => Some(Self::IfcCondition),
3217            1163958913 => Some(Self::IfcConditionCriterion),
3218            4257277454 => Some(Self::IfcConnectionPortGeometry),
3219            1658513725 => Some(Self::IfcConstraintAggregationRelationship),
3220            613356794 => Some(Self::IfcConstraintClassificationRelationship),
3221            347226245 => Some(Self::IfcConstraintRelationship),
3222            1065062679 => Some(Self::IfcCoordinatedUniversalTimeOffset),
3223            4133800736 => Some(Self::IfcCraneRailAShapeProfileDef),
3224            194851669 => Some(Self::IfcCraneRailFShapeProfileDef),
3225            1072939445 => Some(Self::IfcDateAndTime),
3226            693772133 => Some(Self::IfcDefinedSymbol),
3227            4147604152 => Some(Self::IfcDiameterDimension),
3228            2273265877 => Some(Self::IfcDimensionCalloutRelationship),
3229            606661476 => Some(Self::IfcDimensionCurve),
3230            681481545 => Some(Self::IfcDimensionCurveDirectedCallout),
3231            4054601972 => Some(Self::IfcDimensionCurveTerminator),
3232            1694125774 => Some(Self::IfcDimensionPair),
3233            1376555844 => Some(Self::IfcDocumentElectronicFormat),
3234            3073041342 => Some(Self::IfcDraughtingCallout),
3235            3796139169 => Some(Self::IfcDraughtingCalloutRelationship),
3236            4170525392 => Some(Self::IfcDraughtingPreDefinedTextFont),
3237            855621170 => Some(Self::IfcEdgeFeature),
3238            3700593921 => Some(Self::IfcElectricDistributionPoint),
3239            1365060375 => Some(Self::IfcElectricHeaterType),
3240            360485395 => Some(Self::IfcElectricalBaseProperties),
3241            1634875225 => Some(Self::IfcElectricalCircuit),
3242            857184966 => Some(Self::IfcElectricalElement),
3243            80994333 => Some(Self::IfcEnergyProperties),
3244            1648886627 => Some(Self::IfcEnvironmentalImpactValue),
3245            1962604670 => Some(Self::IfcEquipmentElement),
3246            3272907226 => Some(Self::IfcEquipmentStandard),
3247            1860660968 => Some(Self::IfcExtendedMaterialProperties),
3248            3207319532 => Some(Self::IfcExternallyDefinedSymbol),
3249            4203026998 => Some(Self::IfcFillAreaStyleTileSymbolWithStyle),
3250            3455213021 => Some(Self::IfcFluidFlowProperties),
3251            3857492461 => Some(Self::IfcFuelProperties),
3252            814719939 => Some(Self::IfcFurnitureStandard),
3253            200128114 => Some(Self::IfcGasTerminalType),
3254            803998398 => Some(Self::IfcGeneralMaterialProperties),
3255            1446786286 => Some(Self::IfcGeneralProfileProperties),
3256            2445078500 => Some(Self::IfcHygroscopicMaterialProperties),
3257            2506943328 => Some(Self::IfcLinearDimension),
3258            30780891 => Some(Self::IfcLocalTime),
3259            1430189142 => Some(Self::IfcMechanicalConcreteMaterialProperties),
3260            4256014907 => Some(Self::IfcMechanicalMaterialProperties),
3261            677618848 => Some(Self::IfcMechanicalSteelMaterialProperties),
3262            1916936684 => Some(Self::IfcMove),
3263            2833995503 => Some(Self::IfcOneDirectionRepeatFactor),
3264            1227763645 => Some(Self::IfcOpticalMaterialProperties),
3265            3425660407 => Some(Self::IfcOrderAction),
3266            433424934 => Some(Self::IfcPreDefinedDimensionSymbol),
3267            179317114 => Some(Self::IfcPreDefinedPointMarkerSymbol),
3268            990879717 => Some(Self::IfcPreDefinedSymbol),
3269            3213052703 => Some(Self::IfcPreDefinedTerminatorSymbol),
3270            2267347899 => Some(Self::IfcProductsOfCombustionProperties),
3271            3642467123 => Some(Self::IfcProjectOrderRecord),
3272            4194566429 => Some(Self::IfcProjectionCurve),
3273            3896028662 => Some(Self::IfcPropertyConstraintRelationship),
3274            3248260540 => Some(Self::IfcRadiusDimension),
3275            3055160366 => Some(Self::IfcRationalBezierCurve),
3276            2692823254 => Some(Self::IfcReferencesValueDocument),
3277            2863920197 => Some(Self::IfcRelAssignsTasks),
3278            3372526763 => Some(Self::IfcRelAssignsToProjectOrder),
3279            1327628568 => Some(Self::IfcRelAssociatesAppliedValue),
3280            2851387026 => Some(Self::IfcRelAssociatesProfileProperties),
3281            3912681535 => Some(Self::IfcRelConnectsStructuralElement),
3282            4189434867 => Some(Self::IfcRelInteractionRequirements),
3283            2051452291 => Some(Self::IfcRelOccupiesSpaces),
3284            202636808 => Some(Self::IfcRelOverridesProperties),
3285            1058617721 => Some(Self::IfcRelSchedulesCostItems),
3286            1222501353 => Some(Self::IfcRelaxation),
3287            3679540991 => Some(Self::IfcRibPlateProfileProperties),
3288            1376911519 => Some(Self::IfcRoundedEdgeFeature),
3289            3517283431 => Some(Self::IfcScheduleTimeControl),
3290            4105383287 => Some(Self::IfcServiceLife),
3291            2411513650 => Some(Self::IfcServiceLifeFactor),
3292            2485662743 => Some(Self::IfcSoundProperties),
3293            1202362311 => Some(Self::IfcSoundValue),
3294            652456506 => Some(Self::IfcSpaceProgram),
3295            390701378 => Some(Self::IfcSpaceThermalLoadProperties),
3296            1721250024 => Some(Self::IfcStructuralLinearActionVarying),
3297            3987759626 => Some(Self::IfcStructuralPlanarActionVarying),
3298            3843319758 => Some(Self::IfcStructuralProfileProperties),
3299            3653947884 => Some(Self::IfcStructuralSteelProfileProperties),
3300            4070609034 => Some(Self::IfcStructuredDimensionCallout),
3301            1290481447 => Some(Self::IfcSymbolStyle),
3302            3028897424 => Some(Self::IfcTerminatorSymbol),
3303            1484833681 => Some(Self::IfcTextStyleWithBoxCharacteristics),
3304            3317419933 => Some(Self::IfcThermalMaterialProperties),
3305            1718945513 => Some(Self::IfcTimeSeriesReferenceRelationship),
3306            1637806684 => Some(Self::IfcTimeSeriesSchedule),
3307            1345879162 => Some(Self::IfcTwoDirectionRepeatFactor),
3308            3304826586 => Some(Self::IfcVertexBasedTextureMap),
3309            1065908215 => Some(Self::IfcWaterProperties),
3310            1062206242 => Some(Self::IfcCircularArcSegment2D),
3311            1186437898 => Some(Self::IfcCurveSegment2D),
3312            1945343521 => Some(Self::IfcDistanceExpression),
3313            3092502836 => Some(Self::IfcLineSegment2D),
3314            643959842 => Some(Self::IfcOrientationExpression),
3315            2595432518 => Some(Self::IfcTransitionCurveSegment2D),
3316            749761778 => Some(Self::IfcAlignment2DHorizontal),
3317            3199563722 => Some(Self::IfcAlignment2DHorizontalSegment),
3318            2483840362 => Some(Self::IfcAlignment2DSegment),
3319            3379348081 => Some(Self::IfcAlignment2DVerSegCircularArc),
3320            2029264950 => Some(Self::IfcAlignment2DVerticalSegment),
3321            3239324667 => Some(Self::IfcAlignment2DVerSegLine),
3322            4263986512 => Some(Self::IfcAlignment2DVerSegParabolicArc),
3323            53199957 => Some(Self::IfcAlignment2DVertical),
3324            3512275521 => Some(Self::IfcAlignmentCurve),
3325            _ => None,
3326        }
3327    }
3328
3329    /// Get CRC32 type ID
3330    pub fn id(&self) -> u32 {
3331        match self {
3332            Self::IfcActionRequest => 3821786052,
3333            Self::IfcActor => 2296667514,
3334            Self::IfcActorRole => 3630933823,
3335            Self::IfcActuator => 4288193352,
3336            Self::IfcActuatorType => 2874132201,
3337            Self::IfcAddress => 618182010,
3338            Self::IfcAdvancedBrep => 1635779807,
3339            Self::IfcAdvancedBrepWithVoids => 2603310189,
3340            Self::IfcAdvancedFace => 3406155212,
3341            Self::IfcAirTerminal => 1634111441,
3342            Self::IfcAirTerminalBox => 177149247,
3343            Self::IfcAirTerminalBoxType => 1411407467,
3344            Self::IfcAirTerminalType => 3352864051,
3345            Self::IfcAirToAirHeatRecovery => 2056796094,
3346            Self::IfcAirToAirHeatRecoveryType => 1871374353,
3347            Self::IfcAlarm => 3087945054,
3348            Self::IfcAlarmType => 3001207471,
3349            Self::IfcAlignment => 325726236,
3350            Self::IfcAlignmentCant => 4266260250,
3351            Self::IfcAlignmentCantSegment => 3752311538,
3352            Self::IfcAlignmentHorizontal => 1545765605,
3353            Self::IfcAlignmentHorizontalSegment => 536804194,
3354            Self::IfcAlignmentParameterSegment => 2879124712,
3355            Self::IfcAlignmentSegment => 317615605,
3356            Self::IfcAlignmentVertical => 1662888072,
3357            Self::IfcAlignmentVerticalSegment => 3633395639,
3358            Self::IfcAnnotation => 1674181508,
3359            Self::IfcAnnotationFillArea => 669184980,
3360            Self::IfcApplication => 639542469,
3361            Self::IfcAppliedValue => 411424972,
3362            Self::IfcApproval => 130549933,
3363            Self::IfcApprovalRelationship => 3869604511,
3364            Self::IfcArbitraryClosedProfileDef => 3798115385,
3365            Self::IfcArbitraryOpenProfileDef => 1310608509,
3366            Self::IfcArbitraryProfileDefWithVoids => 2705031697,
3367            Self::IfcAsset => 3460190687,
3368            Self::IfcAsymmetricIShapeProfileDef => 3207858831,
3369            Self::IfcAudioVisualAppliance => 277319702,
3370            Self::IfcAudioVisualApplianceType => 1532957894,
3371            Self::IfcAxis1Placement => 4261334040,
3372            Self::IfcAxis2Placement2D => 3125803723,
3373            Self::IfcAxis2Placement3D => 2740243338,
3374            Self::IfcAxis2PlacementLinear => 3425423356,
3375            Self::IfcBSplineCurve => 1967976161,
3376            Self::IfcBSplineCurveWithKnots => 2461110595,
3377            Self::IfcBSplineSurface => 2887950389,
3378            Self::IfcBSplineSurfaceWithKnots => 167062518,
3379            Self::IfcBeam => 753842376,
3380            Self::IfcBeamType => 819618141,
3381            Self::IfcBearing => 4196446775,
3382            Self::IfcBearingType => 3649138523,
3383            Self::IfcBlobTexture => 616511568,
3384            Self::IfcBlock => 1334484129,
3385            Self::IfcBoiler => 32344328,
3386            Self::IfcBoilerType => 231477066,
3387            Self::IfcBooleanClippingResult => 3649129432,
3388            Self::IfcBooleanResult => 2736907675,
3389            Self::IfcBorehole => 3314249567,
3390            Self::IfcBoundaryCondition => 4037036970,
3391            Self::IfcBoundaryCurve => 1136057603,
3392            Self::IfcBoundaryEdgeCondition => 1560379544,
3393            Self::IfcBoundaryFaceCondition => 3367102660,
3394            Self::IfcBoundaryNodeCondition => 1387855156,
3395            Self::IfcBoundaryNodeConditionWarping => 2069777674,
3396            Self::IfcBoundedCurve => 1260505505,
3397            Self::IfcBoundedSurface => 4182860854,
3398            Self::IfcBoundingBox => 2581212453,
3399            Self::IfcBoxedHalfSpace => 2713105998,
3400            Self::IfcBridge => 644574406,
3401            Self::IfcBridgePart => 963979645,
3402            Self::IfcBuilding => 4031249490,
3403            Self::IfcBuildingElementPart => 2979338954,
3404            Self::IfcBuildingElementPartType => 39481116,
3405            Self::IfcBuildingElementProxy => 1095909175,
3406            Self::IfcBuildingElementProxyType => 1909888760,
3407            Self::IfcBuildingStorey => 3124254112,
3408            Self::IfcBuildingSystem => 1177604601,
3409            Self::IfcBuiltElement => 1876633798,
3410            Self::IfcBuiltElementType => 1626504194,
3411            Self::IfcBuiltSystem => 3862327254,
3412            Self::IfcBurner => 2938176219,
3413            Self::IfcBurnerType => 2188180465,
3414            Self::IfcCShapeProfileDef => 2898889636,
3415            Self::IfcCableCarrierFitting => 635142910,
3416            Self::IfcCableCarrierFittingType => 395041908,
3417            Self::IfcCableCarrierSegment => 3758799889,
3418            Self::IfcCableCarrierSegmentType => 3293546465,
3419            Self::IfcCableFitting => 1051757585,
3420            Self::IfcCableFittingType => 2674252688,
3421            Self::IfcCableSegment => 4217484030,
3422            Self::IfcCableSegmentType => 1285652485,
3423            Self::IfcCaissonFoundation => 3999819293,
3424            Self::IfcCaissonFoundationType => 3203706013,
3425            Self::IfcCartesianPoint => 1123145078,
3426            Self::IfcCartesianPointList => 574549367,
3427            Self::IfcCartesianPointList2D => 1675464909,
3428            Self::IfcCartesianPointList3D => 2059837836,
3429            Self::IfcCartesianTransformationOperator => 59481748,
3430            Self::IfcCartesianTransformationOperator2D => 3749851601,
3431            Self::IfcCartesianTransformationOperator2DnonUniform => 3486308946,
3432            Self::IfcCartesianTransformationOperator3D => 3331915920,
3433            Self::IfcCartesianTransformationOperator3DnonUniform => 1416205885,
3434            Self::IfcCenterLineProfileDef => 3150382593,
3435            Self::IfcChiller => 3902619387,
3436            Self::IfcChillerType => 2951183804,
3437            Self::IfcChimney => 3296154744,
3438            Self::IfcChimneyType => 2197970202,
3439            Self::IfcCircle => 2611217952,
3440            Self::IfcCircleHollowProfileDef => 2937912522,
3441            Self::IfcCircleProfileDef => 1383045692,
3442            Self::IfcCivilElement => 1677625105,
3443            Self::IfcCivilElementType => 3893394355,
3444            Self::IfcClassification => 747523909,
3445            Self::IfcClassificationReference => 647927063,
3446            Self::IfcClosedShell => 2205249479,
3447            Self::IfcClothoid => 3497074424,
3448            Self::IfcCoil => 639361253,
3449            Self::IfcCoilType => 2301859152,
3450            Self::IfcColourRgb => 776857604,
3451            Self::IfcColourRgbList => 3285139300,
3452            Self::IfcColourSpecification => 3264961684,
3453            Self::IfcColumn => 843113511,
3454            Self::IfcColumnType => 300633059,
3455            Self::IfcCommunicationsAppliance => 3221913625,
3456            Self::IfcCommunicationsApplianceType => 400855858,
3457            Self::IfcComplexProperty => 2542286263,
3458            Self::IfcComplexPropertyTemplate => 3875453745,
3459            Self::IfcCompositeCurve => 3732776249,
3460            Self::IfcCompositeCurveOnSurface => 15328376,
3461            Self::IfcCompositeCurveSegment => 2485617015,
3462            Self::IfcCompositeProfileDef => 1485152156,
3463            Self::IfcCompressor => 3571504051,
3464            Self::IfcCompressorType => 3850581409,
3465            Self::IfcCondenser => 2272882330,
3466            Self::IfcCondenserType => 2816379211,
3467            Self::IfcConic => 2510884976,
3468            Self::IfcConnectedFaceSet => 370225590,
3469            Self::IfcConnectionCurveGeometry => 1981873012,
3470            Self::IfcConnectionGeometry => 2859738748,
3471            Self::IfcConnectionPointEccentricity => 45288368,
3472            Self::IfcConnectionPointGeometry => 2614616156,
3473            Self::IfcConnectionSurfaceGeometry => 2732653382,
3474            Self::IfcConnectionVolumeGeometry => 775493141,
3475            Self::IfcConstraint => 1959218052,
3476            Self::IfcConstructionEquipmentResource => 3898045240,
3477            Self::IfcConstructionEquipmentResourceType => 2185764099,
3478            Self::IfcConstructionMaterialResource => 1060000209,
3479            Self::IfcConstructionMaterialResourceType => 4105962743,
3480            Self::IfcConstructionProductResource => 488727124,
3481            Self::IfcConstructionProductResourceType => 1525564444,
3482            Self::IfcConstructionResource => 2559216714,
3483            Self::IfcConstructionResourceType => 2574617495,
3484            Self::IfcContext => 3419103109,
3485            Self::IfcContextDependentUnit => 3050246964,
3486            Self::IfcControl => 3293443760,
3487            Self::IfcController => 25142252,
3488            Self::IfcControllerType => 578613899,
3489            Self::IfcConversionBasedUnit => 2889183280,
3490            Self::IfcConversionBasedUnitWithOffset => 2713554722,
3491            Self::IfcConveyorSegment => 3460952963,
3492            Self::IfcConveyorSegmentType => 2940368186,
3493            Self::IfcCooledBeam => 4136498852,
3494            Self::IfcCooledBeamType => 335055490,
3495            Self::IfcCoolingTower => 3640358203,
3496            Self::IfcCoolingTowerType => 2954562838,
3497            Self::IfcCoordinateOperation => 1785450214,
3498            Self::IfcCoordinateReferenceSystem => 1466758467,
3499            Self::IfcCosineSpiral => 2000195564,
3500            Self::IfcCostItem => 3895139033,
3501            Self::IfcCostSchedule => 1419761937,
3502            Self::IfcCostValue => 602808272,
3503            Self::IfcCourse => 1502416096,
3504            Self::IfcCourseType => 4189326743,
3505            Self::IfcCovering => 1973544240,
3506            Self::IfcCoveringType => 1916426348,
3507            Self::IfcCrewResource => 3295246426,
3508            Self::IfcCrewResourceType => 1815067380,
3509            Self::IfcCsgPrimitive3D => 2506170314,
3510            Self::IfcCsgSolid => 2147822146,
3511            Self::IfcCurrencyRelationship => 539742890,
3512            Self::IfcCurtainWall => 3495092785,
3513            Self::IfcCurtainWallType => 1457835157,
3514            Self::IfcCurve => 2601014836,
3515            Self::IfcCurveBoundedPlane => 2827736869,
3516            Self::IfcCurveBoundedSurface => 2629017746,
3517            Self::IfcCurveSegment => 4212018352,
3518            Self::IfcCurveStyle => 3800577675,
3519            Self::IfcCurveStyleFont => 1105321065,
3520            Self::IfcCurveStyleFontAndScaling => 2367409068,
3521            Self::IfcCurveStyleFontPattern => 3510044353,
3522            Self::IfcCylindricalSurface => 1213902940,
3523            Self::IfcDamper => 4074379575,
3524            Self::IfcDamperType => 3961806047,
3525            Self::IfcDeepFoundation => 3426335179,
3526            Self::IfcDeepFoundationType => 1306400036,
3527            Self::IfcDerivedProfileDef => 3632507154,
3528            Self::IfcDerivedUnit => 1765591967,
3529            Self::IfcDerivedUnitElement => 1045800335,
3530            Self::IfcDimensionalExponents => 2949456006,
3531            Self::IfcDirection => 32440307,
3532            Self::IfcDirectrixCurveSweptAreaSolid => 593015953,
3533            Self::IfcDirectrixDerivedReferenceSweptAreaSolid => 4234616927,
3534            Self::IfcDiscreteAccessory => 1335981549,
3535            Self::IfcDiscreteAccessoryType => 2635815018,
3536            Self::IfcDistributionBoard => 3693000487,
3537            Self::IfcDistributionBoardType => 479945903,
3538            Self::IfcDistributionChamberElement => 1052013943,
3539            Self::IfcDistributionChamberElementType => 1599208980,
3540            Self::IfcDistributionCircuit => 562808652,
3541            Self::IfcDistributionControlElement => 1062813311,
3542            Self::IfcDistributionControlElementType => 2063403501,
3543            Self::IfcDistributionElement => 1945004755,
3544            Self::IfcDistributionElementType => 3256556792,
3545            Self::IfcDistributionFlowElement => 3040386961,
3546            Self::IfcDistributionFlowElementType => 3849074793,
3547            Self::IfcDistributionPort => 3041715199,
3548            Self::IfcDistributionSystem => 3205830791,
3549            Self::IfcDocumentInformation => 1154170062,
3550            Self::IfcDocumentInformationRelationship => 770865208,
3551            Self::IfcDocumentReference => 3732053477,
3552            Self::IfcDoor => 395920057,
3553            Self::IfcDoorLiningProperties => 2963535650,
3554            Self::IfcDoorPanelProperties => 1714330368,
3555            Self::IfcDoorType => 2323601079,
3556            Self::IfcDraughtingPreDefinedColour => 445594917,
3557            Self::IfcDraughtingPreDefinedCurveFont => 4006246654,
3558            Self::IfcDuctFitting => 342316401,
3559            Self::IfcDuctFittingType => 869906466,
3560            Self::IfcDuctSegment => 3518393246,
3561            Self::IfcDuctSegmentType => 3760055223,
3562            Self::IfcDuctSilencer => 1360408905,
3563            Self::IfcDuctSilencerType => 2030761528,
3564            Self::IfcEarthworksCut => 3071239417,
3565            Self::IfcEarthworksElement => 1077100507,
3566            Self::IfcEarthworksFill => 3376911765,
3567            Self::IfcEdge => 3900360178,
3568            Self::IfcEdgeCurve => 476780140,
3569            Self::IfcEdgeLoop => 1472233963,
3570            Self::IfcElectricAppliance => 1904799276,
3571            Self::IfcElectricApplianceType => 663422040,
3572            Self::IfcElectricDistributionBoard => 862014818,
3573            Self::IfcElectricDistributionBoardType => 2417008758,
3574            Self::IfcElectricFlowStorageDevice => 3310460725,
3575            Self::IfcElectricFlowStorageDeviceType => 3277789161,
3576            Self::IfcElectricFlowTreatmentDevice => 24726584,
3577            Self::IfcElectricFlowTreatmentDeviceType => 2142170206,
3578            Self::IfcElectricGenerator => 264262732,
3579            Self::IfcElectricGeneratorType => 1534661035,
3580            Self::IfcElectricMotor => 402227799,
3581            Self::IfcElectricMotorType => 1217240411,
3582            Self::IfcElectricTimeControl => 1003880860,
3583            Self::IfcElectricTimeControlType => 712377611,
3584            Self::IfcElement => 1758889154,
3585            Self::IfcElementAssembly => 4123344466,
3586            Self::IfcElementAssemblyType => 2397081782,
3587            Self::IfcElementComponent => 1623761950,
3588            Self::IfcElementComponentType => 2590856083,
3589            Self::IfcElementQuantity => 1883228015,
3590            Self::IfcElementType => 339256511,
3591            Self::IfcElementarySurface => 2777663545,
3592            Self::IfcEllipse => 1704287377,
3593            Self::IfcEllipseProfileDef => 2835456948,
3594            Self::IfcEnergyConversionDevice => 1658829314,
3595            Self::IfcEnergyConversionDeviceType => 2107101300,
3596            Self::IfcEngine => 2814081492,
3597            Self::IfcEngineType => 132023988,
3598            Self::IfcEvaporativeCooler => 3747195512,
3599            Self::IfcEvaporativeCoolerType => 3174744832,
3600            Self::IfcEvaporator => 484807127,
3601            Self::IfcEvaporatorType => 3390157468,
3602            Self::IfcEvent => 4148101412,
3603            Self::IfcEventTime => 211053100,
3604            Self::IfcEventType => 4024345920,
3605            Self::IfcExtendedProperties => 297599258,
3606            Self::IfcExternalInformation => 4294318154,
3607            Self::IfcExternalReference => 3200245327,
3608            Self::IfcExternalReferenceRelationship => 1437805879,
3609            Self::IfcExternalSpatialElement => 1209101575,
3610            Self::IfcExternalSpatialStructureElement => 2853485674,
3611            Self::IfcExternallyDefinedHatchStyle => 2242383968,
3612            Self::IfcExternallyDefinedSurfaceStyle => 1040185647,
3613            Self::IfcExternallyDefinedTextFont => 3548104201,
3614            Self::IfcExtrudedAreaSolid => 477187591,
3615            Self::IfcExtrudedAreaSolidTapered => 2804161546,
3616            Self::IfcFace => 2556980723,
3617            Self::IfcFaceBasedSurfaceModel => 2047409740,
3618            Self::IfcFaceBound => 1809719519,
3619            Self::IfcFaceOuterBound => 803316827,
3620            Self::IfcFaceSurface => 3008276851,
3621            Self::IfcFacetedBrep => 807026263,
3622            Self::IfcFacetedBrepWithVoids => 3737207727,
3623            Self::IfcFacility => 24185140,
3624            Self::IfcFacilityPart => 1310830890,
3625            Self::IfcFacilityPartCommon => 4228831410,
3626            Self::IfcFailureConnectionCondition => 4219587988,
3627            Self::IfcFan => 3415622556,
3628            Self::IfcFanType => 346874300,
3629            Self::IfcFastener => 647756555,
3630            Self::IfcFastenerType => 2489546625,
3631            Self::IfcFeatureElement => 2827207264,
3632            Self::IfcFeatureElementAddition => 2143335405,
3633            Self::IfcFeatureElementSubtraction => 1287392070,
3634            Self::IfcFillAreaStyle => 738692330,
3635            Self::IfcFillAreaStyleHatching => 374418227,
3636            Self::IfcFillAreaStyleTiles => 315944413,
3637            Self::IfcFilter => 819412036,
3638            Self::IfcFilterType => 1810631287,
3639            Self::IfcFireSuppressionTerminal => 1426591983,
3640            Self::IfcFireSuppressionTerminalType => 4222183408,
3641            Self::IfcFixedReferenceSweptAreaSolid => 2652556860,
3642            Self::IfcFlowController => 2058353004,
3643            Self::IfcFlowControllerType => 3907093117,
3644            Self::IfcFlowFitting => 4278956645,
3645            Self::IfcFlowFittingType => 3198132628,
3646            Self::IfcFlowInstrument => 182646315,
3647            Self::IfcFlowInstrumentType => 4037862832,
3648            Self::IfcFlowMeter => 2188021234,
3649            Self::IfcFlowMeterType => 3815607619,
3650            Self::IfcFlowMovingDevice => 3132237377,
3651            Self::IfcFlowMovingDeviceType => 1482959167,
3652            Self::IfcFlowSegment => 987401354,
3653            Self::IfcFlowSegmentType => 1834744321,
3654            Self::IfcFlowStorageDevice => 707683696,
3655            Self::IfcFlowStorageDeviceType => 1339347760,
3656            Self::IfcFlowTerminal => 2223149337,
3657            Self::IfcFlowTerminalType => 2297155007,
3658            Self::IfcFlowTreatmentDevice => 3508470533,
3659            Self::IfcFlowTreatmentDeviceType => 3009222698,
3660            Self::IfcFooting => 900683007,
3661            Self::IfcFootingType => 1893162501,
3662            Self::IfcFurnishingElement => 263784265,
3663            Self::IfcFurnishingElementType => 4238390223,
3664            Self::IfcFurniture => 1509553395,
3665            Self::IfcFurnitureType => 1268542332,
3666            Self::IfcGeographicCRS => 917726184,
3667            Self::IfcGeographicElement => 3493046030,
3668            Self::IfcGeographicElementType => 4095422895,
3669            Self::IfcGeometricCurveSet => 987898635,
3670            Self::IfcGeometricRepresentationContext => 3448662350,
3671            Self::IfcGeometricRepresentationItem => 2453401579,
3672            Self::IfcGeometricRepresentationSubContext => 4142052618,
3673            Self::IfcGeometricSet => 3590301190,
3674            Self::IfcGeomodel => 2680139844,
3675            Self::IfcGeoslice => 1971632696,
3676            Self::IfcGeotechnicalAssembly => 2713699986,
3677            Self::IfcGeotechnicalElement => 4230923436,
3678            Self::IfcGeotechnicalStratum => 1594536857,
3679            Self::IfcGradientCurve => 2898700619,
3680            Self::IfcGrid => 3009204131,
3681            Self::IfcGridAxis => 852622518,
3682            Self::IfcGridPlacement => 178086475,
3683            Self::IfcGroup => 2706460486,
3684            Self::IfcHalfSpaceSolid => 812098782,
3685            Self::IfcHeatExchanger => 3319311131,
3686            Self::IfcHeatExchangerType => 1251058090,
3687            Self::IfcHumidifier => 2068733104,
3688            Self::IfcHumidifierType => 1806887404,
3689            Self::IfcIShapeProfileDef => 1484403080,
3690            Self::IfcImageTexture => 3905492369,
3691            Self::IfcImpactProtectionDevice => 2568555532,
3692            Self::IfcImpactProtectionDeviceType => 3948183225,
3693            Self::IfcIndexedColourMap => 3570813810,
3694            Self::IfcIndexedPolyCurve => 2571569899,
3695            Self::IfcIndexedPolygonalFace => 178912537,
3696            Self::IfcIndexedPolygonalFaceWithVoids => 2294589976,
3697            Self::IfcIndexedPolygonalTextureMap => 3465909080,
3698            Self::IfcIndexedTextureMap => 1437953363,
3699            Self::IfcIndexedTriangleTextureMap => 2133299955,
3700            Self::IfcInterceptor => 4175244083,
3701            Self::IfcInterceptorType => 3946677679,
3702            Self::IfcIntersectionCurve => 3113134337,
3703            Self::IfcInventory => 2391368822,
3704            Self::IfcIrregularTimeSeries => 3741457305,
3705            Self::IfcIrregularTimeSeriesValue => 3020489413,
3706            Self::IfcJunctionBox => 2176052936,
3707            Self::IfcJunctionBoxType => 4288270099,
3708            Self::IfcKerb => 2696325953,
3709            Self::IfcKerbType => 679976338,
3710            Self::IfcLShapeProfileDef => 572779678,
3711            Self::IfcLaborResource => 3827777499,
3712            Self::IfcLaborResourceType => 428585644,
3713            Self::IfcLagTime => 1585845231,
3714            Self::IfcLamp => 76236018,
3715            Self::IfcLampType => 1051575348,
3716            Self::IfcLibraryInformation => 2655187982,
3717            Self::IfcLibraryReference => 3452421091,
3718            Self::IfcLightDistributionData => 4162380809,
3719            Self::IfcLightFixture => 629592764,
3720            Self::IfcLightFixtureType => 1161773419,
3721            Self::IfcLightIntensityDistribution => 1566485204,
3722            Self::IfcLightSource => 1402838566,
3723            Self::IfcLightSourceAmbient => 125510826,
3724            Self::IfcLightSourceDirectional => 2604431987,
3725            Self::IfcLightSourceGoniometric => 4266656042,
3726            Self::IfcLightSourcePositional => 1520743889,
3727            Self::IfcLightSourceSpot => 3422422726,
3728            Self::IfcLine => 1281925730,
3729            Self::IfcLinearElement => 2176059722,
3730            Self::IfcLinearPlacement => 388784114,
3731            Self::IfcLinearPositioningElement => 1154579445,
3732            Self::IfcLiquidTerminal => 1638804497,
3733            Self::IfcLiquidTerminalType => 1770583370,
3734            Self::IfcLocalPlacement => 2624227202,
3735            Self::IfcLoop => 1008929658,
3736            Self::IfcManifoldSolidBrep => 1425443689,
3737            Self::IfcMapConversion => 3057273783,
3738            Self::IfcMapConversionScaled => 4105526436,
3739            Self::IfcMappedItem => 2347385850,
3740            Self::IfcMarineFacility => 525669439,
3741            Self::IfcMarinePart => 976884017,
3742            Self::IfcMaterial => 1838606355,
3743            Self::IfcMaterialClassificationRelationship => 1847130766,
3744            Self::IfcMaterialConstituent => 3708119000,
3745            Self::IfcMaterialConstituentSet => 2852063980,
3746            Self::IfcMaterialDefinition => 760658860,
3747            Self::IfcMaterialDefinitionRepresentation => 2022407955,
3748            Self::IfcMaterialLayer => 248100487,
3749            Self::IfcMaterialLayerSet => 3303938423,
3750            Self::IfcMaterialLayerSetUsage => 1303795690,
3751            Self::IfcMaterialLayerWithOffsets => 1847252529,
3752            Self::IfcMaterialList => 2199411900,
3753            Self::IfcMaterialProfile => 2235152071,
3754            Self::IfcMaterialProfileSet => 164193824,
3755            Self::IfcMaterialProfileSetUsage => 3079605661,
3756            Self::IfcMaterialProfileSetUsageTapering => 3404854881,
3757            Self::IfcMaterialProfileWithOffsets => 552965576,
3758            Self::IfcMaterialProperties => 3265635763,
3759            Self::IfcMaterialRelationship => 853536259,
3760            Self::IfcMaterialUsageDefinition => 1507914824,
3761            Self::IfcMeasureWithUnit => 2597039031,
3762            Self::IfcMechanicalFastener => 377706215,
3763            Self::IfcMechanicalFastenerType => 2108223431,
3764            Self::IfcMedicalDevice => 1437502449,
3765            Self::IfcMedicalDeviceType => 1114901282,
3766            Self::IfcMember => 1073191201,
3767            Self::IfcMemberType => 3181161470,
3768            Self::IfcMetric => 3368373690,
3769            Self::IfcMirroredProfileDef => 2998442950,
3770            Self::IfcMobileTelecommunicationsAppliance => 2078563270,
3771            Self::IfcMobileTelecommunicationsApplianceType => 1950438474,
3772            Self::IfcMonetaryUnit => 2706619895,
3773            Self::IfcMooringDevice => 234836483,
3774            Self::IfcMooringDeviceType => 710110818,
3775            Self::IfcMotorConnection => 2474470126,
3776            Self::IfcMotorConnectionType => 977012517,
3777            Self::IfcNamedUnit => 1918398963,
3778            Self::IfcNavigationElement => 2182337498,
3779            Self::IfcNavigationElementType => 506776471,
3780            Self::IfcObject => 3888040117,
3781            Self::IfcObjectDefinition => 219451334,
3782            Self::IfcObjectPlacement => 3701648758,
3783            Self::IfcObjective => 2251480897,
3784            Self::IfcOccupant => 4143007308,
3785            Self::IfcOffsetCurve => 590820931,
3786            Self::IfcOffsetCurve2D => 3388369263,
3787            Self::IfcOffsetCurve3D => 3505215534,
3788            Self::IfcOffsetCurveByDistances => 2485787929,
3789            Self::IfcOpenCrossProfileDef => 182550632,
3790            Self::IfcOpenShell => 2665983363,
3791            Self::IfcOpeningElement => 3588315303,
3792            Self::IfcOrganization => 4251960020,
3793            Self::IfcOrganizationRelationship => 1411181986,
3794            Self::IfcOrientedEdge => 1029017970,
3795            Self::IfcOuterBoundaryCurve => 144952367,
3796            Self::IfcOutlet => 3694346114,
3797            Self::IfcOutletType => 2837617999,
3798            Self::IfcOwnerHistory => 1207048766,
3799            Self::IfcParameterizedProfileDef => 2529465313,
3800            Self::IfcPath => 2519244187,
3801            Self::IfcPavement => 1383356374,
3802            Self::IfcPavementType => 514975943,
3803            Self::IfcPcurve => 1682466193,
3804            Self::IfcPerformanceHistory => 2382730787,
3805            Self::IfcPermeableCoveringProperties => 3566463478,
3806            Self::IfcPermit => 3327091369,
3807            Self::IfcPerson => 2077209135,
3808            Self::IfcPersonAndOrganization => 101040310,
3809            Self::IfcPhysicalComplexQuantity => 3021840470,
3810            Self::IfcPhysicalQuantity => 2483315170,
3811            Self::IfcPhysicalSimpleQuantity => 2226359599,
3812            Self::IfcPile => 1687234759,
3813            Self::IfcPileType => 1158309216,
3814            Self::IfcPipeFitting => 310824031,
3815            Self::IfcPipeFittingType => 804291784,
3816            Self::IfcPipeSegment => 3612865200,
3817            Self::IfcPipeSegmentType => 4231323485,
3818            Self::IfcPixelTexture => 597895409,
3819            Self::IfcPlacement => 2004835150,
3820            Self::IfcPlanarBox => 603570806,
3821            Self::IfcPlanarExtent => 1663979128,
3822            Self::IfcPlane => 220341763,
3823            Self::IfcPlate => 3171933400,
3824            Self::IfcPlateType => 4017108033,
3825            Self::IfcPoint => 2067069095,
3826            Self::IfcPointByDistanceExpression => 2165702409,
3827            Self::IfcPointOnCurve => 4022376103,
3828            Self::IfcPointOnSurface => 1423911732,
3829            Self::IfcPolyLoop => 2924175390,
3830            Self::IfcPolygonalBoundedHalfSpace => 2775532180,
3831            Self::IfcPolygonalFaceSet => 2839578677,
3832            Self::IfcPolyline => 3724593414,
3833            Self::IfcPolynomialCurve => 3381221214,
3834            Self::IfcPort => 3740093272,
3835            Self::IfcPositioningElement => 1946335990,
3836            Self::IfcPostalAddress => 3355820592,
3837            Self::IfcPreDefinedColour => 759155922,
3838            Self::IfcPreDefinedCurveFont => 2559016684,
3839            Self::IfcPreDefinedItem => 3727388367,
3840            Self::IfcPreDefinedProperties => 3778827333,
3841            Self::IfcPreDefinedPropertySet => 3967405729,
3842            Self::IfcPreDefinedTextFont => 1775413392,
3843            Self::IfcPresentationItem => 677532197,
3844            Self::IfcPresentationLayerAssignment => 2022622350,
3845            Self::IfcPresentationLayerWithStyle => 1304840413,
3846            Self::IfcPresentationStyle => 3119450353,
3847            Self::IfcProcedure => 2744685151,
3848            Self::IfcProcedureType => 569719735,
3849            Self::IfcProcess => 2945172077,
3850            Self::IfcProduct => 4208778838,
3851            Self::IfcProductDefinitionShape => 673634403,
3852            Self::IfcProductRepresentation => 2095639259,
3853            Self::IfcProfileDef => 3958567839,
3854            Self::IfcProfileProperties => 2802850158,
3855            Self::IfcProject => 103090709,
3856            Self::IfcProjectLibrary => 653396225,
3857            Self::IfcProjectOrder => 2904328755,
3858            Self::IfcProjectedCRS => 3843373140,
3859            Self::IfcProjectionElement => 3651124850,
3860            Self::IfcProperty => 2598011224,
3861            Self::IfcPropertyAbstraction => 986844984,
3862            Self::IfcPropertyBoundedValue => 871118103,
3863            Self::IfcPropertyDefinition => 1680319473,
3864            Self::IfcPropertyDependencyRelationship => 148025276,
3865            Self::IfcPropertyEnumeratedValue => 4166981789,
3866            Self::IfcPropertyEnumeration => 3710013099,
3867            Self::IfcPropertyListValue => 2752243245,
3868            Self::IfcPropertyReferenceValue => 941946838,
3869            Self::IfcPropertySet => 1451395588,
3870            Self::IfcPropertySetDefinition => 3357820518,
3871            Self::IfcPropertySetTemplate => 492091185,
3872            Self::IfcPropertySingleValue => 3650150729,
3873            Self::IfcPropertyTableValue => 110355661,
3874            Self::IfcPropertyTemplate => 3521284610,
3875            Self::IfcPropertyTemplateDefinition => 1482703590,
3876            Self::IfcProtectiveDevice => 738039164,
3877            Self::IfcProtectiveDeviceTrippingUnit => 2295281155,
3878            Self::IfcProtectiveDeviceTrippingUnitType => 655969474,
3879            Self::IfcProtectiveDeviceType => 1842657554,
3880            Self::IfcPump => 90941305,
3881            Self::IfcPumpType => 2250791053,
3882            Self::IfcQuantityArea => 2044713172,
3883            Self::IfcQuantityCount => 2093928680,
3884            Self::IfcQuantityLength => 931644368,
3885            Self::IfcQuantityNumber => 2691318326,
3886            Self::IfcQuantitySet => 2090586900,
3887            Self::IfcQuantityTime => 3252649465,
3888            Self::IfcQuantityVolume => 2405470396,
3889            Self::IfcQuantityWeight => 825690147,
3890            Self::IfcRail => 3290496277,
3891            Self::IfcRailType => 1763565496,
3892            Self::IfcRailing => 2262370178,
3893            Self::IfcRailingType => 2893384427,
3894            Self::IfcRailway => 3992365140,
3895            Self::IfcRailwayPart => 1891881377,
3896            Self::IfcRamp => 3024970846,
3897            Self::IfcRampFlight => 3283111854,
3898            Self::IfcRampFlightType => 2324767716,
3899            Self::IfcRampType => 1469900589,
3900            Self::IfcRationalBSplineCurveWithKnots => 1232101972,
3901            Self::IfcRationalBSplineSurfaceWithKnots => 683857671,
3902            Self::IfcRectangleHollowProfileDef => 2770003689,
3903            Self::IfcRectangleProfileDef => 3615266464,
3904            Self::IfcRectangularPyramid => 2798486643,
3905            Self::IfcRectangularTrimmedSurface => 3454111270,
3906            Self::IfcRecurrencePattern => 3915482550,
3907            Self::IfcReference => 2433181523,
3908            Self::IfcReferent => 4021432810,
3909            Self::IfcRegularTimeSeries => 3413951693,
3910            Self::IfcReinforcedSoil => 3798194928,
3911            Self::IfcReinforcementBarProperties => 1580146022,
3912            Self::IfcReinforcementDefinitionProperties => 3765753017,
3913            Self::IfcReinforcingBar => 979691226,
3914            Self::IfcReinforcingBarType => 2572171363,
3915            Self::IfcReinforcingElement => 3027567501,
3916            Self::IfcReinforcingElementType => 964333572,
3917            Self::IfcReinforcingMesh => 2320036040,
3918            Self::IfcReinforcingMeshType => 2310774935,
3919            Self::IfcRelAdheresToElement => 3818125796,
3920            Self::IfcRelAggregates => 160246688,
3921            Self::IfcRelAssigns => 3939117080,
3922            Self::IfcRelAssignsToActor => 1683148259,
3923            Self::IfcRelAssignsToControl => 2495723537,
3924            Self::IfcRelAssignsToGroup => 1307041759,
3925            Self::IfcRelAssignsToGroupByFactor => 1027710054,
3926            Self::IfcRelAssignsToProcess => 4278684876,
3927            Self::IfcRelAssignsToProduct => 2857406711,
3928            Self::IfcRelAssignsToResource => 205026976,
3929            Self::IfcRelAssociates => 1865459582,
3930            Self::IfcRelAssociatesApproval => 4095574036,
3931            Self::IfcRelAssociatesClassification => 919958153,
3932            Self::IfcRelAssociatesConstraint => 2728634034,
3933            Self::IfcRelAssociatesDocument => 982818633,
3934            Self::IfcRelAssociatesLibrary => 3840914261,
3935            Self::IfcRelAssociatesMaterial => 2655215786,
3936            Self::IfcRelAssociatesProfileDef => 1033248425,
3937            Self::IfcRelConnects => 826625072,
3938            Self::IfcRelConnectsElements => 1204542856,
3939            Self::IfcRelConnectsPathElements => 3945020480,
3940            Self::IfcRelConnectsPortToElement => 4201705270,
3941            Self::IfcRelConnectsPorts => 3190031847,
3942            Self::IfcRelConnectsStructuralActivity => 2127690289,
3943            Self::IfcRelConnectsStructuralMember => 1638771189,
3944            Self::IfcRelConnectsWithEccentricity => 504942748,
3945            Self::IfcRelConnectsWithRealizingElements => 3678494232,
3946            Self::IfcRelContainedInSpatialStructure => 3242617779,
3947            Self::IfcRelCoversBldgElements => 886880790,
3948            Self::IfcRelCoversSpaces => 2802773753,
3949            Self::IfcRelDeclares => 2565941209,
3950            Self::IfcRelDecomposes => 2551354335,
3951            Self::IfcRelDefines => 693640335,
3952            Self::IfcRelDefinesByObject => 1462361463,
3953            Self::IfcRelDefinesByProperties => 4186316022,
3954            Self::IfcRelDefinesByTemplate => 307848117,
3955            Self::IfcRelDefinesByType => 781010003,
3956            Self::IfcRelFillsElement => 3940055652,
3957            Self::IfcRelFlowControlElements => 279856033,
3958            Self::IfcRelInterferesElements => 427948657,
3959            Self::IfcRelNests => 3268803585,
3960            Self::IfcRelPositions => 1441486842,
3961            Self::IfcRelProjectsElement => 750771296,
3962            Self::IfcRelReferencedInSpatialStructure => 1245217292,
3963            Self::IfcRelSequence => 4122056220,
3964            Self::IfcRelServicesBuildings => 366585022,
3965            Self::IfcRelSpaceBoundary => 3451746338,
3966            Self::IfcRelSpaceBoundary1stLevel => 3523091289,
3967            Self::IfcRelSpaceBoundary2ndLevel => 1521410863,
3968            Self::IfcRelVoidsElement => 1401173127,
3969            Self::IfcRelationship => 478536968,
3970            Self::IfcReparametrisedCompositeCurveSegment => 816062949,
3971            Self::IfcRepresentation => 1076942058,
3972            Self::IfcRepresentationContext => 3377609919,
3973            Self::IfcRepresentationItem => 3008791417,
3974            Self::IfcRepresentationMap => 1660063152,
3975            Self::IfcResource => 2914609552,
3976            Self::IfcResourceApprovalRelationship => 2943643501,
3977            Self::IfcResourceConstraintRelationship => 1608871552,
3978            Self::IfcResourceLevelRelationship => 2439245199,
3979            Self::IfcResourceTime => 1042787934,
3980            Self::IfcRevolvedAreaSolid => 1856042241,
3981            Self::IfcRevolvedAreaSolidTapered => 3243963512,
3982            Self::IfcRightCircularCone => 4158566097,
3983            Self::IfcRightCircularCylinder => 3626867408,
3984            Self::IfcRigidOperation => 1794013214,
3985            Self::IfcRoad => 146592293,
3986            Self::IfcRoadPart => 550521510,
3987            Self::IfcRoof => 2016517767,
3988            Self::IfcRoofType => 2781568857,
3989            Self::IfcRoot => 2341007311,
3990            Self::IfcRoundedRectangleProfileDef => 2778083089,
3991            Self::IfcSIUnit => 448429030,
3992            Self::IfcSanitaryTerminal => 3053780830,
3993            Self::IfcSanitaryTerminalType => 1768891740,
3994            Self::IfcSchedulingTime => 1054537805,
3995            Self::IfcSeamCurve => 2157484638,
3996            Self::IfcSecondOrderPolynomialSpiral => 3649235739,
3997            Self::IfcSectionProperties => 2042790032,
3998            Self::IfcSectionReinforcementProperties => 4165799628,
3999            Self::IfcSectionedSolid => 1862484736,
4000            Self::IfcSectionedSolidHorizontal => 1290935644,
4001            Self::IfcSectionedSpine => 1509187699,
4002            Self::IfcSectionedSurface => 1356537516,
4003            Self::IfcSegment => 823603102,
4004            Self::IfcSegmentedReferenceCurve => 544395925,
4005            Self::IfcSensor => 4086658281,
4006            Self::IfcSensorType => 1783015770,
4007            Self::IfcSeventhOrderPolynomialSpiral => 1027922057,
4008            Self::IfcShadingDevice => 1329646415,
4009            Self::IfcShadingDeviceType => 4074543187,
4010            Self::IfcShapeAspect => 867548509,
4011            Self::IfcShapeModel => 3982875396,
4012            Self::IfcShapeRepresentation => 4240577450,
4013            Self::IfcShellBasedSurfaceModel => 4124623270,
4014            Self::IfcSign => 33720170,
4015            Self::IfcSignType => 3599934289,
4016            Self::IfcSignal => 991950508,
4017            Self::IfcSignalType => 1894708472,
4018            Self::IfcSimpleProperty => 3692461612,
4019            Self::IfcSimplePropertyTemplate => 3663146110,
4020            Self::IfcSineSpiral => 42703149,
4021            Self::IfcSite => 4097777520,
4022            Self::IfcSlab => 1529196076,
4023            Self::IfcSlabType => 2533589738,
4024            Self::IfcSlippageConnectionCondition => 2609359061,
4025            Self::IfcSolarDevice => 3420628829,
4026            Self::IfcSolarDeviceType => 1072016465,
4027            Self::IfcSolidModel => 723233188,
4028            Self::IfcSpace => 3856911033,
4029            Self::IfcSpaceHeater => 1999602285,
4030            Self::IfcSpaceHeaterType => 1305183839,
4031            Self::IfcSpaceType => 3812236995,
4032            Self::IfcSpatialElement => 1412071761,
4033            Self::IfcSpatialElementType => 710998568,
4034            Self::IfcSpatialStructureElement => 2706606064,
4035            Self::IfcSpatialStructureElementType => 3893378262,
4036            Self::IfcSpatialZone => 463610769,
4037            Self::IfcSpatialZoneType => 2481509218,
4038            Self::IfcSphere => 451544542,
4039            Self::IfcSphericalSurface => 4015995234,
4040            Self::IfcSpiral => 2735484536,
4041            Self::IfcStackTerminal => 1404847402,
4042            Self::IfcStackTerminalType => 3112655638,
4043            Self::IfcStair => 331165859,
4044            Self::IfcStairFlight => 4252922144,
4045            Self::IfcStairFlightType => 1039846685,
4046            Self::IfcStairType => 338393293,
4047            Self::IfcStructuralAction => 682877961,
4048            Self::IfcStructuralActivity => 3544373492,
4049            Self::IfcStructuralAnalysisModel => 2515109513,
4050            Self::IfcStructuralConnection => 1179482911,
4051            Self::IfcStructuralConnectionCondition => 2273995522,
4052            Self::IfcStructuralCurveAction => 1004757350,
4053            Self::IfcStructuralCurveConnection => 4243806635,
4054            Self::IfcStructuralCurveMember => 214636428,
4055            Self::IfcStructuralCurveMemberVarying => 2445595289,
4056            Self::IfcStructuralCurveReaction => 2757150158,
4057            Self::IfcStructuralItem => 3136571912,
4058            Self::IfcStructuralLinearAction => 1807405624,
4059            Self::IfcStructuralLoad => 2162789131,
4060            Self::IfcStructuralLoadCase => 385403989,
4061            Self::IfcStructuralLoadConfiguration => 3478079324,
4062            Self::IfcStructuralLoadGroup => 1252848954,
4063            Self::IfcStructuralLoadLinearForce => 1595516126,
4064            Self::IfcStructuralLoadOrResult => 609421318,
4065            Self::IfcStructuralLoadPlanarForce => 2668620305,
4066            Self::IfcStructuralLoadSingleDisplacement => 2473145415,
4067            Self::IfcStructuralLoadSingleDisplacementDistortion => 1973038258,
4068            Self::IfcStructuralLoadSingleForce => 1597423693,
4069            Self::IfcStructuralLoadSingleForceWarping => 1190533807,
4070            Self::IfcStructuralLoadStatic => 2525727697,
4071            Self::IfcStructuralLoadTemperature => 3408363356,
4072            Self::IfcStructuralMember => 530289379,
4073            Self::IfcStructuralPlanarAction => 1621171031,
4074            Self::IfcStructuralPointAction => 2082059205,
4075            Self::IfcStructuralPointConnection => 734778138,
4076            Self::IfcStructuralPointReaction => 1235345126,
4077            Self::IfcStructuralReaction => 3689010777,
4078            Self::IfcStructuralResultGroup => 2986769608,
4079            Self::IfcStructuralSurfaceAction => 3657597509,
4080            Self::IfcStructuralSurfaceConnection => 1975003073,
4081            Self::IfcStructuralSurfaceMember => 3979015343,
4082            Self::IfcStructuralSurfaceMemberVarying => 2218152070,
4083            Self::IfcStructuralSurfaceReaction => 603775116,
4084            Self::IfcStyleModel => 2830218821,
4085            Self::IfcStyledItem => 3958052878,
4086            Self::IfcStyledRepresentation => 3049322572,
4087            Self::IfcSubContractResource => 148013059,
4088            Self::IfcSubContractResourceType => 4095615324,
4089            Self::IfcSubedge => 2233826070,
4090            Self::IfcSurface => 2513912981,
4091            Self::IfcSurfaceCurve => 699246055,
4092            Self::IfcSurfaceCurveSweptAreaSolid => 2028607225,
4093            Self::IfcSurfaceFeature => 3101698114,
4094            Self::IfcSurfaceOfLinearExtrusion => 2809605785,
4095            Self::IfcSurfaceOfRevolution => 4124788165,
4096            Self::IfcSurfaceReinforcementArea => 2934153892,
4097            Self::IfcSurfaceStyle => 1300840506,
4098            Self::IfcSurfaceStyleLighting => 3303107099,
4099            Self::IfcSurfaceStyleRefraction => 1607154358,
4100            Self::IfcSurfaceStyleRendering => 1878645084,
4101            Self::IfcSurfaceStyleShading => 846575682,
4102            Self::IfcSurfaceStyleWithTextures => 1351298697,
4103            Self::IfcSurfaceTexture => 626085974,
4104            Self::IfcSweptAreaSolid => 2247615214,
4105            Self::IfcSweptDiskSolid => 1260650574,
4106            Self::IfcSweptDiskSolidPolygonal => 1096409881,
4107            Self::IfcSweptSurface => 230924584,
4108            Self::IfcSwitchingDevice => 1162798199,
4109            Self::IfcSwitchingDeviceType => 2315554128,
4110            Self::IfcSystem => 2254336722,
4111            Self::IfcSystemFurnitureElement => 413509423,
4112            Self::IfcSystemFurnitureElementType => 1580310250,
4113            Self::IfcTShapeProfileDef => 3071757647,
4114            Self::IfcTable => 985171141,
4115            Self::IfcTableColumn => 2043862942,
4116            Self::IfcTableRow => 531007025,
4117            Self::IfcTank => 812556717,
4118            Self::IfcTankType => 5716631,
4119            Self::IfcTask => 3473067441,
4120            Self::IfcTaskTime => 1549132990,
4121            Self::IfcTaskTimeRecurring => 2771591690,
4122            Self::IfcTaskType => 3206491090,
4123            Self::IfcTelecomAddress => 912023232,
4124            Self::IfcTendon => 3824725483,
4125            Self::IfcTendonAnchor => 2347447852,
4126            Self::IfcTendonAnchorType => 3081323446,
4127            Self::IfcTendonConduit => 3663046924,
4128            Self::IfcTendonConduitType => 2281632017,
4129            Self::IfcTendonType => 2415094496,
4130            Self::IfcTessellatedFaceSet => 2387106220,
4131            Self::IfcTessellatedItem => 901063453,
4132            Self::IfcTextLiteral => 4282788508,
4133            Self::IfcTextLiteralWithExtent => 3124975700,
4134            Self::IfcTextStyle => 1447204868,
4135            Self::IfcTextStyleFontModel => 1983826977,
4136            Self::IfcTextStyleForDefinedFont => 2636378356,
4137            Self::IfcTextStyleTextModel => 1640371178,
4138            Self::IfcTextureCoordinate => 280115917,
4139            Self::IfcTextureCoordinateGenerator => 1742049831,
4140            Self::IfcTextureCoordinateIndices => 222769930,
4141            Self::IfcTextureCoordinateIndicesWithVoids => 1010789467,
4142            Self::IfcTextureMap => 2552916305,
4143            Self::IfcTextureVertex => 1210645708,
4144            Self::IfcTextureVertexList => 3611470254,
4145            Self::IfcThirdOrderPolynomialSpiral => 782932809,
4146            Self::IfcTimePeriod => 1199560280,
4147            Self::IfcTimeSeries => 3101149627,
4148            Self::IfcTimeSeriesValue => 581633288,
4149            Self::IfcTopologicalRepresentationItem => 1377556343,
4150            Self::IfcTopologyRepresentation => 1735638870,
4151            Self::IfcToroidalSurface => 1935646853,
4152            Self::IfcTrackElement => 3425753595,
4153            Self::IfcTrackElementType => 618700268,
4154            Self::IfcTransformer => 3825984169,
4155            Self::IfcTransformerType => 1692211062,
4156            Self::IfcTransportElement => 1620046519,
4157            Self::IfcTransportElementType => 2097647324,
4158            Self::IfcTransportationDevice => 1953115116,
4159            Self::IfcTransportationDeviceType => 3665877780,
4160            Self::IfcTrapeziumProfileDef => 2715220739,
4161            Self::IfcTriangulatedFaceSet => 2916149573,
4162            Self::IfcTriangulatedIrregularNetwork => 1229763772,
4163            Self::IfcTrimmedCurve => 3593883385,
4164            Self::IfcTubeBundle => 3026737570,
4165            Self::IfcTubeBundleType => 1600972822,
4166            Self::IfcTypeObject => 1628702193,
4167            Self::IfcTypeProcess => 3736923433,
4168            Self::IfcTypeProduct => 2347495698,
4169            Self::IfcTypeResource => 3698973494,
4170            Self::IfcUShapeProfileDef => 427810014,
4171            Self::IfcUnitAssignment => 180925521,
4172            Self::IfcUnitaryControlElement => 630975310,
4173            Self::IfcUnitaryControlElementType => 3179687236,
4174            Self::IfcUnitaryEquipment => 4292641817,
4175            Self::IfcUnitaryEquipmentType => 1911125066,
4176            Self::IfcValve => 4207607924,
4177            Self::IfcValveType => 728799441,
4178            Self::IfcVector => 1417489154,
4179            Self::IfcVehicle => 840318589,
4180            Self::IfcVehicleType => 3651464721,
4181            Self::IfcVertex => 2799835756,
4182            Self::IfcVertexLoop => 2759199220,
4183            Self::IfcVertexPoint => 1907098498,
4184            Self::IfcVibrationDamper => 1530820697,
4185            Self::IfcVibrationDamperType => 3956297820,
4186            Self::IfcVibrationIsolator => 2391383451,
4187            Self::IfcVibrationIsolatorType => 3313531582,
4188            Self::IfcVirtualElement => 2769231204,
4189            Self::IfcVirtualGridIntersection => 891718957,
4190            Self::IfcVoidingFeature => 926996030,
4191            Self::IfcWall => 2391406946,
4192            Self::IfcWallStandardCase => 3512223829,
4193            Self::IfcWallType => 1898987631,
4194            Self::IfcWasteTerminal => 4237592921,
4195            Self::IfcWasteTerminalType => 1133259667,
4196            Self::IfcWellKnownText => 1175146630,
4197            Self::IfcWindow => 3304561284,
4198            Self::IfcWindowLiningProperties => 336235671,
4199            Self::IfcWindowPanelProperties => 512836454,
4200            Self::IfcWindowType => 4009809668,
4201            Self::IfcWorkCalendar => 4088093105,
4202            Self::IfcWorkControl => 1028945134,
4203            Self::IfcWorkPlan => 4218914973,
4204            Self::IfcWorkSchedule => 3342526732,
4205            Self::IfcWorkTime => 1236880293,
4206            Self::IfcZShapeProfileDef => 2543172580,
4207            Self::IfcZone => 1033361043,
4208            Self::IfcBeamStandardCase => 2906023776,
4209            Self::IfcBuildingElement => 3299480353,
4210            Self::IfcBuildingElementType => 1950629157,
4211            Self::IfcColumnStandardCase => 905975707,
4212            Self::IfcDoorStandardCase => 3242481149,
4213            Self::IfcDoorStyle => 526551008,
4214            Self::IfcMemberStandardCase => 1911478936,
4215            Self::IfcOpeningStandardCase => 3079942009,
4216            Self::IfcPlateStandardCase => 1156407060,
4217            Self::IfcPresentationStyleAssignment => 2417041796,
4218            Self::IfcProxy => 3219374653,
4219            Self::IfcSlabElementedCase => 3127900445,
4220            Self::IfcSlabStandardCase => 3027962421,
4221            Self::IfcWallElementedCase => 4156078855,
4222            Self::IfcWindowStandardCase => 486154966,
4223            Self::IfcWindowStyle => 1299126871,
4224            Self::Ifc2DCompositeCurve => 1213861670,
4225            Self::IfcAngularDimension => 2470393545,
4226            Self::IfcAnnotationCurveOccurrence => 3288037868,
4227            Self::IfcAnnotationFillAreaOccurrence => 2265737646,
4228            Self::IfcAnnotationOccurrence => 2442683028,
4229            Self::IfcAnnotationSurface => 1302238472,
4230            Self::IfcAnnotationSurfaceOccurrence => 962685235,
4231            Self::IfcAnnotationSymbolOccurrence => 3612888222,
4232            Self::IfcAnnotationTextOccurrence => 2297822566,
4233            Self::IfcAppliedValueRelationship => 1110488051,
4234            Self::IfcApprovalActorRelationship => 2080292479,
4235            Self::IfcApprovalPropertyRelationship => 390851274,
4236            Self::IfcBezierCurve => 1916977116,
4237            Self::IfcBuildingElementComponent => 52481810,
4238            Self::IfcCalendarDate => 622194075,
4239            Self::IfcChamferEdgeFeature => 2454782716,
4240            Self::IfcClassificationItem => 1767535486,
4241            Self::IfcClassificationItemRelationship => 1098599126,
4242            Self::IfcClassificationNotation => 938368621,
4243            Self::IfcClassificationNotationFacet => 3639012971,
4244            Self::IfcCondition => 2188551683,
4245            Self::IfcConditionCriterion => 1163958913,
4246            Self::IfcConnectionPortGeometry => 4257277454,
4247            Self::IfcConstraintAggregationRelationship => 1658513725,
4248            Self::IfcConstraintClassificationRelationship => 613356794,
4249            Self::IfcConstraintRelationship => 347226245,
4250            Self::IfcCoordinatedUniversalTimeOffset => 1065062679,
4251            Self::IfcCraneRailAShapeProfileDef => 4133800736,
4252            Self::IfcCraneRailFShapeProfileDef => 194851669,
4253            Self::IfcDateAndTime => 1072939445,
4254            Self::IfcDefinedSymbol => 693772133,
4255            Self::IfcDiameterDimension => 4147604152,
4256            Self::IfcDimensionCalloutRelationship => 2273265877,
4257            Self::IfcDimensionCurve => 606661476,
4258            Self::IfcDimensionCurveDirectedCallout => 681481545,
4259            Self::IfcDimensionCurveTerminator => 4054601972,
4260            Self::IfcDimensionPair => 1694125774,
4261            Self::IfcDocumentElectronicFormat => 1376555844,
4262            Self::IfcDraughtingCallout => 3073041342,
4263            Self::IfcDraughtingCalloutRelationship => 3796139169,
4264            Self::IfcDraughtingPreDefinedTextFont => 4170525392,
4265            Self::IfcEdgeFeature => 855621170,
4266            Self::IfcElectricDistributionPoint => 3700593921,
4267            Self::IfcElectricHeaterType => 1365060375,
4268            Self::IfcElectricalBaseProperties => 360485395,
4269            Self::IfcElectricalCircuit => 1634875225,
4270            Self::IfcElectricalElement => 857184966,
4271            Self::IfcEnergyProperties => 80994333,
4272            Self::IfcEnvironmentalImpactValue => 1648886627,
4273            Self::IfcEquipmentElement => 1962604670,
4274            Self::IfcEquipmentStandard => 3272907226,
4275            Self::IfcExtendedMaterialProperties => 1860660968,
4276            Self::IfcExternallyDefinedSymbol => 3207319532,
4277            Self::IfcFillAreaStyleTileSymbolWithStyle => 4203026998,
4278            Self::IfcFluidFlowProperties => 3455213021,
4279            Self::IfcFuelProperties => 3857492461,
4280            Self::IfcFurnitureStandard => 814719939,
4281            Self::IfcGasTerminalType => 200128114,
4282            Self::IfcGeneralMaterialProperties => 803998398,
4283            Self::IfcGeneralProfileProperties => 1446786286,
4284            Self::IfcHygroscopicMaterialProperties => 2445078500,
4285            Self::IfcLinearDimension => 2506943328,
4286            Self::IfcLocalTime => 30780891,
4287            Self::IfcMechanicalConcreteMaterialProperties => 1430189142,
4288            Self::IfcMechanicalMaterialProperties => 4256014907,
4289            Self::IfcMechanicalSteelMaterialProperties => 677618848,
4290            Self::IfcMove => 1916936684,
4291            Self::IfcOneDirectionRepeatFactor => 2833995503,
4292            Self::IfcOpticalMaterialProperties => 1227763645,
4293            Self::IfcOrderAction => 3425660407,
4294            Self::IfcPreDefinedDimensionSymbol => 433424934,
4295            Self::IfcPreDefinedPointMarkerSymbol => 179317114,
4296            Self::IfcPreDefinedSymbol => 990879717,
4297            Self::IfcPreDefinedTerminatorSymbol => 3213052703,
4298            Self::IfcProductsOfCombustionProperties => 2267347899,
4299            Self::IfcProjectOrderRecord => 3642467123,
4300            Self::IfcProjectionCurve => 4194566429,
4301            Self::IfcPropertyConstraintRelationship => 3896028662,
4302            Self::IfcRadiusDimension => 3248260540,
4303            Self::IfcRationalBezierCurve => 3055160366,
4304            Self::IfcReferencesValueDocument => 2692823254,
4305            Self::IfcRelAssignsTasks => 2863920197,
4306            Self::IfcRelAssignsToProjectOrder => 3372526763,
4307            Self::IfcRelAssociatesAppliedValue => 1327628568,
4308            Self::IfcRelAssociatesProfileProperties => 2851387026,
4309            Self::IfcRelConnectsStructuralElement => 3912681535,
4310            Self::IfcRelInteractionRequirements => 4189434867,
4311            Self::IfcRelOccupiesSpaces => 2051452291,
4312            Self::IfcRelOverridesProperties => 202636808,
4313            Self::IfcRelSchedulesCostItems => 1058617721,
4314            Self::IfcRelaxation => 1222501353,
4315            Self::IfcRibPlateProfileProperties => 3679540991,
4316            Self::IfcRoundedEdgeFeature => 1376911519,
4317            Self::IfcScheduleTimeControl => 3517283431,
4318            Self::IfcServiceLife => 4105383287,
4319            Self::IfcServiceLifeFactor => 2411513650,
4320            Self::IfcSoundProperties => 2485662743,
4321            Self::IfcSoundValue => 1202362311,
4322            Self::IfcSpaceProgram => 652456506,
4323            Self::IfcSpaceThermalLoadProperties => 390701378,
4324            Self::IfcStructuralLinearActionVarying => 1721250024,
4325            Self::IfcStructuralPlanarActionVarying => 3987759626,
4326            Self::IfcStructuralProfileProperties => 3843319758,
4327            Self::IfcStructuralSteelProfileProperties => 3653947884,
4328            Self::IfcStructuredDimensionCallout => 4070609034,
4329            Self::IfcSymbolStyle => 1290481447,
4330            Self::IfcTerminatorSymbol => 3028897424,
4331            Self::IfcTextStyleWithBoxCharacteristics => 1484833681,
4332            Self::IfcThermalMaterialProperties => 3317419933,
4333            Self::IfcTimeSeriesReferenceRelationship => 1718945513,
4334            Self::IfcTimeSeriesSchedule => 1637806684,
4335            Self::IfcTwoDirectionRepeatFactor => 1345879162,
4336            Self::IfcVertexBasedTextureMap => 3304826586,
4337            Self::IfcWaterProperties => 1065908215,
4338            Self::IfcCircularArcSegment2D => 1062206242,
4339            Self::IfcCurveSegment2D => 1186437898,
4340            Self::IfcDistanceExpression => 1945343521,
4341            Self::IfcLineSegment2D => 3092502836,
4342            Self::IfcOrientationExpression => 643959842,
4343            Self::IfcTransitionCurveSegment2D => 2595432518,
4344            Self::IfcAlignment2DHorizontal => 749761778,
4345            Self::IfcAlignment2DHorizontalSegment => 3199563722,
4346            Self::IfcAlignment2DSegment => 2483840362,
4347            Self::IfcAlignment2DVerSegCircularArc => 3379348081,
4348            Self::IfcAlignment2DVerticalSegment => 2029264950,
4349            Self::IfcAlignment2DVerSegLine => 3239324667,
4350            Self::IfcAlignment2DVerSegParabolicArc => 4263986512,
4351            Self::IfcAlignment2DVertical => 53199957,
4352            Self::IfcAlignmentCurve => 3512275521,
4353            Self::Unknown(unknown) => unknown.id(),
4354        }
4355    }
4356
4357    /// Get string representation (uppercase)
4358    pub fn as_str(&self) -> &str {
4359        match self {
4360            Self::IfcActionRequest => "IFCACTIONREQUEST",
4361            Self::IfcActor => "IFCACTOR",
4362            Self::IfcActorRole => "IFCACTORROLE",
4363            Self::IfcActuator => "IFCACTUATOR",
4364            Self::IfcActuatorType => "IFCACTUATORTYPE",
4365            Self::IfcAddress => "IFCADDRESS",
4366            Self::IfcAdvancedBrep => "IFCADVANCEDBREP",
4367            Self::IfcAdvancedBrepWithVoids => "IFCADVANCEDBREPWITHVOIDS",
4368            Self::IfcAdvancedFace => "IFCADVANCEDFACE",
4369            Self::IfcAirTerminal => "IFCAIRTERMINAL",
4370            Self::IfcAirTerminalBox => "IFCAIRTERMINALBOX",
4371            Self::IfcAirTerminalBoxType => "IFCAIRTERMINALBOXTYPE",
4372            Self::IfcAirTerminalType => "IFCAIRTERMINALTYPE",
4373            Self::IfcAirToAirHeatRecovery => "IFCAIRTOAIRHEATRECOVERY",
4374            Self::IfcAirToAirHeatRecoveryType => "IFCAIRTOAIRHEATRECOVERYTYPE",
4375            Self::IfcAlarm => "IFCALARM",
4376            Self::IfcAlarmType => "IFCALARMTYPE",
4377            Self::IfcAlignment => "IFCALIGNMENT",
4378            Self::IfcAlignmentCant => "IFCALIGNMENTCANT",
4379            Self::IfcAlignmentCantSegment => "IFCALIGNMENTCANTSEGMENT",
4380            Self::IfcAlignmentHorizontal => "IFCALIGNMENTHORIZONTAL",
4381            Self::IfcAlignmentHorizontalSegment => "IFCALIGNMENTHORIZONTALSEGMENT",
4382            Self::IfcAlignmentParameterSegment => "IFCALIGNMENTPARAMETERSEGMENT",
4383            Self::IfcAlignmentSegment => "IFCALIGNMENTSEGMENT",
4384            Self::IfcAlignmentVertical => "IFCALIGNMENTVERTICAL",
4385            Self::IfcAlignmentVerticalSegment => "IFCALIGNMENTVERTICALSEGMENT",
4386            Self::IfcAnnotation => "IFCANNOTATION",
4387            Self::IfcAnnotationFillArea => "IFCANNOTATIONFILLAREA",
4388            Self::IfcApplication => "IFCAPPLICATION",
4389            Self::IfcAppliedValue => "IFCAPPLIEDVALUE",
4390            Self::IfcApproval => "IFCAPPROVAL",
4391            Self::IfcApprovalRelationship => "IFCAPPROVALRELATIONSHIP",
4392            Self::IfcArbitraryClosedProfileDef => "IFCARBITRARYCLOSEDPROFILEDEF",
4393            Self::IfcArbitraryOpenProfileDef => "IFCARBITRARYOPENPROFILEDEF",
4394            Self::IfcArbitraryProfileDefWithVoids => "IFCARBITRARYPROFILEDEFWITHVOIDS",
4395            Self::IfcAsset => "IFCASSET",
4396            Self::IfcAsymmetricIShapeProfileDef => "IFCASYMMETRICISHAPEPROFILEDEF",
4397            Self::IfcAudioVisualAppliance => "IFCAUDIOVISUALAPPLIANCE",
4398            Self::IfcAudioVisualApplianceType => "IFCAUDIOVISUALAPPLIANCETYPE",
4399            Self::IfcAxis1Placement => "IFCAXIS1PLACEMENT",
4400            Self::IfcAxis2Placement2D => "IFCAXIS2PLACEMENT2D",
4401            Self::IfcAxis2Placement3D => "IFCAXIS2PLACEMENT3D",
4402            Self::IfcAxis2PlacementLinear => "IFCAXIS2PLACEMENTLINEAR",
4403            Self::IfcBSplineCurve => "IFCBSPLINECURVE",
4404            Self::IfcBSplineCurveWithKnots => "IFCBSPLINECURVEWITHKNOTS",
4405            Self::IfcBSplineSurface => "IFCBSPLINESURFACE",
4406            Self::IfcBSplineSurfaceWithKnots => "IFCBSPLINESURFACEWITHKNOTS",
4407            Self::IfcBeam => "IFCBEAM",
4408            Self::IfcBeamType => "IFCBEAMTYPE",
4409            Self::IfcBearing => "IFCBEARING",
4410            Self::IfcBearingType => "IFCBEARINGTYPE",
4411            Self::IfcBlobTexture => "IFCBLOBTEXTURE",
4412            Self::IfcBlock => "IFCBLOCK",
4413            Self::IfcBoiler => "IFCBOILER",
4414            Self::IfcBoilerType => "IFCBOILERTYPE",
4415            Self::IfcBooleanClippingResult => "IFCBOOLEANCLIPPINGRESULT",
4416            Self::IfcBooleanResult => "IFCBOOLEANRESULT",
4417            Self::IfcBorehole => "IFCBOREHOLE",
4418            Self::IfcBoundaryCondition => "IFCBOUNDARYCONDITION",
4419            Self::IfcBoundaryCurve => "IFCBOUNDARYCURVE",
4420            Self::IfcBoundaryEdgeCondition => "IFCBOUNDARYEDGECONDITION",
4421            Self::IfcBoundaryFaceCondition => "IFCBOUNDARYFACECONDITION",
4422            Self::IfcBoundaryNodeCondition => "IFCBOUNDARYNODECONDITION",
4423            Self::IfcBoundaryNodeConditionWarping => "IFCBOUNDARYNODECONDITIONWARPING",
4424            Self::IfcBoundedCurve => "IFCBOUNDEDCURVE",
4425            Self::IfcBoundedSurface => "IFCBOUNDEDSURFACE",
4426            Self::IfcBoundingBox => "IFCBOUNDINGBOX",
4427            Self::IfcBoxedHalfSpace => "IFCBOXEDHALFSPACE",
4428            Self::IfcBridge => "IFCBRIDGE",
4429            Self::IfcBridgePart => "IFCBRIDGEPART",
4430            Self::IfcBuilding => "IFCBUILDING",
4431            Self::IfcBuildingElementPart => "IFCBUILDINGELEMENTPART",
4432            Self::IfcBuildingElementPartType => "IFCBUILDINGELEMENTPARTTYPE",
4433            Self::IfcBuildingElementProxy => "IFCBUILDINGELEMENTPROXY",
4434            Self::IfcBuildingElementProxyType => "IFCBUILDINGELEMENTPROXYTYPE",
4435            Self::IfcBuildingStorey => "IFCBUILDINGSTOREY",
4436            Self::IfcBuildingSystem => "IFCBUILDINGSYSTEM",
4437            Self::IfcBuiltElement => "IFCBUILTELEMENT",
4438            Self::IfcBuiltElementType => "IFCBUILTELEMENTTYPE",
4439            Self::IfcBuiltSystem => "IFCBUILTSYSTEM",
4440            Self::IfcBurner => "IFCBURNER",
4441            Self::IfcBurnerType => "IFCBURNERTYPE",
4442            Self::IfcCShapeProfileDef => "IFCCSHAPEPROFILEDEF",
4443            Self::IfcCableCarrierFitting => "IFCCABLECARRIERFITTING",
4444            Self::IfcCableCarrierFittingType => "IFCCABLECARRIERFITTINGTYPE",
4445            Self::IfcCableCarrierSegment => "IFCCABLECARRIERSEGMENT",
4446            Self::IfcCableCarrierSegmentType => "IFCCABLECARRIERSEGMENTTYPE",
4447            Self::IfcCableFitting => "IFCCABLEFITTING",
4448            Self::IfcCableFittingType => "IFCCABLEFITTINGTYPE",
4449            Self::IfcCableSegment => "IFCCABLESEGMENT",
4450            Self::IfcCableSegmentType => "IFCCABLESEGMENTTYPE",
4451            Self::IfcCaissonFoundation => "IFCCAISSONFOUNDATION",
4452            Self::IfcCaissonFoundationType => "IFCCAISSONFOUNDATIONTYPE",
4453            Self::IfcCartesianPoint => "IFCCARTESIANPOINT",
4454            Self::IfcCartesianPointList => "IFCCARTESIANPOINTLIST",
4455            Self::IfcCartesianPointList2D => "IFCCARTESIANPOINTLIST2D",
4456            Self::IfcCartesianPointList3D => "IFCCARTESIANPOINTLIST3D",
4457            Self::IfcCartesianTransformationOperator => "IFCCARTESIANTRANSFORMATIONOPERATOR",
4458            Self::IfcCartesianTransformationOperator2D => "IFCCARTESIANTRANSFORMATIONOPERATOR2D",
4459            Self::IfcCartesianTransformationOperator2DnonUniform => {
4460                "IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM"
4461            }
4462            Self::IfcCartesianTransformationOperator3D => "IFCCARTESIANTRANSFORMATIONOPERATOR3D",
4463            Self::IfcCartesianTransformationOperator3DnonUniform => {
4464                "IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM"
4465            }
4466            Self::IfcCenterLineProfileDef => "IFCCENTERLINEPROFILEDEF",
4467            Self::IfcChiller => "IFCCHILLER",
4468            Self::IfcChillerType => "IFCCHILLERTYPE",
4469            Self::IfcChimney => "IFCCHIMNEY",
4470            Self::IfcChimneyType => "IFCCHIMNEYTYPE",
4471            Self::IfcCircle => "IFCCIRCLE",
4472            Self::IfcCircleHollowProfileDef => "IFCCIRCLEHOLLOWPROFILEDEF",
4473            Self::IfcCircleProfileDef => "IFCCIRCLEPROFILEDEF",
4474            Self::IfcCivilElement => "IFCCIVILELEMENT",
4475            Self::IfcCivilElementType => "IFCCIVILELEMENTTYPE",
4476            Self::IfcClassification => "IFCCLASSIFICATION",
4477            Self::IfcClassificationReference => "IFCCLASSIFICATIONREFERENCE",
4478            Self::IfcClosedShell => "IFCCLOSEDSHELL",
4479            Self::IfcClothoid => "IFCCLOTHOID",
4480            Self::IfcCoil => "IFCCOIL",
4481            Self::IfcCoilType => "IFCCOILTYPE",
4482            Self::IfcColourRgb => "IFCCOLOURRGB",
4483            Self::IfcColourRgbList => "IFCCOLOURRGBLIST",
4484            Self::IfcColourSpecification => "IFCCOLOURSPECIFICATION",
4485            Self::IfcColumn => "IFCCOLUMN",
4486            Self::IfcColumnType => "IFCCOLUMNTYPE",
4487            Self::IfcCommunicationsAppliance => "IFCCOMMUNICATIONSAPPLIANCE",
4488            Self::IfcCommunicationsApplianceType => "IFCCOMMUNICATIONSAPPLIANCETYPE",
4489            Self::IfcComplexProperty => "IFCCOMPLEXPROPERTY",
4490            Self::IfcComplexPropertyTemplate => "IFCCOMPLEXPROPERTYTEMPLATE",
4491            Self::IfcCompositeCurve => "IFCCOMPOSITECURVE",
4492            Self::IfcCompositeCurveOnSurface => "IFCCOMPOSITECURVEONSURFACE",
4493            Self::IfcCompositeCurveSegment => "IFCCOMPOSITECURVESEGMENT",
4494            Self::IfcCompositeProfileDef => "IFCCOMPOSITEPROFILEDEF",
4495            Self::IfcCompressor => "IFCCOMPRESSOR",
4496            Self::IfcCompressorType => "IFCCOMPRESSORTYPE",
4497            Self::IfcCondenser => "IFCCONDENSER",
4498            Self::IfcCondenserType => "IFCCONDENSERTYPE",
4499            Self::IfcConic => "IFCCONIC",
4500            Self::IfcConnectedFaceSet => "IFCCONNECTEDFACESET",
4501            Self::IfcConnectionCurveGeometry => "IFCCONNECTIONCURVEGEOMETRY",
4502            Self::IfcConnectionGeometry => "IFCCONNECTIONGEOMETRY",
4503            Self::IfcConnectionPointEccentricity => "IFCCONNECTIONPOINTECCENTRICITY",
4504            Self::IfcConnectionPointGeometry => "IFCCONNECTIONPOINTGEOMETRY",
4505            Self::IfcConnectionSurfaceGeometry => "IFCCONNECTIONSURFACEGEOMETRY",
4506            Self::IfcConnectionVolumeGeometry => "IFCCONNECTIONVOLUMEGEOMETRY",
4507            Self::IfcConstraint => "IFCCONSTRAINT",
4508            Self::IfcConstructionEquipmentResource => "IFCCONSTRUCTIONEQUIPMENTRESOURCE",
4509            Self::IfcConstructionEquipmentResourceType => "IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE",
4510            Self::IfcConstructionMaterialResource => "IFCCONSTRUCTIONMATERIALRESOURCE",
4511            Self::IfcConstructionMaterialResourceType => "IFCCONSTRUCTIONMATERIALRESOURCETYPE",
4512            Self::IfcConstructionProductResource => "IFCCONSTRUCTIONPRODUCTRESOURCE",
4513            Self::IfcConstructionProductResourceType => "IFCCONSTRUCTIONPRODUCTRESOURCETYPE",
4514            Self::IfcConstructionResource => "IFCCONSTRUCTIONRESOURCE",
4515            Self::IfcConstructionResourceType => "IFCCONSTRUCTIONRESOURCETYPE",
4516            Self::IfcContext => "IFCCONTEXT",
4517            Self::IfcContextDependentUnit => "IFCCONTEXTDEPENDENTUNIT",
4518            Self::IfcControl => "IFCCONTROL",
4519            Self::IfcController => "IFCCONTROLLER",
4520            Self::IfcControllerType => "IFCCONTROLLERTYPE",
4521            Self::IfcConversionBasedUnit => "IFCCONVERSIONBASEDUNIT",
4522            Self::IfcConversionBasedUnitWithOffset => "IFCCONVERSIONBASEDUNITWITHOFFSET",
4523            Self::IfcConveyorSegment => "IFCCONVEYORSEGMENT",
4524            Self::IfcConveyorSegmentType => "IFCCONVEYORSEGMENTTYPE",
4525            Self::IfcCooledBeam => "IFCCOOLEDBEAM",
4526            Self::IfcCooledBeamType => "IFCCOOLEDBEAMTYPE",
4527            Self::IfcCoolingTower => "IFCCOOLINGTOWER",
4528            Self::IfcCoolingTowerType => "IFCCOOLINGTOWERTYPE",
4529            Self::IfcCoordinateOperation => "IFCCOORDINATEOPERATION",
4530            Self::IfcCoordinateReferenceSystem => "IFCCOORDINATEREFERENCESYSTEM",
4531            Self::IfcCosineSpiral => "IFCCOSINESPIRAL",
4532            Self::IfcCostItem => "IFCCOSTITEM",
4533            Self::IfcCostSchedule => "IFCCOSTSCHEDULE",
4534            Self::IfcCostValue => "IFCCOSTVALUE",
4535            Self::IfcCourse => "IFCCOURSE",
4536            Self::IfcCourseType => "IFCCOURSETYPE",
4537            Self::IfcCovering => "IFCCOVERING",
4538            Self::IfcCoveringType => "IFCCOVERINGTYPE",
4539            Self::IfcCrewResource => "IFCCREWRESOURCE",
4540            Self::IfcCrewResourceType => "IFCCREWRESOURCETYPE",
4541            Self::IfcCsgPrimitive3D => "IFCCSGPRIMITIVE3D",
4542            Self::IfcCsgSolid => "IFCCSGSOLID",
4543            Self::IfcCurrencyRelationship => "IFCCURRENCYRELATIONSHIP",
4544            Self::IfcCurtainWall => "IFCCURTAINWALL",
4545            Self::IfcCurtainWallType => "IFCCURTAINWALLTYPE",
4546            Self::IfcCurve => "IFCCURVE",
4547            Self::IfcCurveBoundedPlane => "IFCCURVEBOUNDEDPLANE",
4548            Self::IfcCurveBoundedSurface => "IFCCURVEBOUNDEDSURFACE",
4549            Self::IfcCurveSegment => "IFCCURVESEGMENT",
4550            Self::IfcCurveStyle => "IFCCURVESTYLE",
4551            Self::IfcCurveStyleFont => "IFCCURVESTYLEFONT",
4552            Self::IfcCurveStyleFontAndScaling => "IFCCURVESTYLEFONTANDSCALING",
4553            Self::IfcCurveStyleFontPattern => "IFCCURVESTYLEFONTPATTERN",
4554            Self::IfcCylindricalSurface => "IFCCYLINDRICALSURFACE",
4555            Self::IfcDamper => "IFCDAMPER",
4556            Self::IfcDamperType => "IFCDAMPERTYPE",
4557            Self::IfcDeepFoundation => "IFCDEEPFOUNDATION",
4558            Self::IfcDeepFoundationType => "IFCDEEPFOUNDATIONTYPE",
4559            Self::IfcDerivedProfileDef => "IFCDERIVEDPROFILEDEF",
4560            Self::IfcDerivedUnit => "IFCDERIVEDUNIT",
4561            Self::IfcDerivedUnitElement => "IFCDERIVEDUNITELEMENT",
4562            Self::IfcDimensionalExponents => "IFCDIMENSIONALEXPONENTS",
4563            Self::IfcDirection => "IFCDIRECTION",
4564            Self::IfcDirectrixCurveSweptAreaSolid => "IFCDIRECTRIXCURVESWEPTAREASOLID",
4565            Self::IfcDirectrixDerivedReferenceSweptAreaSolid => {
4566                "IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID"
4567            }
4568            Self::IfcDiscreteAccessory => "IFCDISCRETEACCESSORY",
4569            Self::IfcDiscreteAccessoryType => "IFCDISCRETEACCESSORYTYPE",
4570            Self::IfcDistributionBoard => "IFCDISTRIBUTIONBOARD",
4571            Self::IfcDistributionBoardType => "IFCDISTRIBUTIONBOARDTYPE",
4572            Self::IfcDistributionChamberElement => "IFCDISTRIBUTIONCHAMBERELEMENT",
4573            Self::IfcDistributionChamberElementType => "IFCDISTRIBUTIONCHAMBERELEMENTTYPE",
4574            Self::IfcDistributionCircuit => "IFCDISTRIBUTIONCIRCUIT",
4575            Self::IfcDistributionControlElement => "IFCDISTRIBUTIONCONTROLELEMENT",
4576            Self::IfcDistributionControlElementType => "IFCDISTRIBUTIONCONTROLELEMENTTYPE",
4577            Self::IfcDistributionElement => "IFCDISTRIBUTIONELEMENT",
4578            Self::IfcDistributionElementType => "IFCDISTRIBUTIONELEMENTTYPE",
4579            Self::IfcDistributionFlowElement => "IFCDISTRIBUTIONFLOWELEMENT",
4580            Self::IfcDistributionFlowElementType => "IFCDISTRIBUTIONFLOWELEMENTTYPE",
4581            Self::IfcDistributionPort => "IFCDISTRIBUTIONPORT",
4582            Self::IfcDistributionSystem => "IFCDISTRIBUTIONSYSTEM",
4583            Self::IfcDocumentInformation => "IFCDOCUMENTINFORMATION",
4584            Self::IfcDocumentInformationRelationship => "IFCDOCUMENTINFORMATIONRELATIONSHIP",
4585            Self::IfcDocumentReference => "IFCDOCUMENTREFERENCE",
4586            Self::IfcDoor => "IFCDOOR",
4587            Self::IfcDoorLiningProperties => "IFCDOORLININGPROPERTIES",
4588            Self::IfcDoorPanelProperties => "IFCDOORPANELPROPERTIES",
4589            Self::IfcDoorType => "IFCDOORTYPE",
4590            Self::IfcDraughtingPreDefinedColour => "IFCDRAUGHTINGPREDEFINEDCOLOUR",
4591            Self::IfcDraughtingPreDefinedCurveFont => "IFCDRAUGHTINGPREDEFINEDCURVEFONT",
4592            Self::IfcDuctFitting => "IFCDUCTFITTING",
4593            Self::IfcDuctFittingType => "IFCDUCTFITTINGTYPE",
4594            Self::IfcDuctSegment => "IFCDUCTSEGMENT",
4595            Self::IfcDuctSegmentType => "IFCDUCTSEGMENTTYPE",
4596            Self::IfcDuctSilencer => "IFCDUCTSILENCER",
4597            Self::IfcDuctSilencerType => "IFCDUCTSILENCERTYPE",
4598            Self::IfcEarthworksCut => "IFCEARTHWORKSCUT",
4599            Self::IfcEarthworksElement => "IFCEARTHWORKSELEMENT",
4600            Self::IfcEarthworksFill => "IFCEARTHWORKSFILL",
4601            Self::IfcEdge => "IFCEDGE",
4602            Self::IfcEdgeCurve => "IFCEDGECURVE",
4603            Self::IfcEdgeLoop => "IFCEDGELOOP",
4604            Self::IfcElectricAppliance => "IFCELECTRICAPPLIANCE",
4605            Self::IfcElectricApplianceType => "IFCELECTRICAPPLIANCETYPE",
4606            Self::IfcElectricDistributionBoard => "IFCELECTRICDISTRIBUTIONBOARD",
4607            Self::IfcElectricDistributionBoardType => "IFCELECTRICDISTRIBUTIONBOARDTYPE",
4608            Self::IfcElectricFlowStorageDevice => "IFCELECTRICFLOWSTORAGEDEVICE",
4609            Self::IfcElectricFlowStorageDeviceType => "IFCELECTRICFLOWSTORAGEDEVICETYPE",
4610            Self::IfcElectricFlowTreatmentDevice => "IFCELECTRICFLOWTREATMENTDEVICE",
4611            Self::IfcElectricFlowTreatmentDeviceType => "IFCELECTRICFLOWTREATMENTDEVICETYPE",
4612            Self::IfcElectricGenerator => "IFCELECTRICGENERATOR",
4613            Self::IfcElectricGeneratorType => "IFCELECTRICGENERATORTYPE",
4614            Self::IfcElectricMotor => "IFCELECTRICMOTOR",
4615            Self::IfcElectricMotorType => "IFCELECTRICMOTORTYPE",
4616            Self::IfcElectricTimeControl => "IFCELECTRICTIMECONTROL",
4617            Self::IfcElectricTimeControlType => "IFCELECTRICTIMECONTROLTYPE",
4618            Self::IfcElement => "IFCELEMENT",
4619            Self::IfcElementAssembly => "IFCELEMENTASSEMBLY",
4620            Self::IfcElementAssemblyType => "IFCELEMENTASSEMBLYTYPE",
4621            Self::IfcElementComponent => "IFCELEMENTCOMPONENT",
4622            Self::IfcElementComponentType => "IFCELEMENTCOMPONENTTYPE",
4623            Self::IfcElementQuantity => "IFCELEMENTQUANTITY",
4624            Self::IfcElementType => "IFCELEMENTTYPE",
4625            Self::IfcElementarySurface => "IFCELEMENTARYSURFACE",
4626            Self::IfcEllipse => "IFCELLIPSE",
4627            Self::IfcEllipseProfileDef => "IFCELLIPSEPROFILEDEF",
4628            Self::IfcEnergyConversionDevice => "IFCENERGYCONVERSIONDEVICE",
4629            Self::IfcEnergyConversionDeviceType => "IFCENERGYCONVERSIONDEVICETYPE",
4630            Self::IfcEngine => "IFCENGINE",
4631            Self::IfcEngineType => "IFCENGINETYPE",
4632            Self::IfcEvaporativeCooler => "IFCEVAPORATIVECOOLER",
4633            Self::IfcEvaporativeCoolerType => "IFCEVAPORATIVECOOLERTYPE",
4634            Self::IfcEvaporator => "IFCEVAPORATOR",
4635            Self::IfcEvaporatorType => "IFCEVAPORATORTYPE",
4636            Self::IfcEvent => "IFCEVENT",
4637            Self::IfcEventTime => "IFCEVENTTIME",
4638            Self::IfcEventType => "IFCEVENTTYPE",
4639            Self::IfcExtendedProperties => "IFCEXTENDEDPROPERTIES",
4640            Self::IfcExternalInformation => "IFCEXTERNALINFORMATION",
4641            Self::IfcExternalReference => "IFCEXTERNALREFERENCE",
4642            Self::IfcExternalReferenceRelationship => "IFCEXTERNALREFERENCERELATIONSHIP",
4643            Self::IfcExternalSpatialElement => "IFCEXTERNALSPATIALELEMENT",
4644            Self::IfcExternalSpatialStructureElement => "IFCEXTERNALSPATIALSTRUCTUREELEMENT",
4645            Self::IfcExternallyDefinedHatchStyle => "IFCEXTERNALLYDEFINEDHATCHSTYLE",
4646            Self::IfcExternallyDefinedSurfaceStyle => "IFCEXTERNALLYDEFINEDSURFACESTYLE",
4647            Self::IfcExternallyDefinedTextFont => "IFCEXTERNALLYDEFINEDTEXTFONT",
4648            Self::IfcExtrudedAreaSolid => "IFCEXTRUDEDAREASOLID",
4649            Self::IfcExtrudedAreaSolidTapered => "IFCEXTRUDEDAREASOLIDTAPERED",
4650            Self::IfcFace => "IFCFACE",
4651            Self::IfcFaceBasedSurfaceModel => "IFCFACEBASEDSURFACEMODEL",
4652            Self::IfcFaceBound => "IFCFACEBOUND",
4653            Self::IfcFaceOuterBound => "IFCFACEOUTERBOUND",
4654            Self::IfcFaceSurface => "IFCFACESURFACE",
4655            Self::IfcFacetedBrep => "IFCFACETEDBREP",
4656            Self::IfcFacetedBrepWithVoids => "IFCFACETEDBREPWITHVOIDS",
4657            Self::IfcFacility => "IFCFACILITY",
4658            Self::IfcFacilityPart => "IFCFACILITYPART",
4659            Self::IfcFacilityPartCommon => "IFCFACILITYPARTCOMMON",
4660            Self::IfcFailureConnectionCondition => "IFCFAILURECONNECTIONCONDITION",
4661            Self::IfcFan => "IFCFAN",
4662            Self::IfcFanType => "IFCFANTYPE",
4663            Self::IfcFastener => "IFCFASTENER",
4664            Self::IfcFastenerType => "IFCFASTENERTYPE",
4665            Self::IfcFeatureElement => "IFCFEATUREELEMENT",
4666            Self::IfcFeatureElementAddition => "IFCFEATUREELEMENTADDITION",
4667            Self::IfcFeatureElementSubtraction => "IFCFEATUREELEMENTSUBTRACTION",
4668            Self::IfcFillAreaStyle => "IFCFILLAREASTYLE",
4669            Self::IfcFillAreaStyleHatching => "IFCFILLAREASTYLEHATCHING",
4670            Self::IfcFillAreaStyleTiles => "IFCFILLAREASTYLETILES",
4671            Self::IfcFilter => "IFCFILTER",
4672            Self::IfcFilterType => "IFCFILTERTYPE",
4673            Self::IfcFireSuppressionTerminal => "IFCFIRESUPPRESSIONTERMINAL",
4674            Self::IfcFireSuppressionTerminalType => "IFCFIRESUPPRESSIONTERMINALTYPE",
4675            Self::IfcFixedReferenceSweptAreaSolid => "IFCFIXEDREFERENCESWEPTAREASOLID",
4676            Self::IfcFlowController => "IFCFLOWCONTROLLER",
4677            Self::IfcFlowControllerType => "IFCFLOWCONTROLLERTYPE",
4678            Self::IfcFlowFitting => "IFCFLOWFITTING",
4679            Self::IfcFlowFittingType => "IFCFLOWFITTINGTYPE",
4680            Self::IfcFlowInstrument => "IFCFLOWINSTRUMENT",
4681            Self::IfcFlowInstrumentType => "IFCFLOWINSTRUMENTTYPE",
4682            Self::IfcFlowMeter => "IFCFLOWMETER",
4683            Self::IfcFlowMeterType => "IFCFLOWMETERTYPE",
4684            Self::IfcFlowMovingDevice => "IFCFLOWMOVINGDEVICE",
4685            Self::IfcFlowMovingDeviceType => "IFCFLOWMOVINGDEVICETYPE",
4686            Self::IfcFlowSegment => "IFCFLOWSEGMENT",
4687            Self::IfcFlowSegmentType => "IFCFLOWSEGMENTTYPE",
4688            Self::IfcFlowStorageDevice => "IFCFLOWSTORAGEDEVICE",
4689            Self::IfcFlowStorageDeviceType => "IFCFLOWSTORAGEDEVICETYPE",
4690            Self::IfcFlowTerminal => "IFCFLOWTERMINAL",
4691            Self::IfcFlowTerminalType => "IFCFLOWTERMINALTYPE",
4692            Self::IfcFlowTreatmentDevice => "IFCFLOWTREATMENTDEVICE",
4693            Self::IfcFlowTreatmentDeviceType => "IFCFLOWTREATMENTDEVICETYPE",
4694            Self::IfcFooting => "IFCFOOTING",
4695            Self::IfcFootingType => "IFCFOOTINGTYPE",
4696            Self::IfcFurnishingElement => "IFCFURNISHINGELEMENT",
4697            Self::IfcFurnishingElementType => "IFCFURNISHINGELEMENTTYPE",
4698            Self::IfcFurniture => "IFCFURNITURE",
4699            Self::IfcFurnitureType => "IFCFURNITURETYPE",
4700            Self::IfcGeographicCRS => "IFCGEOGRAPHICCRS",
4701            Self::IfcGeographicElement => "IFCGEOGRAPHICELEMENT",
4702            Self::IfcGeographicElementType => "IFCGEOGRAPHICELEMENTTYPE",
4703            Self::IfcGeometricCurveSet => "IFCGEOMETRICCURVESET",
4704            Self::IfcGeometricRepresentationContext => "IFCGEOMETRICREPRESENTATIONCONTEXT",
4705            Self::IfcGeometricRepresentationItem => "IFCGEOMETRICREPRESENTATIONITEM",
4706            Self::IfcGeometricRepresentationSubContext => "IFCGEOMETRICREPRESENTATIONSUBCONTEXT",
4707            Self::IfcGeometricSet => "IFCGEOMETRICSET",
4708            Self::IfcGeomodel => "IFCGEOMODEL",
4709            Self::IfcGeoslice => "IFCGEOSLICE",
4710            Self::IfcGeotechnicalAssembly => "IFCGEOTECHNICALASSEMBLY",
4711            Self::IfcGeotechnicalElement => "IFCGEOTECHNICALELEMENT",
4712            Self::IfcGeotechnicalStratum => "IFCGEOTECHNICALSTRATUM",
4713            Self::IfcGradientCurve => "IFCGRADIENTCURVE",
4714            Self::IfcGrid => "IFCGRID",
4715            Self::IfcGridAxis => "IFCGRIDAXIS",
4716            Self::IfcGridPlacement => "IFCGRIDPLACEMENT",
4717            Self::IfcGroup => "IFCGROUP",
4718            Self::IfcHalfSpaceSolid => "IFCHALFSPACESOLID",
4719            Self::IfcHeatExchanger => "IFCHEATEXCHANGER",
4720            Self::IfcHeatExchangerType => "IFCHEATEXCHANGERTYPE",
4721            Self::IfcHumidifier => "IFCHUMIDIFIER",
4722            Self::IfcHumidifierType => "IFCHUMIDIFIERTYPE",
4723            Self::IfcIShapeProfileDef => "IFCISHAPEPROFILEDEF",
4724            Self::IfcImageTexture => "IFCIMAGETEXTURE",
4725            Self::IfcImpactProtectionDevice => "IFCIMPACTPROTECTIONDEVICE",
4726            Self::IfcImpactProtectionDeviceType => "IFCIMPACTPROTECTIONDEVICETYPE",
4727            Self::IfcIndexedColourMap => "IFCINDEXEDCOLOURMAP",
4728            Self::IfcIndexedPolyCurve => "IFCINDEXEDPOLYCURVE",
4729            Self::IfcIndexedPolygonalFace => "IFCINDEXEDPOLYGONALFACE",
4730            Self::IfcIndexedPolygonalFaceWithVoids => "IFCINDEXEDPOLYGONALFACEWITHVOIDS",
4731            Self::IfcIndexedPolygonalTextureMap => "IFCINDEXEDPOLYGONALTEXTUREMAP",
4732            Self::IfcIndexedTextureMap => "IFCINDEXEDTEXTUREMAP",
4733            Self::IfcIndexedTriangleTextureMap => "IFCINDEXEDTRIANGLETEXTUREMAP",
4734            Self::IfcInterceptor => "IFCINTERCEPTOR",
4735            Self::IfcInterceptorType => "IFCINTERCEPTORTYPE",
4736            Self::IfcIntersectionCurve => "IFCINTERSECTIONCURVE",
4737            Self::IfcInventory => "IFCINVENTORY",
4738            Self::IfcIrregularTimeSeries => "IFCIRREGULARTIMESERIES",
4739            Self::IfcIrregularTimeSeriesValue => "IFCIRREGULARTIMESERIESVALUE",
4740            Self::IfcJunctionBox => "IFCJUNCTIONBOX",
4741            Self::IfcJunctionBoxType => "IFCJUNCTIONBOXTYPE",
4742            Self::IfcKerb => "IFCKERB",
4743            Self::IfcKerbType => "IFCKERBTYPE",
4744            Self::IfcLShapeProfileDef => "IFCLSHAPEPROFILEDEF",
4745            Self::IfcLaborResource => "IFCLABORRESOURCE",
4746            Self::IfcLaborResourceType => "IFCLABORRESOURCETYPE",
4747            Self::IfcLagTime => "IFCLAGTIME",
4748            Self::IfcLamp => "IFCLAMP",
4749            Self::IfcLampType => "IFCLAMPTYPE",
4750            Self::IfcLibraryInformation => "IFCLIBRARYINFORMATION",
4751            Self::IfcLibraryReference => "IFCLIBRARYREFERENCE",
4752            Self::IfcLightDistributionData => "IFCLIGHTDISTRIBUTIONDATA",
4753            Self::IfcLightFixture => "IFCLIGHTFIXTURE",
4754            Self::IfcLightFixtureType => "IFCLIGHTFIXTURETYPE",
4755            Self::IfcLightIntensityDistribution => "IFCLIGHTINTENSITYDISTRIBUTION",
4756            Self::IfcLightSource => "IFCLIGHTSOURCE",
4757            Self::IfcLightSourceAmbient => "IFCLIGHTSOURCEAMBIENT",
4758            Self::IfcLightSourceDirectional => "IFCLIGHTSOURCEDIRECTIONAL",
4759            Self::IfcLightSourceGoniometric => "IFCLIGHTSOURCEGONIOMETRIC",
4760            Self::IfcLightSourcePositional => "IFCLIGHTSOURCEPOSITIONAL",
4761            Self::IfcLightSourceSpot => "IFCLIGHTSOURCESPOT",
4762            Self::IfcLine => "IFCLINE",
4763            Self::IfcLinearElement => "IFCLINEARELEMENT",
4764            Self::IfcLinearPlacement => "IFCLINEARPLACEMENT",
4765            Self::IfcLinearPositioningElement => "IFCLINEARPOSITIONINGELEMENT",
4766            Self::IfcLiquidTerminal => "IFCLIQUIDTERMINAL",
4767            Self::IfcLiquidTerminalType => "IFCLIQUIDTERMINALTYPE",
4768            Self::IfcLocalPlacement => "IFCLOCALPLACEMENT",
4769            Self::IfcLoop => "IFCLOOP",
4770            Self::IfcManifoldSolidBrep => "IFCMANIFOLDSOLIDBREP",
4771            Self::IfcMapConversion => "IFCMAPCONVERSION",
4772            Self::IfcMapConversionScaled => "IFCMAPCONVERSIONSCALED",
4773            Self::IfcMappedItem => "IFCMAPPEDITEM",
4774            Self::IfcMarineFacility => "IFCMARINEFACILITY",
4775            Self::IfcMarinePart => "IFCMARINEPART",
4776            Self::IfcMaterial => "IFCMATERIAL",
4777            Self::IfcMaterialClassificationRelationship => "IFCMATERIALCLASSIFICATIONRELATIONSHIP",
4778            Self::IfcMaterialConstituent => "IFCMATERIALCONSTITUENT",
4779            Self::IfcMaterialConstituentSet => "IFCMATERIALCONSTITUENTSET",
4780            Self::IfcMaterialDefinition => "IFCMATERIALDEFINITION",
4781            Self::IfcMaterialDefinitionRepresentation => "IFCMATERIALDEFINITIONREPRESENTATION",
4782            Self::IfcMaterialLayer => "IFCMATERIALLAYER",
4783            Self::IfcMaterialLayerSet => "IFCMATERIALLAYERSET",
4784            Self::IfcMaterialLayerSetUsage => "IFCMATERIALLAYERSETUSAGE",
4785            Self::IfcMaterialLayerWithOffsets => "IFCMATERIALLAYERWITHOFFSETS",
4786            Self::IfcMaterialList => "IFCMATERIALLIST",
4787            Self::IfcMaterialProfile => "IFCMATERIALPROFILE",
4788            Self::IfcMaterialProfileSet => "IFCMATERIALPROFILESET",
4789            Self::IfcMaterialProfileSetUsage => "IFCMATERIALPROFILESETUSAGE",
4790            Self::IfcMaterialProfileSetUsageTapering => "IFCMATERIALPROFILESETUSAGETAPERING",
4791            Self::IfcMaterialProfileWithOffsets => "IFCMATERIALPROFILEWITHOFFSETS",
4792            Self::IfcMaterialProperties => "IFCMATERIALPROPERTIES",
4793            Self::IfcMaterialRelationship => "IFCMATERIALRELATIONSHIP",
4794            Self::IfcMaterialUsageDefinition => "IFCMATERIALUSAGEDEFINITION",
4795            Self::IfcMeasureWithUnit => "IFCMEASUREWITHUNIT",
4796            Self::IfcMechanicalFastener => "IFCMECHANICALFASTENER",
4797            Self::IfcMechanicalFastenerType => "IFCMECHANICALFASTENERTYPE",
4798            Self::IfcMedicalDevice => "IFCMEDICALDEVICE",
4799            Self::IfcMedicalDeviceType => "IFCMEDICALDEVICETYPE",
4800            Self::IfcMember => "IFCMEMBER",
4801            Self::IfcMemberType => "IFCMEMBERTYPE",
4802            Self::IfcMetric => "IFCMETRIC",
4803            Self::IfcMirroredProfileDef => "IFCMIRROREDPROFILEDEF",
4804            Self::IfcMobileTelecommunicationsAppliance => "IFCMOBILETELECOMMUNICATIONSAPPLIANCE",
4805            Self::IfcMobileTelecommunicationsApplianceType => {
4806                "IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE"
4807            }
4808            Self::IfcMonetaryUnit => "IFCMONETARYUNIT",
4809            Self::IfcMooringDevice => "IFCMOORINGDEVICE",
4810            Self::IfcMooringDeviceType => "IFCMOORINGDEVICETYPE",
4811            Self::IfcMotorConnection => "IFCMOTORCONNECTION",
4812            Self::IfcMotorConnectionType => "IFCMOTORCONNECTIONTYPE",
4813            Self::IfcNamedUnit => "IFCNAMEDUNIT",
4814            Self::IfcNavigationElement => "IFCNAVIGATIONELEMENT",
4815            Self::IfcNavigationElementType => "IFCNAVIGATIONELEMENTTYPE",
4816            Self::IfcObject => "IFCOBJECT",
4817            Self::IfcObjectDefinition => "IFCOBJECTDEFINITION",
4818            Self::IfcObjectPlacement => "IFCOBJECTPLACEMENT",
4819            Self::IfcObjective => "IFCOBJECTIVE",
4820            Self::IfcOccupant => "IFCOCCUPANT",
4821            Self::IfcOffsetCurve => "IFCOFFSETCURVE",
4822            Self::IfcOffsetCurve2D => "IFCOFFSETCURVE2D",
4823            Self::IfcOffsetCurve3D => "IFCOFFSETCURVE3D",
4824            Self::IfcOffsetCurveByDistances => "IFCOFFSETCURVEBYDISTANCES",
4825            Self::IfcOpenCrossProfileDef => "IFCOPENCROSSPROFILEDEF",
4826            Self::IfcOpenShell => "IFCOPENSHELL",
4827            Self::IfcOpeningElement => "IFCOPENINGELEMENT",
4828            Self::IfcOrganization => "IFCORGANIZATION",
4829            Self::IfcOrganizationRelationship => "IFCORGANIZATIONRELATIONSHIP",
4830            Self::IfcOrientedEdge => "IFCORIENTEDEDGE",
4831            Self::IfcOuterBoundaryCurve => "IFCOUTERBOUNDARYCURVE",
4832            Self::IfcOutlet => "IFCOUTLET",
4833            Self::IfcOutletType => "IFCOUTLETTYPE",
4834            Self::IfcOwnerHistory => "IFCOWNERHISTORY",
4835            Self::IfcParameterizedProfileDef => "IFCPARAMETERIZEDPROFILEDEF",
4836            Self::IfcPath => "IFCPATH",
4837            Self::IfcPavement => "IFCPAVEMENT",
4838            Self::IfcPavementType => "IFCPAVEMENTTYPE",
4839            Self::IfcPcurve => "IFCPCURVE",
4840            Self::IfcPerformanceHistory => "IFCPERFORMANCEHISTORY",
4841            Self::IfcPermeableCoveringProperties => "IFCPERMEABLECOVERINGPROPERTIES",
4842            Self::IfcPermit => "IFCPERMIT",
4843            Self::IfcPerson => "IFCPERSON",
4844            Self::IfcPersonAndOrganization => "IFCPERSONANDORGANIZATION",
4845            Self::IfcPhysicalComplexQuantity => "IFCPHYSICALCOMPLEXQUANTITY",
4846            Self::IfcPhysicalQuantity => "IFCPHYSICALQUANTITY",
4847            Self::IfcPhysicalSimpleQuantity => "IFCPHYSICALSIMPLEQUANTITY",
4848            Self::IfcPile => "IFCPILE",
4849            Self::IfcPileType => "IFCPILETYPE",
4850            Self::IfcPipeFitting => "IFCPIPEFITTING",
4851            Self::IfcPipeFittingType => "IFCPIPEFITTINGTYPE",
4852            Self::IfcPipeSegment => "IFCPIPESEGMENT",
4853            Self::IfcPipeSegmentType => "IFCPIPESEGMENTTYPE",
4854            Self::IfcPixelTexture => "IFCPIXELTEXTURE",
4855            Self::IfcPlacement => "IFCPLACEMENT",
4856            Self::IfcPlanarBox => "IFCPLANARBOX",
4857            Self::IfcPlanarExtent => "IFCPLANAREXTENT",
4858            Self::IfcPlane => "IFCPLANE",
4859            Self::IfcPlate => "IFCPLATE",
4860            Self::IfcPlateType => "IFCPLATETYPE",
4861            Self::IfcPoint => "IFCPOINT",
4862            Self::IfcPointByDistanceExpression => "IFCPOINTBYDISTANCEEXPRESSION",
4863            Self::IfcPointOnCurve => "IFCPOINTONCURVE",
4864            Self::IfcPointOnSurface => "IFCPOINTONSURFACE",
4865            Self::IfcPolyLoop => "IFCPOLYLOOP",
4866            Self::IfcPolygonalBoundedHalfSpace => "IFCPOLYGONALBOUNDEDHALFSPACE",
4867            Self::IfcPolygonalFaceSet => "IFCPOLYGONALFACESET",
4868            Self::IfcPolyline => "IFCPOLYLINE",
4869            Self::IfcPolynomialCurve => "IFCPOLYNOMIALCURVE",
4870            Self::IfcPort => "IFCPORT",
4871            Self::IfcPositioningElement => "IFCPOSITIONINGELEMENT",
4872            Self::IfcPostalAddress => "IFCPOSTALADDRESS",
4873            Self::IfcPreDefinedColour => "IFCPREDEFINEDCOLOUR",
4874            Self::IfcPreDefinedCurveFont => "IFCPREDEFINEDCURVEFONT",
4875            Self::IfcPreDefinedItem => "IFCPREDEFINEDITEM",
4876            Self::IfcPreDefinedProperties => "IFCPREDEFINEDPROPERTIES",
4877            Self::IfcPreDefinedPropertySet => "IFCPREDEFINEDPROPERTYSET",
4878            Self::IfcPreDefinedTextFont => "IFCPREDEFINEDTEXTFONT",
4879            Self::IfcPresentationItem => "IFCPRESENTATIONITEM",
4880            Self::IfcPresentationLayerAssignment => "IFCPRESENTATIONLAYERASSIGNMENT",
4881            Self::IfcPresentationLayerWithStyle => "IFCPRESENTATIONLAYERWITHSTYLE",
4882            Self::IfcPresentationStyle => "IFCPRESENTATIONSTYLE",
4883            Self::IfcProcedure => "IFCPROCEDURE",
4884            Self::IfcProcedureType => "IFCPROCEDURETYPE",
4885            Self::IfcProcess => "IFCPROCESS",
4886            Self::IfcProduct => "IFCPRODUCT",
4887            Self::IfcProductDefinitionShape => "IFCPRODUCTDEFINITIONSHAPE",
4888            Self::IfcProductRepresentation => "IFCPRODUCTREPRESENTATION",
4889            Self::IfcProfileDef => "IFCPROFILEDEF",
4890            Self::IfcProfileProperties => "IFCPROFILEPROPERTIES",
4891            Self::IfcProject => "IFCPROJECT",
4892            Self::IfcProjectLibrary => "IFCPROJECTLIBRARY",
4893            Self::IfcProjectOrder => "IFCPROJECTORDER",
4894            Self::IfcProjectedCRS => "IFCPROJECTEDCRS",
4895            Self::IfcProjectionElement => "IFCPROJECTIONELEMENT",
4896            Self::IfcProperty => "IFCPROPERTY",
4897            Self::IfcPropertyAbstraction => "IFCPROPERTYABSTRACTION",
4898            Self::IfcPropertyBoundedValue => "IFCPROPERTYBOUNDEDVALUE",
4899            Self::IfcPropertyDefinition => "IFCPROPERTYDEFINITION",
4900            Self::IfcPropertyDependencyRelationship => "IFCPROPERTYDEPENDENCYRELATIONSHIP",
4901            Self::IfcPropertyEnumeratedValue => "IFCPROPERTYENUMERATEDVALUE",
4902            Self::IfcPropertyEnumeration => "IFCPROPERTYENUMERATION",
4903            Self::IfcPropertyListValue => "IFCPROPERTYLISTVALUE",
4904            Self::IfcPropertyReferenceValue => "IFCPROPERTYREFERENCEVALUE",
4905            Self::IfcPropertySet => "IFCPROPERTYSET",
4906            Self::IfcPropertySetDefinition => "IFCPROPERTYSETDEFINITION",
4907            Self::IfcPropertySetTemplate => "IFCPROPERTYSETTEMPLATE",
4908            Self::IfcPropertySingleValue => "IFCPROPERTYSINGLEVALUE",
4909            Self::IfcPropertyTableValue => "IFCPROPERTYTABLEVALUE",
4910            Self::IfcPropertyTemplate => "IFCPROPERTYTEMPLATE",
4911            Self::IfcPropertyTemplateDefinition => "IFCPROPERTYTEMPLATEDEFINITION",
4912            Self::IfcProtectiveDevice => "IFCPROTECTIVEDEVICE",
4913            Self::IfcProtectiveDeviceTrippingUnit => "IFCPROTECTIVEDEVICETRIPPINGUNIT",
4914            Self::IfcProtectiveDeviceTrippingUnitType => "IFCPROTECTIVEDEVICETRIPPINGUNITTYPE",
4915            Self::IfcProtectiveDeviceType => "IFCPROTECTIVEDEVICETYPE",
4916            Self::IfcPump => "IFCPUMP",
4917            Self::IfcPumpType => "IFCPUMPTYPE",
4918            Self::IfcQuantityArea => "IFCQUANTITYAREA",
4919            Self::IfcQuantityCount => "IFCQUANTITYCOUNT",
4920            Self::IfcQuantityLength => "IFCQUANTITYLENGTH",
4921            Self::IfcQuantityNumber => "IFCQUANTITYNUMBER",
4922            Self::IfcQuantitySet => "IFCQUANTITYSET",
4923            Self::IfcQuantityTime => "IFCQUANTITYTIME",
4924            Self::IfcQuantityVolume => "IFCQUANTITYVOLUME",
4925            Self::IfcQuantityWeight => "IFCQUANTITYWEIGHT",
4926            Self::IfcRail => "IFCRAIL",
4927            Self::IfcRailType => "IFCRAILTYPE",
4928            Self::IfcRailing => "IFCRAILING",
4929            Self::IfcRailingType => "IFCRAILINGTYPE",
4930            Self::IfcRailway => "IFCRAILWAY",
4931            Self::IfcRailwayPart => "IFCRAILWAYPART",
4932            Self::IfcRamp => "IFCRAMP",
4933            Self::IfcRampFlight => "IFCRAMPFLIGHT",
4934            Self::IfcRampFlightType => "IFCRAMPFLIGHTTYPE",
4935            Self::IfcRampType => "IFCRAMPTYPE",
4936            Self::IfcRationalBSplineCurveWithKnots => "IFCRATIONALBSPLINECURVEWITHKNOTS",
4937            Self::IfcRationalBSplineSurfaceWithKnots => "IFCRATIONALBSPLINESURFACEWITHKNOTS",
4938            Self::IfcRectangleHollowProfileDef => "IFCRECTANGLEHOLLOWPROFILEDEF",
4939            Self::IfcRectangleProfileDef => "IFCRECTANGLEPROFILEDEF",
4940            Self::IfcRectangularPyramid => "IFCRECTANGULARPYRAMID",
4941            Self::IfcRectangularTrimmedSurface => "IFCRECTANGULARTRIMMEDSURFACE",
4942            Self::IfcRecurrencePattern => "IFCRECURRENCEPATTERN",
4943            Self::IfcReference => "IFCREFERENCE",
4944            Self::IfcReferent => "IFCREFERENT",
4945            Self::IfcRegularTimeSeries => "IFCREGULARTIMESERIES",
4946            Self::IfcReinforcedSoil => "IFCREINFORCEDSOIL",
4947            Self::IfcReinforcementBarProperties => "IFCREINFORCEMENTBARPROPERTIES",
4948            Self::IfcReinforcementDefinitionProperties => "IFCREINFORCEMENTDEFINITIONPROPERTIES",
4949            Self::IfcReinforcingBar => "IFCREINFORCINGBAR",
4950            Self::IfcReinforcingBarType => "IFCREINFORCINGBARTYPE",
4951            Self::IfcReinforcingElement => "IFCREINFORCINGELEMENT",
4952            Self::IfcReinforcingElementType => "IFCREINFORCINGELEMENTTYPE",
4953            Self::IfcReinforcingMesh => "IFCREINFORCINGMESH",
4954            Self::IfcReinforcingMeshType => "IFCREINFORCINGMESHTYPE",
4955            Self::IfcRelAdheresToElement => "IFCRELADHERESTOELEMENT",
4956            Self::IfcRelAggregates => "IFCRELAGGREGATES",
4957            Self::IfcRelAssigns => "IFCRELASSIGNS",
4958            Self::IfcRelAssignsToActor => "IFCRELASSIGNSTOACTOR",
4959            Self::IfcRelAssignsToControl => "IFCRELASSIGNSTOCONTROL",
4960            Self::IfcRelAssignsToGroup => "IFCRELASSIGNSTOGROUP",
4961            Self::IfcRelAssignsToGroupByFactor => "IFCRELASSIGNSTOGROUPBYFACTOR",
4962            Self::IfcRelAssignsToProcess => "IFCRELASSIGNSTOPROCESS",
4963            Self::IfcRelAssignsToProduct => "IFCRELASSIGNSTOPRODUCT",
4964            Self::IfcRelAssignsToResource => "IFCRELASSIGNSTORESOURCE",
4965            Self::IfcRelAssociates => "IFCRELASSOCIATES",
4966            Self::IfcRelAssociatesApproval => "IFCRELASSOCIATESAPPROVAL",
4967            Self::IfcRelAssociatesClassification => "IFCRELASSOCIATESCLASSIFICATION",
4968            Self::IfcRelAssociatesConstraint => "IFCRELASSOCIATESCONSTRAINT",
4969            Self::IfcRelAssociatesDocument => "IFCRELASSOCIATESDOCUMENT",
4970            Self::IfcRelAssociatesLibrary => "IFCRELASSOCIATESLIBRARY",
4971            Self::IfcRelAssociatesMaterial => "IFCRELASSOCIATESMATERIAL",
4972            Self::IfcRelAssociatesProfileDef => "IFCRELASSOCIATESPROFILEDEF",
4973            Self::IfcRelConnects => "IFCRELCONNECTS",
4974            Self::IfcRelConnectsElements => "IFCRELCONNECTSELEMENTS",
4975            Self::IfcRelConnectsPathElements => "IFCRELCONNECTSPATHELEMENTS",
4976            Self::IfcRelConnectsPortToElement => "IFCRELCONNECTSPORTTOELEMENT",
4977            Self::IfcRelConnectsPorts => "IFCRELCONNECTSPORTS",
4978            Self::IfcRelConnectsStructuralActivity => "IFCRELCONNECTSSTRUCTURALACTIVITY",
4979            Self::IfcRelConnectsStructuralMember => "IFCRELCONNECTSSTRUCTURALMEMBER",
4980            Self::IfcRelConnectsWithEccentricity => "IFCRELCONNECTSWITHECCENTRICITY",
4981            Self::IfcRelConnectsWithRealizingElements => "IFCRELCONNECTSWITHREALIZINGELEMENTS",
4982            Self::IfcRelContainedInSpatialStructure => "IFCRELCONTAINEDINSPATIALSTRUCTURE",
4983            Self::IfcRelCoversBldgElements => "IFCRELCOVERSBLDGELEMENTS",
4984            Self::IfcRelCoversSpaces => "IFCRELCOVERSSPACES",
4985            Self::IfcRelDeclares => "IFCRELDECLARES",
4986            Self::IfcRelDecomposes => "IFCRELDECOMPOSES",
4987            Self::IfcRelDefines => "IFCRELDEFINES",
4988            Self::IfcRelDefinesByObject => "IFCRELDEFINESBYOBJECT",
4989            Self::IfcRelDefinesByProperties => "IFCRELDEFINESBYPROPERTIES",
4990            Self::IfcRelDefinesByTemplate => "IFCRELDEFINESBYTEMPLATE",
4991            Self::IfcRelDefinesByType => "IFCRELDEFINESBYTYPE",
4992            Self::IfcRelFillsElement => "IFCRELFILLSELEMENT",
4993            Self::IfcRelFlowControlElements => "IFCRELFLOWCONTROLELEMENTS",
4994            Self::IfcRelInterferesElements => "IFCRELINTERFERESELEMENTS",
4995            Self::IfcRelNests => "IFCRELNESTS",
4996            Self::IfcRelPositions => "IFCRELPOSITIONS",
4997            Self::IfcRelProjectsElement => "IFCRELPROJECTSELEMENT",
4998            Self::IfcRelReferencedInSpatialStructure => "IFCRELREFERENCEDINSPATIALSTRUCTURE",
4999            Self::IfcRelSequence => "IFCRELSEQUENCE",
5000            Self::IfcRelServicesBuildings => "IFCRELSERVICESBUILDINGS",
5001            Self::IfcRelSpaceBoundary => "IFCRELSPACEBOUNDARY",
5002            Self::IfcRelSpaceBoundary1stLevel => "IFCRELSPACEBOUNDARY1STLEVEL",
5003            Self::IfcRelSpaceBoundary2ndLevel => "IFCRELSPACEBOUNDARY2NDLEVEL",
5004            Self::IfcRelVoidsElement => "IFCRELVOIDSELEMENT",
5005            Self::IfcRelationship => "IFCRELATIONSHIP",
5006            Self::IfcReparametrisedCompositeCurveSegment => {
5007                "IFCREPARAMETRISEDCOMPOSITECURVESEGMENT"
5008            }
5009            Self::IfcRepresentation => "IFCREPRESENTATION",
5010            Self::IfcRepresentationContext => "IFCREPRESENTATIONCONTEXT",
5011            Self::IfcRepresentationItem => "IFCREPRESENTATIONITEM",
5012            Self::IfcRepresentationMap => "IFCREPRESENTATIONMAP",
5013            Self::IfcResource => "IFCRESOURCE",
5014            Self::IfcResourceApprovalRelationship => "IFCRESOURCEAPPROVALRELATIONSHIP",
5015            Self::IfcResourceConstraintRelationship => "IFCRESOURCECONSTRAINTRELATIONSHIP",
5016            Self::IfcResourceLevelRelationship => "IFCRESOURCELEVELRELATIONSHIP",
5017            Self::IfcResourceTime => "IFCRESOURCETIME",
5018            Self::IfcRevolvedAreaSolid => "IFCREVOLVEDAREASOLID",
5019            Self::IfcRevolvedAreaSolidTapered => "IFCREVOLVEDAREASOLIDTAPERED",
5020            Self::IfcRightCircularCone => "IFCRIGHTCIRCULARCONE",
5021            Self::IfcRightCircularCylinder => "IFCRIGHTCIRCULARCYLINDER",
5022            Self::IfcRigidOperation => "IFCRIGIDOPERATION",
5023            Self::IfcRoad => "IFCROAD",
5024            Self::IfcRoadPart => "IFCROADPART",
5025            Self::IfcRoof => "IFCROOF",
5026            Self::IfcRoofType => "IFCROOFTYPE",
5027            Self::IfcRoot => "IFCROOT",
5028            Self::IfcRoundedRectangleProfileDef => "IFCROUNDEDRECTANGLEPROFILEDEF",
5029            Self::IfcSIUnit => "IFCSIUNIT",
5030            Self::IfcSanitaryTerminal => "IFCSANITARYTERMINAL",
5031            Self::IfcSanitaryTerminalType => "IFCSANITARYTERMINALTYPE",
5032            Self::IfcSchedulingTime => "IFCSCHEDULINGTIME",
5033            Self::IfcSeamCurve => "IFCSEAMCURVE",
5034            Self::IfcSecondOrderPolynomialSpiral => "IFCSECONDORDERPOLYNOMIALSPIRAL",
5035            Self::IfcSectionProperties => "IFCSECTIONPROPERTIES",
5036            Self::IfcSectionReinforcementProperties => "IFCSECTIONREINFORCEMENTPROPERTIES",
5037            Self::IfcSectionedSolid => "IFCSECTIONEDSOLID",
5038            Self::IfcSectionedSolidHorizontal => "IFCSECTIONEDSOLIDHORIZONTAL",
5039            Self::IfcSectionedSpine => "IFCSECTIONEDSPINE",
5040            Self::IfcSectionedSurface => "IFCSECTIONEDSURFACE",
5041            Self::IfcSegment => "IFCSEGMENT",
5042            Self::IfcSegmentedReferenceCurve => "IFCSEGMENTEDREFERENCECURVE",
5043            Self::IfcSensor => "IFCSENSOR",
5044            Self::IfcSensorType => "IFCSENSORTYPE",
5045            Self::IfcSeventhOrderPolynomialSpiral => "IFCSEVENTHORDERPOLYNOMIALSPIRAL",
5046            Self::IfcShadingDevice => "IFCSHADINGDEVICE",
5047            Self::IfcShadingDeviceType => "IFCSHADINGDEVICETYPE",
5048            Self::IfcShapeAspect => "IFCSHAPEASPECT",
5049            Self::IfcShapeModel => "IFCSHAPEMODEL",
5050            Self::IfcShapeRepresentation => "IFCSHAPEREPRESENTATION",
5051            Self::IfcShellBasedSurfaceModel => "IFCSHELLBASEDSURFACEMODEL",
5052            Self::IfcSign => "IFCSIGN",
5053            Self::IfcSignType => "IFCSIGNTYPE",
5054            Self::IfcSignal => "IFCSIGNAL",
5055            Self::IfcSignalType => "IFCSIGNALTYPE",
5056            Self::IfcSimpleProperty => "IFCSIMPLEPROPERTY",
5057            Self::IfcSimplePropertyTemplate => "IFCSIMPLEPROPERTYTEMPLATE",
5058            Self::IfcSineSpiral => "IFCSINESPIRAL",
5059            Self::IfcSite => "IFCSITE",
5060            Self::IfcSlab => "IFCSLAB",
5061            Self::IfcSlabType => "IFCSLABTYPE",
5062            Self::IfcSlippageConnectionCondition => "IFCSLIPPAGECONNECTIONCONDITION",
5063            Self::IfcSolarDevice => "IFCSOLARDEVICE",
5064            Self::IfcSolarDeviceType => "IFCSOLARDEVICETYPE",
5065            Self::IfcSolidModel => "IFCSOLIDMODEL",
5066            Self::IfcSpace => "IFCSPACE",
5067            Self::IfcSpaceHeater => "IFCSPACEHEATER",
5068            Self::IfcSpaceHeaterType => "IFCSPACEHEATERTYPE",
5069            Self::IfcSpaceType => "IFCSPACETYPE",
5070            Self::IfcSpatialElement => "IFCSPATIALELEMENT",
5071            Self::IfcSpatialElementType => "IFCSPATIALELEMENTTYPE",
5072            Self::IfcSpatialStructureElement => "IFCSPATIALSTRUCTUREELEMENT",
5073            Self::IfcSpatialStructureElementType => "IFCSPATIALSTRUCTUREELEMENTTYPE",
5074            Self::IfcSpatialZone => "IFCSPATIALZONE",
5075            Self::IfcSpatialZoneType => "IFCSPATIALZONETYPE",
5076            Self::IfcSphere => "IFCSPHERE",
5077            Self::IfcSphericalSurface => "IFCSPHERICALSURFACE",
5078            Self::IfcSpiral => "IFCSPIRAL",
5079            Self::IfcStackTerminal => "IFCSTACKTERMINAL",
5080            Self::IfcStackTerminalType => "IFCSTACKTERMINALTYPE",
5081            Self::IfcStair => "IFCSTAIR",
5082            Self::IfcStairFlight => "IFCSTAIRFLIGHT",
5083            Self::IfcStairFlightType => "IFCSTAIRFLIGHTTYPE",
5084            Self::IfcStairType => "IFCSTAIRTYPE",
5085            Self::IfcStructuralAction => "IFCSTRUCTURALACTION",
5086            Self::IfcStructuralActivity => "IFCSTRUCTURALACTIVITY",
5087            Self::IfcStructuralAnalysisModel => "IFCSTRUCTURALANALYSISMODEL",
5088            Self::IfcStructuralConnection => "IFCSTRUCTURALCONNECTION",
5089            Self::IfcStructuralConnectionCondition => "IFCSTRUCTURALCONNECTIONCONDITION",
5090            Self::IfcStructuralCurveAction => "IFCSTRUCTURALCURVEACTION",
5091            Self::IfcStructuralCurveConnection => "IFCSTRUCTURALCURVECONNECTION",
5092            Self::IfcStructuralCurveMember => "IFCSTRUCTURALCURVEMEMBER",
5093            Self::IfcStructuralCurveMemberVarying => "IFCSTRUCTURALCURVEMEMBERVARYING",
5094            Self::IfcStructuralCurveReaction => "IFCSTRUCTURALCURVEREACTION",
5095            Self::IfcStructuralItem => "IFCSTRUCTURALITEM",
5096            Self::IfcStructuralLinearAction => "IFCSTRUCTURALLINEARACTION",
5097            Self::IfcStructuralLoad => "IFCSTRUCTURALLOAD",
5098            Self::IfcStructuralLoadCase => "IFCSTRUCTURALLOADCASE",
5099            Self::IfcStructuralLoadConfiguration => "IFCSTRUCTURALLOADCONFIGURATION",
5100            Self::IfcStructuralLoadGroup => "IFCSTRUCTURALLOADGROUP",
5101            Self::IfcStructuralLoadLinearForce => "IFCSTRUCTURALLOADLINEARFORCE",
5102            Self::IfcStructuralLoadOrResult => "IFCSTRUCTURALLOADORRESULT",
5103            Self::IfcStructuralLoadPlanarForce => "IFCSTRUCTURALLOADPLANARFORCE",
5104            Self::IfcStructuralLoadSingleDisplacement => "IFCSTRUCTURALLOADSINGLEDISPLACEMENT",
5105            Self::IfcStructuralLoadSingleDisplacementDistortion => {
5106                "IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION"
5107            }
5108            Self::IfcStructuralLoadSingleForce => "IFCSTRUCTURALLOADSINGLEFORCE",
5109            Self::IfcStructuralLoadSingleForceWarping => "IFCSTRUCTURALLOADSINGLEFORCEWARPING",
5110            Self::IfcStructuralLoadStatic => "IFCSTRUCTURALLOADSTATIC",
5111            Self::IfcStructuralLoadTemperature => "IFCSTRUCTURALLOADTEMPERATURE",
5112            Self::IfcStructuralMember => "IFCSTRUCTURALMEMBER",
5113            Self::IfcStructuralPlanarAction => "IFCSTRUCTURALPLANARACTION",
5114            Self::IfcStructuralPointAction => "IFCSTRUCTURALPOINTACTION",
5115            Self::IfcStructuralPointConnection => "IFCSTRUCTURALPOINTCONNECTION",
5116            Self::IfcStructuralPointReaction => "IFCSTRUCTURALPOINTREACTION",
5117            Self::IfcStructuralReaction => "IFCSTRUCTURALREACTION",
5118            Self::IfcStructuralResultGroup => "IFCSTRUCTURALRESULTGROUP",
5119            Self::IfcStructuralSurfaceAction => "IFCSTRUCTURALSURFACEACTION",
5120            Self::IfcStructuralSurfaceConnection => "IFCSTRUCTURALSURFACECONNECTION",
5121            Self::IfcStructuralSurfaceMember => "IFCSTRUCTURALSURFACEMEMBER",
5122            Self::IfcStructuralSurfaceMemberVarying => "IFCSTRUCTURALSURFACEMEMBERVARYING",
5123            Self::IfcStructuralSurfaceReaction => "IFCSTRUCTURALSURFACEREACTION",
5124            Self::IfcStyleModel => "IFCSTYLEMODEL",
5125            Self::IfcStyledItem => "IFCSTYLEDITEM",
5126            Self::IfcStyledRepresentation => "IFCSTYLEDREPRESENTATION",
5127            Self::IfcSubContractResource => "IFCSUBCONTRACTRESOURCE",
5128            Self::IfcSubContractResourceType => "IFCSUBCONTRACTRESOURCETYPE",
5129            Self::IfcSubedge => "IFCSUBEDGE",
5130            Self::IfcSurface => "IFCSURFACE",
5131            Self::IfcSurfaceCurve => "IFCSURFACECURVE",
5132            Self::IfcSurfaceCurveSweptAreaSolid => "IFCSURFACECURVESWEPTAREASOLID",
5133            Self::IfcSurfaceFeature => "IFCSURFACEFEATURE",
5134            Self::IfcSurfaceOfLinearExtrusion => "IFCSURFACEOFLINEAREXTRUSION",
5135            Self::IfcSurfaceOfRevolution => "IFCSURFACEOFREVOLUTION",
5136            Self::IfcSurfaceReinforcementArea => "IFCSURFACEREINFORCEMENTAREA",
5137            Self::IfcSurfaceStyle => "IFCSURFACESTYLE",
5138            Self::IfcSurfaceStyleLighting => "IFCSURFACESTYLELIGHTING",
5139            Self::IfcSurfaceStyleRefraction => "IFCSURFACESTYLEREFRACTION",
5140            Self::IfcSurfaceStyleRendering => "IFCSURFACESTYLERENDERING",
5141            Self::IfcSurfaceStyleShading => "IFCSURFACESTYLESHADING",
5142            Self::IfcSurfaceStyleWithTextures => "IFCSURFACESTYLEWITHTEXTURES",
5143            Self::IfcSurfaceTexture => "IFCSURFACETEXTURE",
5144            Self::IfcSweptAreaSolid => "IFCSWEPTAREASOLID",
5145            Self::IfcSweptDiskSolid => "IFCSWEPTDISKSOLID",
5146            Self::IfcSweptDiskSolidPolygonal => "IFCSWEPTDISKSOLIDPOLYGONAL",
5147            Self::IfcSweptSurface => "IFCSWEPTSURFACE",
5148            Self::IfcSwitchingDevice => "IFCSWITCHINGDEVICE",
5149            Self::IfcSwitchingDeviceType => "IFCSWITCHINGDEVICETYPE",
5150            Self::IfcSystem => "IFCSYSTEM",
5151            Self::IfcSystemFurnitureElement => "IFCSYSTEMFURNITUREELEMENT",
5152            Self::IfcSystemFurnitureElementType => "IFCSYSTEMFURNITUREELEMENTTYPE",
5153            Self::IfcTShapeProfileDef => "IFCTSHAPEPROFILEDEF",
5154            Self::IfcTable => "IFCTABLE",
5155            Self::IfcTableColumn => "IFCTABLECOLUMN",
5156            Self::IfcTableRow => "IFCTABLEROW",
5157            Self::IfcTank => "IFCTANK",
5158            Self::IfcTankType => "IFCTANKTYPE",
5159            Self::IfcTask => "IFCTASK",
5160            Self::IfcTaskTime => "IFCTASKTIME",
5161            Self::IfcTaskTimeRecurring => "IFCTASKTIMERECURRING",
5162            Self::IfcTaskType => "IFCTASKTYPE",
5163            Self::IfcTelecomAddress => "IFCTELECOMADDRESS",
5164            Self::IfcTendon => "IFCTENDON",
5165            Self::IfcTendonAnchor => "IFCTENDONANCHOR",
5166            Self::IfcTendonAnchorType => "IFCTENDONANCHORTYPE",
5167            Self::IfcTendonConduit => "IFCTENDONCONDUIT",
5168            Self::IfcTendonConduitType => "IFCTENDONCONDUITTYPE",
5169            Self::IfcTendonType => "IFCTENDONTYPE",
5170            Self::IfcTessellatedFaceSet => "IFCTESSELLATEDFACESET",
5171            Self::IfcTessellatedItem => "IFCTESSELLATEDITEM",
5172            Self::IfcTextLiteral => "IFCTEXTLITERAL",
5173            Self::IfcTextLiteralWithExtent => "IFCTEXTLITERALWITHEXTENT",
5174            Self::IfcTextStyle => "IFCTEXTSTYLE",
5175            Self::IfcTextStyleFontModel => "IFCTEXTSTYLEFONTMODEL",
5176            Self::IfcTextStyleForDefinedFont => "IFCTEXTSTYLEFORDEFINEDFONT",
5177            Self::IfcTextStyleTextModel => "IFCTEXTSTYLETEXTMODEL",
5178            Self::IfcTextureCoordinate => "IFCTEXTURECOORDINATE",
5179            Self::IfcTextureCoordinateGenerator => "IFCTEXTURECOORDINATEGENERATOR",
5180            Self::IfcTextureCoordinateIndices => "IFCTEXTURECOORDINATEINDICES",
5181            Self::IfcTextureCoordinateIndicesWithVoids => "IFCTEXTURECOORDINATEINDICESWITHVOIDS",
5182            Self::IfcTextureMap => "IFCTEXTUREMAP",
5183            Self::IfcTextureVertex => "IFCTEXTUREVERTEX",
5184            Self::IfcTextureVertexList => "IFCTEXTUREVERTEXLIST",
5185            Self::IfcThirdOrderPolynomialSpiral => "IFCTHIRDORDERPOLYNOMIALSPIRAL",
5186            Self::IfcTimePeriod => "IFCTIMEPERIOD",
5187            Self::IfcTimeSeries => "IFCTIMESERIES",
5188            Self::IfcTimeSeriesValue => "IFCTIMESERIESVALUE",
5189            Self::IfcTopologicalRepresentationItem => "IFCTOPOLOGICALREPRESENTATIONITEM",
5190            Self::IfcTopologyRepresentation => "IFCTOPOLOGYREPRESENTATION",
5191            Self::IfcToroidalSurface => "IFCTOROIDALSURFACE",
5192            Self::IfcTrackElement => "IFCTRACKELEMENT",
5193            Self::IfcTrackElementType => "IFCTRACKELEMENTTYPE",
5194            Self::IfcTransformer => "IFCTRANSFORMER",
5195            Self::IfcTransformerType => "IFCTRANSFORMERTYPE",
5196            Self::IfcTransportElement => "IFCTRANSPORTELEMENT",
5197            Self::IfcTransportElementType => "IFCTRANSPORTELEMENTTYPE",
5198            Self::IfcTransportationDevice => "IFCTRANSPORTATIONDEVICE",
5199            Self::IfcTransportationDeviceType => "IFCTRANSPORTATIONDEVICETYPE",
5200            Self::IfcTrapeziumProfileDef => "IFCTRAPEZIUMPROFILEDEF",
5201            Self::IfcTriangulatedFaceSet => "IFCTRIANGULATEDFACESET",
5202            Self::IfcTriangulatedIrregularNetwork => "IFCTRIANGULATEDIRREGULARNETWORK",
5203            Self::IfcTrimmedCurve => "IFCTRIMMEDCURVE",
5204            Self::IfcTubeBundle => "IFCTUBEBUNDLE",
5205            Self::IfcTubeBundleType => "IFCTUBEBUNDLETYPE",
5206            Self::IfcTypeObject => "IFCTYPEOBJECT",
5207            Self::IfcTypeProcess => "IFCTYPEPROCESS",
5208            Self::IfcTypeProduct => "IFCTYPEPRODUCT",
5209            Self::IfcTypeResource => "IFCTYPERESOURCE",
5210            Self::IfcUShapeProfileDef => "IFCUSHAPEPROFILEDEF",
5211            Self::IfcUnitAssignment => "IFCUNITASSIGNMENT",
5212            Self::IfcUnitaryControlElement => "IFCUNITARYCONTROLELEMENT",
5213            Self::IfcUnitaryControlElementType => "IFCUNITARYCONTROLELEMENTTYPE",
5214            Self::IfcUnitaryEquipment => "IFCUNITARYEQUIPMENT",
5215            Self::IfcUnitaryEquipmentType => "IFCUNITARYEQUIPMENTTYPE",
5216            Self::IfcValve => "IFCVALVE",
5217            Self::IfcValveType => "IFCVALVETYPE",
5218            Self::IfcVector => "IFCVECTOR",
5219            Self::IfcVehicle => "IFCVEHICLE",
5220            Self::IfcVehicleType => "IFCVEHICLETYPE",
5221            Self::IfcVertex => "IFCVERTEX",
5222            Self::IfcVertexLoop => "IFCVERTEXLOOP",
5223            Self::IfcVertexPoint => "IFCVERTEXPOINT",
5224            Self::IfcVibrationDamper => "IFCVIBRATIONDAMPER",
5225            Self::IfcVibrationDamperType => "IFCVIBRATIONDAMPERTYPE",
5226            Self::IfcVibrationIsolator => "IFCVIBRATIONISOLATOR",
5227            Self::IfcVibrationIsolatorType => "IFCVIBRATIONISOLATORTYPE",
5228            Self::IfcVirtualElement => "IFCVIRTUALELEMENT",
5229            Self::IfcVirtualGridIntersection => "IFCVIRTUALGRIDINTERSECTION",
5230            Self::IfcVoidingFeature => "IFCVOIDINGFEATURE",
5231            Self::IfcWall => "IFCWALL",
5232            Self::IfcWallStandardCase => "IFCWALLSTANDARDCASE",
5233            Self::IfcWallType => "IFCWALLTYPE",
5234            Self::IfcWasteTerminal => "IFCWASTETERMINAL",
5235            Self::IfcWasteTerminalType => "IFCWASTETERMINALTYPE",
5236            Self::IfcWellKnownText => "IFCWELLKNOWNTEXT",
5237            Self::IfcWindow => "IFCWINDOW",
5238            Self::IfcWindowLiningProperties => "IFCWINDOWLININGPROPERTIES",
5239            Self::IfcWindowPanelProperties => "IFCWINDOWPANELPROPERTIES",
5240            Self::IfcWindowType => "IFCWINDOWTYPE",
5241            Self::IfcWorkCalendar => "IFCWORKCALENDAR",
5242            Self::IfcWorkControl => "IFCWORKCONTROL",
5243            Self::IfcWorkPlan => "IFCWORKPLAN",
5244            Self::IfcWorkSchedule => "IFCWORKSCHEDULE",
5245            Self::IfcWorkTime => "IFCWORKTIME",
5246            Self::IfcZShapeProfileDef => "IFCZSHAPEPROFILEDEF",
5247            Self::IfcZone => "IFCZONE",
5248            Self::IfcBeamStandardCase => "IFCBEAMSTANDARDCASE",
5249            Self::IfcBuildingElement => "IFCBUILDINGELEMENT",
5250            Self::IfcBuildingElementType => "IFCBUILDINGELEMENTTYPE",
5251            Self::IfcColumnStandardCase => "IFCCOLUMNSTANDARDCASE",
5252            Self::IfcDoorStandardCase => "IFCDOORSTANDARDCASE",
5253            Self::IfcDoorStyle => "IFCDOORSTYLE",
5254            Self::IfcMemberStandardCase => "IFCMEMBERSTANDARDCASE",
5255            Self::IfcOpeningStandardCase => "IFCOPENINGSTANDARDCASE",
5256            Self::IfcPlateStandardCase => "IFCPLATESTANDARDCASE",
5257            Self::IfcPresentationStyleAssignment => "IFCPRESENTATIONSTYLEASSIGNMENT",
5258            Self::IfcProxy => "IFCPROXY",
5259            Self::IfcSlabElementedCase => "IFCSLABELEMENTEDCASE",
5260            Self::IfcSlabStandardCase => "IFCSLABSTANDARDCASE",
5261            Self::IfcWallElementedCase => "IFCWALLELEMENTEDCASE",
5262            Self::IfcWindowStandardCase => "IFCWINDOWSTANDARDCASE",
5263            Self::IfcWindowStyle => "IFCWINDOWSTYLE",
5264            Self::Ifc2DCompositeCurve => "IFC2DCOMPOSITECURVE",
5265            Self::IfcAngularDimension => "IFCANGULARDIMENSION",
5266            Self::IfcAnnotationCurveOccurrence => "IFCANNOTATIONCURVEOCCURRENCE",
5267            Self::IfcAnnotationFillAreaOccurrence => "IFCANNOTATIONFILLAREAOCCURRENCE",
5268            Self::IfcAnnotationOccurrence => "IFCANNOTATIONOCCURRENCE",
5269            Self::IfcAnnotationSurface => "IFCANNOTATIONSURFACE",
5270            Self::IfcAnnotationSurfaceOccurrence => "IFCANNOTATIONSURFACEOCCURRENCE",
5271            Self::IfcAnnotationSymbolOccurrence => "IFCANNOTATIONSYMBOLOCCURRENCE",
5272            Self::IfcAnnotationTextOccurrence => "IFCANNOTATIONTEXTOCCURRENCE",
5273            Self::IfcAppliedValueRelationship => "IFCAPPLIEDVALUERELATIONSHIP",
5274            Self::IfcApprovalActorRelationship => "IFCAPPROVALACTORRELATIONSHIP",
5275            Self::IfcApprovalPropertyRelationship => "IFCAPPROVALPROPERTYRELATIONSHIP",
5276            Self::IfcBezierCurve => "IFCBEZIERCURVE",
5277            Self::IfcBuildingElementComponent => "IFCBUILDINGELEMENTCOMPONENT",
5278            Self::IfcCalendarDate => "IFCCALENDARDATE",
5279            Self::IfcChamferEdgeFeature => "IFCCHAMFEREDGEFEATURE",
5280            Self::IfcClassificationItem => "IFCCLASSIFICATIONITEM",
5281            Self::IfcClassificationItemRelationship => "IFCCLASSIFICATIONITEMRELATIONSHIP",
5282            Self::IfcClassificationNotation => "IFCCLASSIFICATIONNOTATION",
5283            Self::IfcClassificationNotationFacet => "IFCCLASSIFICATIONNOTATIONFACET",
5284            Self::IfcCondition => "IFCCONDITION",
5285            Self::IfcConditionCriterion => "IFCCONDITIONCRITERION",
5286            Self::IfcConnectionPortGeometry => "IFCCONNECTIONPORTGEOMETRY",
5287            Self::IfcConstraintAggregationRelationship => "IFCCONSTRAINTAGGREGATIONRELATIONSHIP",
5288            Self::IfcConstraintClassificationRelationship => {
5289                "IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP"
5290            }
5291            Self::IfcConstraintRelationship => "IFCCONSTRAINTRELATIONSHIP",
5292            Self::IfcCoordinatedUniversalTimeOffset => "IFCCOORDINATEDUNIVERSALTIMEOFFSET",
5293            Self::IfcCraneRailAShapeProfileDef => "IFCCRANERAILASHAPEPROFILEDEF",
5294            Self::IfcCraneRailFShapeProfileDef => "IFCCRANERAILFSHAPEPROFILEDEF",
5295            Self::IfcDateAndTime => "IFCDATEANDTIME",
5296            Self::IfcDefinedSymbol => "IFCDEFINEDSYMBOL",
5297            Self::IfcDiameterDimension => "IFCDIAMETERDIMENSION",
5298            Self::IfcDimensionCalloutRelationship => "IFCDIMENSIONCALLOUTRELATIONSHIP",
5299            Self::IfcDimensionCurve => "IFCDIMENSIONCURVE",
5300            Self::IfcDimensionCurveDirectedCallout => "IFCDIMENSIONCURVEDIRECTEDCALLOUT",
5301            Self::IfcDimensionCurveTerminator => "IFCDIMENSIONCURVETERMINATOR",
5302            Self::IfcDimensionPair => "IFCDIMENSIONPAIR",
5303            Self::IfcDocumentElectronicFormat => "IFCDOCUMENTELECTRONICFORMAT",
5304            Self::IfcDraughtingCallout => "IFCDRAUGHTINGCALLOUT",
5305            Self::IfcDraughtingCalloutRelationship => "IFCDRAUGHTINGCALLOUTRELATIONSHIP",
5306            Self::IfcDraughtingPreDefinedTextFont => "IFCDRAUGHTINGPREDEFINEDTEXTFONT",
5307            Self::IfcEdgeFeature => "IFCEDGEFEATURE",
5308            Self::IfcElectricDistributionPoint => "IFCELECTRICDISTRIBUTIONPOINT",
5309            Self::IfcElectricHeaterType => "IFCELECTRICHEATERTYPE",
5310            Self::IfcElectricalBaseProperties => "IFCELECTRICALBASEPROPERTIES",
5311            Self::IfcElectricalCircuit => "IFCELECTRICALCIRCUIT",
5312            Self::IfcElectricalElement => "IFCELECTRICALELEMENT",
5313            Self::IfcEnergyProperties => "IFCENERGYPROPERTIES",
5314            Self::IfcEnvironmentalImpactValue => "IFCENVIRONMENTALIMPACTVALUE",
5315            Self::IfcEquipmentElement => "IFCEQUIPMENTELEMENT",
5316            Self::IfcEquipmentStandard => "IFCEQUIPMENTSTANDARD",
5317            Self::IfcExtendedMaterialProperties => "IFCEXTENDEDMATERIALPROPERTIES",
5318            Self::IfcExternallyDefinedSymbol => "IFCEXTERNALLYDEFINEDSYMBOL",
5319            Self::IfcFillAreaStyleTileSymbolWithStyle => "IFCFILLAREASTYLETILESYMBOLWITHSTYLE",
5320            Self::IfcFluidFlowProperties => "IFCFLUIDFLOWPROPERTIES",
5321            Self::IfcFuelProperties => "IFCFUELPROPERTIES",
5322            Self::IfcFurnitureStandard => "IFCFURNITURESTANDARD",
5323            Self::IfcGasTerminalType => "IFCGASTERMINALTYPE",
5324            Self::IfcGeneralMaterialProperties => "IFCGENERALMATERIALPROPERTIES",
5325            Self::IfcGeneralProfileProperties => "IFCGENERALPROFILEPROPERTIES",
5326            Self::IfcHygroscopicMaterialProperties => "IFCHYGROSCOPICMATERIALPROPERTIES",
5327            Self::IfcLinearDimension => "IFCLINEARDIMENSION",
5328            Self::IfcLocalTime => "IFCLOCALTIME",
5329            Self::IfcMechanicalConcreteMaterialProperties => {
5330                "IFCMECHANICALCONCRETEMATERIALPROPERTIES"
5331            }
5332            Self::IfcMechanicalMaterialProperties => "IFCMECHANICALMATERIALPROPERTIES",
5333            Self::IfcMechanicalSteelMaterialProperties => "IFCMECHANICALSTEELMATERIALPROPERTIES",
5334            Self::IfcMove => "IFCMOVE",
5335            Self::IfcOneDirectionRepeatFactor => "IFCONEDIRECTIONREPEATFACTOR",
5336            Self::IfcOpticalMaterialProperties => "IFCOPTICALMATERIALPROPERTIES",
5337            Self::IfcOrderAction => "IFCORDERACTION",
5338            Self::IfcPreDefinedDimensionSymbol => "IFCPREDEFINEDDIMENSIONSYMBOL",
5339            Self::IfcPreDefinedPointMarkerSymbol => "IFCPREDEFINEDPOINTMARKERSYMBOL",
5340            Self::IfcPreDefinedSymbol => "IFCPREDEFINEDSYMBOL",
5341            Self::IfcPreDefinedTerminatorSymbol => "IFCPREDEFINEDTERMINATORSYMBOL",
5342            Self::IfcProductsOfCombustionProperties => "IFCPRODUCTSOFCOMBUSTIONPROPERTIES",
5343            Self::IfcProjectOrderRecord => "IFCPROJECTORDERRECORD",
5344            Self::IfcProjectionCurve => "IFCPROJECTIONCURVE",
5345            Self::IfcPropertyConstraintRelationship => "IFCPROPERTYCONSTRAINTRELATIONSHIP",
5346            Self::IfcRadiusDimension => "IFCRADIUSDIMENSION",
5347            Self::IfcRationalBezierCurve => "IFCRATIONALBEZIERCURVE",
5348            Self::IfcReferencesValueDocument => "IFCREFERENCESVALUEDOCUMENT",
5349            Self::IfcRelAssignsTasks => "IFCRELASSIGNSTASKS",
5350            Self::IfcRelAssignsToProjectOrder => "IFCRELASSIGNSTOPROJECTORDER",
5351            Self::IfcRelAssociatesAppliedValue => "IFCRELASSOCIATESAPPLIEDVALUE",
5352            Self::IfcRelAssociatesProfileProperties => "IFCRELASSOCIATESPROFILEPROPERTIES",
5353            Self::IfcRelConnectsStructuralElement => "IFCRELCONNECTSSTRUCTURALELEMENT",
5354            Self::IfcRelInteractionRequirements => "IFCRELINTERACTIONREQUIREMENTS",
5355            Self::IfcRelOccupiesSpaces => "IFCRELOCCUPIESSPACES",
5356            Self::IfcRelOverridesProperties => "IFCRELOVERRIDESPROPERTIES",
5357            Self::IfcRelSchedulesCostItems => "IFCRELSCHEDULESCOSTITEMS",
5358            Self::IfcRelaxation => "IFCRELAXATION",
5359            Self::IfcRibPlateProfileProperties => "IFCRIBPLATEPROFILEPROPERTIES",
5360            Self::IfcRoundedEdgeFeature => "IFCROUNDEDEDGEFEATURE",
5361            Self::IfcScheduleTimeControl => "IFCSCHEDULETIMECONTROL",
5362            Self::IfcServiceLife => "IFCSERVICELIFE",
5363            Self::IfcServiceLifeFactor => "IFCSERVICELIFEFACTOR",
5364            Self::IfcSoundProperties => "IFCSOUNDPROPERTIES",
5365            Self::IfcSoundValue => "IFCSOUNDVALUE",
5366            Self::IfcSpaceProgram => "IFCSPACEPROGRAM",
5367            Self::IfcSpaceThermalLoadProperties => "IFCSPACETHERMALLOADPROPERTIES",
5368            Self::IfcStructuralLinearActionVarying => "IFCSTRUCTURALLINEARACTIONVARYING",
5369            Self::IfcStructuralPlanarActionVarying => "IFCSTRUCTURALPLANARACTIONVARYING",
5370            Self::IfcStructuralProfileProperties => "IFCSTRUCTURALPROFILEPROPERTIES",
5371            Self::IfcStructuralSteelProfileProperties => "IFCSTRUCTURALSTEELPROFILEPROPERTIES",
5372            Self::IfcStructuredDimensionCallout => "IFCSTRUCTUREDDIMENSIONCALLOUT",
5373            Self::IfcSymbolStyle => "IFCSYMBOLSTYLE",
5374            Self::IfcTerminatorSymbol => "IFCTERMINATORSYMBOL",
5375            Self::IfcTextStyleWithBoxCharacteristics => "IFCTEXTSTYLEWITHBOXCHARACTERISTICS",
5376            Self::IfcThermalMaterialProperties => "IFCTHERMALMATERIALPROPERTIES",
5377            Self::IfcTimeSeriesReferenceRelationship => "IFCTIMESERIESREFERENCERELATIONSHIP",
5378            Self::IfcTimeSeriesSchedule => "IFCTIMESERIESSCHEDULE",
5379            Self::IfcTwoDirectionRepeatFactor => "IFCTWODIRECTIONREPEATFACTOR",
5380            Self::IfcVertexBasedTextureMap => "IFCVERTEXBASEDTEXTUREMAP",
5381            Self::IfcWaterProperties => "IFCWATERPROPERTIES",
5382            Self::IfcCircularArcSegment2D => "IFCCIRCULARARCSEGMENT2D",
5383            Self::IfcCurveSegment2D => "IFCCURVESEGMENT2D",
5384            Self::IfcDistanceExpression => "IFCDISTANCEEXPRESSION",
5385            Self::IfcLineSegment2D => "IFCLINESEGMENT2D",
5386            Self::IfcOrientationExpression => "IFCORIENTATIONEXPRESSION",
5387            Self::IfcTransitionCurveSegment2D => "IFCTRANSITIONCURVESEGMENT2D",
5388            Self::IfcAlignment2DHorizontal => "IFCALIGNMENT2DHORIZONTAL",
5389            Self::IfcAlignment2DHorizontalSegment => "IFCALIGNMENT2DHORIZONTALSEGMENT",
5390            Self::IfcAlignment2DSegment => "IFCALIGNMENT2DSEGMENT",
5391            Self::IfcAlignment2DVerSegCircularArc => "IFCALIGNMENT2DVERSEGCIRCULARARC",
5392            Self::IfcAlignment2DVerticalSegment => "IFCALIGNMENT2DVERTICALSEGMENT",
5393            Self::IfcAlignment2DVerSegLine => "IFCALIGNMENT2DVERSEGLINE",
5394            Self::IfcAlignment2DVerSegParabolicArc => "IFCALIGNMENT2DVERSEGPARABOLICARC",
5395            Self::IfcAlignment2DVertical => "IFCALIGNMENT2DVERTICAL",
5396            Self::IfcAlignmentCurve => "IFCALIGNMENTCURVE",
5397            Self::Unknown(unknown) => unknown.as_str(),
5398        }
5399    }
5400
5401    /// Static schema keyword for a known type, or None for an owned unknown.
5402    pub fn known_as_str(&self) -> Option<&'static str> {
5403        match self {
5404            Self::IfcActionRequest => Some("IFCACTIONREQUEST"),
5405            Self::IfcActor => Some("IFCACTOR"),
5406            Self::IfcActorRole => Some("IFCACTORROLE"),
5407            Self::IfcActuator => Some("IFCACTUATOR"),
5408            Self::IfcActuatorType => Some("IFCACTUATORTYPE"),
5409            Self::IfcAddress => Some("IFCADDRESS"),
5410            Self::IfcAdvancedBrep => Some("IFCADVANCEDBREP"),
5411            Self::IfcAdvancedBrepWithVoids => Some("IFCADVANCEDBREPWITHVOIDS"),
5412            Self::IfcAdvancedFace => Some("IFCADVANCEDFACE"),
5413            Self::IfcAirTerminal => Some("IFCAIRTERMINAL"),
5414            Self::IfcAirTerminalBox => Some("IFCAIRTERMINALBOX"),
5415            Self::IfcAirTerminalBoxType => Some("IFCAIRTERMINALBOXTYPE"),
5416            Self::IfcAirTerminalType => Some("IFCAIRTERMINALTYPE"),
5417            Self::IfcAirToAirHeatRecovery => Some("IFCAIRTOAIRHEATRECOVERY"),
5418            Self::IfcAirToAirHeatRecoveryType => Some("IFCAIRTOAIRHEATRECOVERYTYPE"),
5419            Self::IfcAlarm => Some("IFCALARM"),
5420            Self::IfcAlarmType => Some("IFCALARMTYPE"),
5421            Self::IfcAlignment => Some("IFCALIGNMENT"),
5422            Self::IfcAlignmentCant => Some("IFCALIGNMENTCANT"),
5423            Self::IfcAlignmentCantSegment => Some("IFCALIGNMENTCANTSEGMENT"),
5424            Self::IfcAlignmentHorizontal => Some("IFCALIGNMENTHORIZONTAL"),
5425            Self::IfcAlignmentHorizontalSegment => Some("IFCALIGNMENTHORIZONTALSEGMENT"),
5426            Self::IfcAlignmentParameterSegment => Some("IFCALIGNMENTPARAMETERSEGMENT"),
5427            Self::IfcAlignmentSegment => Some("IFCALIGNMENTSEGMENT"),
5428            Self::IfcAlignmentVertical => Some("IFCALIGNMENTVERTICAL"),
5429            Self::IfcAlignmentVerticalSegment => Some("IFCALIGNMENTVERTICALSEGMENT"),
5430            Self::IfcAnnotation => Some("IFCANNOTATION"),
5431            Self::IfcAnnotationFillArea => Some("IFCANNOTATIONFILLAREA"),
5432            Self::IfcApplication => Some("IFCAPPLICATION"),
5433            Self::IfcAppliedValue => Some("IFCAPPLIEDVALUE"),
5434            Self::IfcApproval => Some("IFCAPPROVAL"),
5435            Self::IfcApprovalRelationship => Some("IFCAPPROVALRELATIONSHIP"),
5436            Self::IfcArbitraryClosedProfileDef => Some("IFCARBITRARYCLOSEDPROFILEDEF"),
5437            Self::IfcArbitraryOpenProfileDef => Some("IFCARBITRARYOPENPROFILEDEF"),
5438            Self::IfcArbitraryProfileDefWithVoids => Some("IFCARBITRARYPROFILEDEFWITHVOIDS"),
5439            Self::IfcAsset => Some("IFCASSET"),
5440            Self::IfcAsymmetricIShapeProfileDef => Some("IFCASYMMETRICISHAPEPROFILEDEF"),
5441            Self::IfcAudioVisualAppliance => Some("IFCAUDIOVISUALAPPLIANCE"),
5442            Self::IfcAudioVisualApplianceType => Some("IFCAUDIOVISUALAPPLIANCETYPE"),
5443            Self::IfcAxis1Placement => Some("IFCAXIS1PLACEMENT"),
5444            Self::IfcAxis2Placement2D => Some("IFCAXIS2PLACEMENT2D"),
5445            Self::IfcAxis2Placement3D => Some("IFCAXIS2PLACEMENT3D"),
5446            Self::IfcAxis2PlacementLinear => Some("IFCAXIS2PLACEMENTLINEAR"),
5447            Self::IfcBSplineCurve => Some("IFCBSPLINECURVE"),
5448            Self::IfcBSplineCurveWithKnots => Some("IFCBSPLINECURVEWITHKNOTS"),
5449            Self::IfcBSplineSurface => Some("IFCBSPLINESURFACE"),
5450            Self::IfcBSplineSurfaceWithKnots => Some("IFCBSPLINESURFACEWITHKNOTS"),
5451            Self::IfcBeam => Some("IFCBEAM"),
5452            Self::IfcBeamType => Some("IFCBEAMTYPE"),
5453            Self::IfcBearing => Some("IFCBEARING"),
5454            Self::IfcBearingType => Some("IFCBEARINGTYPE"),
5455            Self::IfcBlobTexture => Some("IFCBLOBTEXTURE"),
5456            Self::IfcBlock => Some("IFCBLOCK"),
5457            Self::IfcBoiler => Some("IFCBOILER"),
5458            Self::IfcBoilerType => Some("IFCBOILERTYPE"),
5459            Self::IfcBooleanClippingResult => Some("IFCBOOLEANCLIPPINGRESULT"),
5460            Self::IfcBooleanResult => Some("IFCBOOLEANRESULT"),
5461            Self::IfcBorehole => Some("IFCBOREHOLE"),
5462            Self::IfcBoundaryCondition => Some("IFCBOUNDARYCONDITION"),
5463            Self::IfcBoundaryCurve => Some("IFCBOUNDARYCURVE"),
5464            Self::IfcBoundaryEdgeCondition => Some("IFCBOUNDARYEDGECONDITION"),
5465            Self::IfcBoundaryFaceCondition => Some("IFCBOUNDARYFACECONDITION"),
5466            Self::IfcBoundaryNodeCondition => Some("IFCBOUNDARYNODECONDITION"),
5467            Self::IfcBoundaryNodeConditionWarping => Some("IFCBOUNDARYNODECONDITIONWARPING"),
5468            Self::IfcBoundedCurve => Some("IFCBOUNDEDCURVE"),
5469            Self::IfcBoundedSurface => Some("IFCBOUNDEDSURFACE"),
5470            Self::IfcBoundingBox => Some("IFCBOUNDINGBOX"),
5471            Self::IfcBoxedHalfSpace => Some("IFCBOXEDHALFSPACE"),
5472            Self::IfcBridge => Some("IFCBRIDGE"),
5473            Self::IfcBridgePart => Some("IFCBRIDGEPART"),
5474            Self::IfcBuilding => Some("IFCBUILDING"),
5475            Self::IfcBuildingElementPart => Some("IFCBUILDINGELEMENTPART"),
5476            Self::IfcBuildingElementPartType => Some("IFCBUILDINGELEMENTPARTTYPE"),
5477            Self::IfcBuildingElementProxy => Some("IFCBUILDINGELEMENTPROXY"),
5478            Self::IfcBuildingElementProxyType => Some("IFCBUILDINGELEMENTPROXYTYPE"),
5479            Self::IfcBuildingStorey => Some("IFCBUILDINGSTOREY"),
5480            Self::IfcBuildingSystem => Some("IFCBUILDINGSYSTEM"),
5481            Self::IfcBuiltElement => Some("IFCBUILTELEMENT"),
5482            Self::IfcBuiltElementType => Some("IFCBUILTELEMENTTYPE"),
5483            Self::IfcBuiltSystem => Some("IFCBUILTSYSTEM"),
5484            Self::IfcBurner => Some("IFCBURNER"),
5485            Self::IfcBurnerType => Some("IFCBURNERTYPE"),
5486            Self::IfcCShapeProfileDef => Some("IFCCSHAPEPROFILEDEF"),
5487            Self::IfcCableCarrierFitting => Some("IFCCABLECARRIERFITTING"),
5488            Self::IfcCableCarrierFittingType => Some("IFCCABLECARRIERFITTINGTYPE"),
5489            Self::IfcCableCarrierSegment => Some("IFCCABLECARRIERSEGMENT"),
5490            Self::IfcCableCarrierSegmentType => Some("IFCCABLECARRIERSEGMENTTYPE"),
5491            Self::IfcCableFitting => Some("IFCCABLEFITTING"),
5492            Self::IfcCableFittingType => Some("IFCCABLEFITTINGTYPE"),
5493            Self::IfcCableSegment => Some("IFCCABLESEGMENT"),
5494            Self::IfcCableSegmentType => Some("IFCCABLESEGMENTTYPE"),
5495            Self::IfcCaissonFoundation => Some("IFCCAISSONFOUNDATION"),
5496            Self::IfcCaissonFoundationType => Some("IFCCAISSONFOUNDATIONTYPE"),
5497            Self::IfcCartesianPoint => Some("IFCCARTESIANPOINT"),
5498            Self::IfcCartesianPointList => Some("IFCCARTESIANPOINTLIST"),
5499            Self::IfcCartesianPointList2D => Some("IFCCARTESIANPOINTLIST2D"),
5500            Self::IfcCartesianPointList3D => Some("IFCCARTESIANPOINTLIST3D"),
5501            Self::IfcCartesianTransformationOperator => Some("IFCCARTESIANTRANSFORMATIONOPERATOR"),
5502            Self::IfcCartesianTransformationOperator2D => {
5503                Some("IFCCARTESIANTRANSFORMATIONOPERATOR2D")
5504            }
5505            Self::IfcCartesianTransformationOperator2DnonUniform => {
5506                Some("IFCCARTESIANTRANSFORMATIONOPERATOR2DNONUNIFORM")
5507            }
5508            Self::IfcCartesianTransformationOperator3D => {
5509                Some("IFCCARTESIANTRANSFORMATIONOPERATOR3D")
5510            }
5511            Self::IfcCartesianTransformationOperator3DnonUniform => {
5512                Some("IFCCARTESIANTRANSFORMATIONOPERATOR3DNONUNIFORM")
5513            }
5514            Self::IfcCenterLineProfileDef => Some("IFCCENTERLINEPROFILEDEF"),
5515            Self::IfcChiller => Some("IFCCHILLER"),
5516            Self::IfcChillerType => Some("IFCCHILLERTYPE"),
5517            Self::IfcChimney => Some("IFCCHIMNEY"),
5518            Self::IfcChimneyType => Some("IFCCHIMNEYTYPE"),
5519            Self::IfcCircle => Some("IFCCIRCLE"),
5520            Self::IfcCircleHollowProfileDef => Some("IFCCIRCLEHOLLOWPROFILEDEF"),
5521            Self::IfcCircleProfileDef => Some("IFCCIRCLEPROFILEDEF"),
5522            Self::IfcCivilElement => Some("IFCCIVILELEMENT"),
5523            Self::IfcCivilElementType => Some("IFCCIVILELEMENTTYPE"),
5524            Self::IfcClassification => Some("IFCCLASSIFICATION"),
5525            Self::IfcClassificationReference => Some("IFCCLASSIFICATIONREFERENCE"),
5526            Self::IfcClosedShell => Some("IFCCLOSEDSHELL"),
5527            Self::IfcClothoid => Some("IFCCLOTHOID"),
5528            Self::IfcCoil => Some("IFCCOIL"),
5529            Self::IfcCoilType => Some("IFCCOILTYPE"),
5530            Self::IfcColourRgb => Some("IFCCOLOURRGB"),
5531            Self::IfcColourRgbList => Some("IFCCOLOURRGBLIST"),
5532            Self::IfcColourSpecification => Some("IFCCOLOURSPECIFICATION"),
5533            Self::IfcColumn => Some("IFCCOLUMN"),
5534            Self::IfcColumnType => Some("IFCCOLUMNTYPE"),
5535            Self::IfcCommunicationsAppliance => Some("IFCCOMMUNICATIONSAPPLIANCE"),
5536            Self::IfcCommunicationsApplianceType => Some("IFCCOMMUNICATIONSAPPLIANCETYPE"),
5537            Self::IfcComplexProperty => Some("IFCCOMPLEXPROPERTY"),
5538            Self::IfcComplexPropertyTemplate => Some("IFCCOMPLEXPROPERTYTEMPLATE"),
5539            Self::IfcCompositeCurve => Some("IFCCOMPOSITECURVE"),
5540            Self::IfcCompositeCurveOnSurface => Some("IFCCOMPOSITECURVEONSURFACE"),
5541            Self::IfcCompositeCurveSegment => Some("IFCCOMPOSITECURVESEGMENT"),
5542            Self::IfcCompositeProfileDef => Some("IFCCOMPOSITEPROFILEDEF"),
5543            Self::IfcCompressor => Some("IFCCOMPRESSOR"),
5544            Self::IfcCompressorType => Some("IFCCOMPRESSORTYPE"),
5545            Self::IfcCondenser => Some("IFCCONDENSER"),
5546            Self::IfcCondenserType => Some("IFCCONDENSERTYPE"),
5547            Self::IfcConic => Some("IFCCONIC"),
5548            Self::IfcConnectedFaceSet => Some("IFCCONNECTEDFACESET"),
5549            Self::IfcConnectionCurveGeometry => Some("IFCCONNECTIONCURVEGEOMETRY"),
5550            Self::IfcConnectionGeometry => Some("IFCCONNECTIONGEOMETRY"),
5551            Self::IfcConnectionPointEccentricity => Some("IFCCONNECTIONPOINTECCENTRICITY"),
5552            Self::IfcConnectionPointGeometry => Some("IFCCONNECTIONPOINTGEOMETRY"),
5553            Self::IfcConnectionSurfaceGeometry => Some("IFCCONNECTIONSURFACEGEOMETRY"),
5554            Self::IfcConnectionVolumeGeometry => Some("IFCCONNECTIONVOLUMEGEOMETRY"),
5555            Self::IfcConstraint => Some("IFCCONSTRAINT"),
5556            Self::IfcConstructionEquipmentResource => Some("IFCCONSTRUCTIONEQUIPMENTRESOURCE"),
5557            Self::IfcConstructionEquipmentResourceType => {
5558                Some("IFCCONSTRUCTIONEQUIPMENTRESOURCETYPE")
5559            }
5560            Self::IfcConstructionMaterialResource => Some("IFCCONSTRUCTIONMATERIALRESOURCE"),
5561            Self::IfcConstructionMaterialResourceType => {
5562                Some("IFCCONSTRUCTIONMATERIALRESOURCETYPE")
5563            }
5564            Self::IfcConstructionProductResource => Some("IFCCONSTRUCTIONPRODUCTRESOURCE"),
5565            Self::IfcConstructionProductResourceType => Some("IFCCONSTRUCTIONPRODUCTRESOURCETYPE"),
5566            Self::IfcConstructionResource => Some("IFCCONSTRUCTIONRESOURCE"),
5567            Self::IfcConstructionResourceType => Some("IFCCONSTRUCTIONRESOURCETYPE"),
5568            Self::IfcContext => Some("IFCCONTEXT"),
5569            Self::IfcContextDependentUnit => Some("IFCCONTEXTDEPENDENTUNIT"),
5570            Self::IfcControl => Some("IFCCONTROL"),
5571            Self::IfcController => Some("IFCCONTROLLER"),
5572            Self::IfcControllerType => Some("IFCCONTROLLERTYPE"),
5573            Self::IfcConversionBasedUnit => Some("IFCCONVERSIONBASEDUNIT"),
5574            Self::IfcConversionBasedUnitWithOffset => Some("IFCCONVERSIONBASEDUNITWITHOFFSET"),
5575            Self::IfcConveyorSegment => Some("IFCCONVEYORSEGMENT"),
5576            Self::IfcConveyorSegmentType => Some("IFCCONVEYORSEGMENTTYPE"),
5577            Self::IfcCooledBeam => Some("IFCCOOLEDBEAM"),
5578            Self::IfcCooledBeamType => Some("IFCCOOLEDBEAMTYPE"),
5579            Self::IfcCoolingTower => Some("IFCCOOLINGTOWER"),
5580            Self::IfcCoolingTowerType => Some("IFCCOOLINGTOWERTYPE"),
5581            Self::IfcCoordinateOperation => Some("IFCCOORDINATEOPERATION"),
5582            Self::IfcCoordinateReferenceSystem => Some("IFCCOORDINATEREFERENCESYSTEM"),
5583            Self::IfcCosineSpiral => Some("IFCCOSINESPIRAL"),
5584            Self::IfcCostItem => Some("IFCCOSTITEM"),
5585            Self::IfcCostSchedule => Some("IFCCOSTSCHEDULE"),
5586            Self::IfcCostValue => Some("IFCCOSTVALUE"),
5587            Self::IfcCourse => Some("IFCCOURSE"),
5588            Self::IfcCourseType => Some("IFCCOURSETYPE"),
5589            Self::IfcCovering => Some("IFCCOVERING"),
5590            Self::IfcCoveringType => Some("IFCCOVERINGTYPE"),
5591            Self::IfcCrewResource => Some("IFCCREWRESOURCE"),
5592            Self::IfcCrewResourceType => Some("IFCCREWRESOURCETYPE"),
5593            Self::IfcCsgPrimitive3D => Some("IFCCSGPRIMITIVE3D"),
5594            Self::IfcCsgSolid => Some("IFCCSGSOLID"),
5595            Self::IfcCurrencyRelationship => Some("IFCCURRENCYRELATIONSHIP"),
5596            Self::IfcCurtainWall => Some("IFCCURTAINWALL"),
5597            Self::IfcCurtainWallType => Some("IFCCURTAINWALLTYPE"),
5598            Self::IfcCurve => Some("IFCCURVE"),
5599            Self::IfcCurveBoundedPlane => Some("IFCCURVEBOUNDEDPLANE"),
5600            Self::IfcCurveBoundedSurface => Some("IFCCURVEBOUNDEDSURFACE"),
5601            Self::IfcCurveSegment => Some("IFCCURVESEGMENT"),
5602            Self::IfcCurveStyle => Some("IFCCURVESTYLE"),
5603            Self::IfcCurveStyleFont => Some("IFCCURVESTYLEFONT"),
5604            Self::IfcCurveStyleFontAndScaling => Some("IFCCURVESTYLEFONTANDSCALING"),
5605            Self::IfcCurveStyleFontPattern => Some("IFCCURVESTYLEFONTPATTERN"),
5606            Self::IfcCylindricalSurface => Some("IFCCYLINDRICALSURFACE"),
5607            Self::IfcDamper => Some("IFCDAMPER"),
5608            Self::IfcDamperType => Some("IFCDAMPERTYPE"),
5609            Self::IfcDeepFoundation => Some("IFCDEEPFOUNDATION"),
5610            Self::IfcDeepFoundationType => Some("IFCDEEPFOUNDATIONTYPE"),
5611            Self::IfcDerivedProfileDef => Some("IFCDERIVEDPROFILEDEF"),
5612            Self::IfcDerivedUnit => Some("IFCDERIVEDUNIT"),
5613            Self::IfcDerivedUnitElement => Some("IFCDERIVEDUNITELEMENT"),
5614            Self::IfcDimensionalExponents => Some("IFCDIMENSIONALEXPONENTS"),
5615            Self::IfcDirection => Some("IFCDIRECTION"),
5616            Self::IfcDirectrixCurveSweptAreaSolid => Some("IFCDIRECTRIXCURVESWEPTAREASOLID"),
5617            Self::IfcDirectrixDerivedReferenceSweptAreaSolid => {
5618                Some("IFCDIRECTRIXDERIVEDREFERENCESWEPTAREASOLID")
5619            }
5620            Self::IfcDiscreteAccessory => Some("IFCDISCRETEACCESSORY"),
5621            Self::IfcDiscreteAccessoryType => Some("IFCDISCRETEACCESSORYTYPE"),
5622            Self::IfcDistributionBoard => Some("IFCDISTRIBUTIONBOARD"),
5623            Self::IfcDistributionBoardType => Some("IFCDISTRIBUTIONBOARDTYPE"),
5624            Self::IfcDistributionChamberElement => Some("IFCDISTRIBUTIONCHAMBERELEMENT"),
5625            Self::IfcDistributionChamberElementType => Some("IFCDISTRIBUTIONCHAMBERELEMENTTYPE"),
5626            Self::IfcDistributionCircuit => Some("IFCDISTRIBUTIONCIRCUIT"),
5627            Self::IfcDistributionControlElement => Some("IFCDISTRIBUTIONCONTROLELEMENT"),
5628            Self::IfcDistributionControlElementType => Some("IFCDISTRIBUTIONCONTROLELEMENTTYPE"),
5629            Self::IfcDistributionElement => Some("IFCDISTRIBUTIONELEMENT"),
5630            Self::IfcDistributionElementType => Some("IFCDISTRIBUTIONELEMENTTYPE"),
5631            Self::IfcDistributionFlowElement => Some("IFCDISTRIBUTIONFLOWELEMENT"),
5632            Self::IfcDistributionFlowElementType => Some("IFCDISTRIBUTIONFLOWELEMENTTYPE"),
5633            Self::IfcDistributionPort => Some("IFCDISTRIBUTIONPORT"),
5634            Self::IfcDistributionSystem => Some("IFCDISTRIBUTIONSYSTEM"),
5635            Self::IfcDocumentInformation => Some("IFCDOCUMENTINFORMATION"),
5636            Self::IfcDocumentInformationRelationship => Some("IFCDOCUMENTINFORMATIONRELATIONSHIP"),
5637            Self::IfcDocumentReference => Some("IFCDOCUMENTREFERENCE"),
5638            Self::IfcDoor => Some("IFCDOOR"),
5639            Self::IfcDoorLiningProperties => Some("IFCDOORLININGPROPERTIES"),
5640            Self::IfcDoorPanelProperties => Some("IFCDOORPANELPROPERTIES"),
5641            Self::IfcDoorType => Some("IFCDOORTYPE"),
5642            Self::IfcDraughtingPreDefinedColour => Some("IFCDRAUGHTINGPREDEFINEDCOLOUR"),
5643            Self::IfcDraughtingPreDefinedCurveFont => Some("IFCDRAUGHTINGPREDEFINEDCURVEFONT"),
5644            Self::IfcDuctFitting => Some("IFCDUCTFITTING"),
5645            Self::IfcDuctFittingType => Some("IFCDUCTFITTINGTYPE"),
5646            Self::IfcDuctSegment => Some("IFCDUCTSEGMENT"),
5647            Self::IfcDuctSegmentType => Some("IFCDUCTSEGMENTTYPE"),
5648            Self::IfcDuctSilencer => Some("IFCDUCTSILENCER"),
5649            Self::IfcDuctSilencerType => Some("IFCDUCTSILENCERTYPE"),
5650            Self::IfcEarthworksCut => Some("IFCEARTHWORKSCUT"),
5651            Self::IfcEarthworksElement => Some("IFCEARTHWORKSELEMENT"),
5652            Self::IfcEarthworksFill => Some("IFCEARTHWORKSFILL"),
5653            Self::IfcEdge => Some("IFCEDGE"),
5654            Self::IfcEdgeCurve => Some("IFCEDGECURVE"),
5655            Self::IfcEdgeLoop => Some("IFCEDGELOOP"),
5656            Self::IfcElectricAppliance => Some("IFCELECTRICAPPLIANCE"),
5657            Self::IfcElectricApplianceType => Some("IFCELECTRICAPPLIANCETYPE"),
5658            Self::IfcElectricDistributionBoard => Some("IFCELECTRICDISTRIBUTIONBOARD"),
5659            Self::IfcElectricDistributionBoardType => Some("IFCELECTRICDISTRIBUTIONBOARDTYPE"),
5660            Self::IfcElectricFlowStorageDevice => Some("IFCELECTRICFLOWSTORAGEDEVICE"),
5661            Self::IfcElectricFlowStorageDeviceType => Some("IFCELECTRICFLOWSTORAGEDEVICETYPE"),
5662            Self::IfcElectricFlowTreatmentDevice => Some("IFCELECTRICFLOWTREATMENTDEVICE"),
5663            Self::IfcElectricFlowTreatmentDeviceType => Some("IFCELECTRICFLOWTREATMENTDEVICETYPE"),
5664            Self::IfcElectricGenerator => Some("IFCELECTRICGENERATOR"),
5665            Self::IfcElectricGeneratorType => Some("IFCELECTRICGENERATORTYPE"),
5666            Self::IfcElectricMotor => Some("IFCELECTRICMOTOR"),
5667            Self::IfcElectricMotorType => Some("IFCELECTRICMOTORTYPE"),
5668            Self::IfcElectricTimeControl => Some("IFCELECTRICTIMECONTROL"),
5669            Self::IfcElectricTimeControlType => Some("IFCELECTRICTIMECONTROLTYPE"),
5670            Self::IfcElement => Some("IFCELEMENT"),
5671            Self::IfcElementAssembly => Some("IFCELEMENTASSEMBLY"),
5672            Self::IfcElementAssemblyType => Some("IFCELEMENTASSEMBLYTYPE"),
5673            Self::IfcElementComponent => Some("IFCELEMENTCOMPONENT"),
5674            Self::IfcElementComponentType => Some("IFCELEMENTCOMPONENTTYPE"),
5675            Self::IfcElementQuantity => Some("IFCELEMENTQUANTITY"),
5676            Self::IfcElementType => Some("IFCELEMENTTYPE"),
5677            Self::IfcElementarySurface => Some("IFCELEMENTARYSURFACE"),
5678            Self::IfcEllipse => Some("IFCELLIPSE"),
5679            Self::IfcEllipseProfileDef => Some("IFCELLIPSEPROFILEDEF"),
5680            Self::IfcEnergyConversionDevice => Some("IFCENERGYCONVERSIONDEVICE"),
5681            Self::IfcEnergyConversionDeviceType => Some("IFCENERGYCONVERSIONDEVICETYPE"),
5682            Self::IfcEngine => Some("IFCENGINE"),
5683            Self::IfcEngineType => Some("IFCENGINETYPE"),
5684            Self::IfcEvaporativeCooler => Some("IFCEVAPORATIVECOOLER"),
5685            Self::IfcEvaporativeCoolerType => Some("IFCEVAPORATIVECOOLERTYPE"),
5686            Self::IfcEvaporator => Some("IFCEVAPORATOR"),
5687            Self::IfcEvaporatorType => Some("IFCEVAPORATORTYPE"),
5688            Self::IfcEvent => Some("IFCEVENT"),
5689            Self::IfcEventTime => Some("IFCEVENTTIME"),
5690            Self::IfcEventType => Some("IFCEVENTTYPE"),
5691            Self::IfcExtendedProperties => Some("IFCEXTENDEDPROPERTIES"),
5692            Self::IfcExternalInformation => Some("IFCEXTERNALINFORMATION"),
5693            Self::IfcExternalReference => Some("IFCEXTERNALREFERENCE"),
5694            Self::IfcExternalReferenceRelationship => Some("IFCEXTERNALREFERENCERELATIONSHIP"),
5695            Self::IfcExternalSpatialElement => Some("IFCEXTERNALSPATIALELEMENT"),
5696            Self::IfcExternalSpatialStructureElement => Some("IFCEXTERNALSPATIALSTRUCTUREELEMENT"),
5697            Self::IfcExternallyDefinedHatchStyle => Some("IFCEXTERNALLYDEFINEDHATCHSTYLE"),
5698            Self::IfcExternallyDefinedSurfaceStyle => Some("IFCEXTERNALLYDEFINEDSURFACESTYLE"),
5699            Self::IfcExternallyDefinedTextFont => Some("IFCEXTERNALLYDEFINEDTEXTFONT"),
5700            Self::IfcExtrudedAreaSolid => Some("IFCEXTRUDEDAREASOLID"),
5701            Self::IfcExtrudedAreaSolidTapered => Some("IFCEXTRUDEDAREASOLIDTAPERED"),
5702            Self::IfcFace => Some("IFCFACE"),
5703            Self::IfcFaceBasedSurfaceModel => Some("IFCFACEBASEDSURFACEMODEL"),
5704            Self::IfcFaceBound => Some("IFCFACEBOUND"),
5705            Self::IfcFaceOuterBound => Some("IFCFACEOUTERBOUND"),
5706            Self::IfcFaceSurface => Some("IFCFACESURFACE"),
5707            Self::IfcFacetedBrep => Some("IFCFACETEDBREP"),
5708            Self::IfcFacetedBrepWithVoids => Some("IFCFACETEDBREPWITHVOIDS"),
5709            Self::IfcFacility => Some("IFCFACILITY"),
5710            Self::IfcFacilityPart => Some("IFCFACILITYPART"),
5711            Self::IfcFacilityPartCommon => Some("IFCFACILITYPARTCOMMON"),
5712            Self::IfcFailureConnectionCondition => Some("IFCFAILURECONNECTIONCONDITION"),
5713            Self::IfcFan => Some("IFCFAN"),
5714            Self::IfcFanType => Some("IFCFANTYPE"),
5715            Self::IfcFastener => Some("IFCFASTENER"),
5716            Self::IfcFastenerType => Some("IFCFASTENERTYPE"),
5717            Self::IfcFeatureElement => Some("IFCFEATUREELEMENT"),
5718            Self::IfcFeatureElementAddition => Some("IFCFEATUREELEMENTADDITION"),
5719            Self::IfcFeatureElementSubtraction => Some("IFCFEATUREELEMENTSUBTRACTION"),
5720            Self::IfcFillAreaStyle => Some("IFCFILLAREASTYLE"),
5721            Self::IfcFillAreaStyleHatching => Some("IFCFILLAREASTYLEHATCHING"),
5722            Self::IfcFillAreaStyleTiles => Some("IFCFILLAREASTYLETILES"),
5723            Self::IfcFilter => Some("IFCFILTER"),
5724            Self::IfcFilterType => Some("IFCFILTERTYPE"),
5725            Self::IfcFireSuppressionTerminal => Some("IFCFIRESUPPRESSIONTERMINAL"),
5726            Self::IfcFireSuppressionTerminalType => Some("IFCFIRESUPPRESSIONTERMINALTYPE"),
5727            Self::IfcFixedReferenceSweptAreaSolid => Some("IFCFIXEDREFERENCESWEPTAREASOLID"),
5728            Self::IfcFlowController => Some("IFCFLOWCONTROLLER"),
5729            Self::IfcFlowControllerType => Some("IFCFLOWCONTROLLERTYPE"),
5730            Self::IfcFlowFitting => Some("IFCFLOWFITTING"),
5731            Self::IfcFlowFittingType => Some("IFCFLOWFITTINGTYPE"),
5732            Self::IfcFlowInstrument => Some("IFCFLOWINSTRUMENT"),
5733            Self::IfcFlowInstrumentType => Some("IFCFLOWINSTRUMENTTYPE"),
5734            Self::IfcFlowMeter => Some("IFCFLOWMETER"),
5735            Self::IfcFlowMeterType => Some("IFCFLOWMETERTYPE"),
5736            Self::IfcFlowMovingDevice => Some("IFCFLOWMOVINGDEVICE"),
5737            Self::IfcFlowMovingDeviceType => Some("IFCFLOWMOVINGDEVICETYPE"),
5738            Self::IfcFlowSegment => Some("IFCFLOWSEGMENT"),
5739            Self::IfcFlowSegmentType => Some("IFCFLOWSEGMENTTYPE"),
5740            Self::IfcFlowStorageDevice => Some("IFCFLOWSTORAGEDEVICE"),
5741            Self::IfcFlowStorageDeviceType => Some("IFCFLOWSTORAGEDEVICETYPE"),
5742            Self::IfcFlowTerminal => Some("IFCFLOWTERMINAL"),
5743            Self::IfcFlowTerminalType => Some("IFCFLOWTERMINALTYPE"),
5744            Self::IfcFlowTreatmentDevice => Some("IFCFLOWTREATMENTDEVICE"),
5745            Self::IfcFlowTreatmentDeviceType => Some("IFCFLOWTREATMENTDEVICETYPE"),
5746            Self::IfcFooting => Some("IFCFOOTING"),
5747            Self::IfcFootingType => Some("IFCFOOTINGTYPE"),
5748            Self::IfcFurnishingElement => Some("IFCFURNISHINGELEMENT"),
5749            Self::IfcFurnishingElementType => Some("IFCFURNISHINGELEMENTTYPE"),
5750            Self::IfcFurniture => Some("IFCFURNITURE"),
5751            Self::IfcFurnitureType => Some("IFCFURNITURETYPE"),
5752            Self::IfcGeographicCRS => Some("IFCGEOGRAPHICCRS"),
5753            Self::IfcGeographicElement => Some("IFCGEOGRAPHICELEMENT"),
5754            Self::IfcGeographicElementType => Some("IFCGEOGRAPHICELEMENTTYPE"),
5755            Self::IfcGeometricCurveSet => Some("IFCGEOMETRICCURVESET"),
5756            Self::IfcGeometricRepresentationContext => Some("IFCGEOMETRICREPRESENTATIONCONTEXT"),
5757            Self::IfcGeometricRepresentationItem => Some("IFCGEOMETRICREPRESENTATIONITEM"),
5758            Self::IfcGeometricRepresentationSubContext => {
5759                Some("IFCGEOMETRICREPRESENTATIONSUBCONTEXT")
5760            }
5761            Self::IfcGeometricSet => Some("IFCGEOMETRICSET"),
5762            Self::IfcGeomodel => Some("IFCGEOMODEL"),
5763            Self::IfcGeoslice => Some("IFCGEOSLICE"),
5764            Self::IfcGeotechnicalAssembly => Some("IFCGEOTECHNICALASSEMBLY"),
5765            Self::IfcGeotechnicalElement => Some("IFCGEOTECHNICALELEMENT"),
5766            Self::IfcGeotechnicalStratum => Some("IFCGEOTECHNICALSTRATUM"),
5767            Self::IfcGradientCurve => Some("IFCGRADIENTCURVE"),
5768            Self::IfcGrid => Some("IFCGRID"),
5769            Self::IfcGridAxis => Some("IFCGRIDAXIS"),
5770            Self::IfcGridPlacement => Some("IFCGRIDPLACEMENT"),
5771            Self::IfcGroup => Some("IFCGROUP"),
5772            Self::IfcHalfSpaceSolid => Some("IFCHALFSPACESOLID"),
5773            Self::IfcHeatExchanger => Some("IFCHEATEXCHANGER"),
5774            Self::IfcHeatExchangerType => Some("IFCHEATEXCHANGERTYPE"),
5775            Self::IfcHumidifier => Some("IFCHUMIDIFIER"),
5776            Self::IfcHumidifierType => Some("IFCHUMIDIFIERTYPE"),
5777            Self::IfcIShapeProfileDef => Some("IFCISHAPEPROFILEDEF"),
5778            Self::IfcImageTexture => Some("IFCIMAGETEXTURE"),
5779            Self::IfcImpactProtectionDevice => Some("IFCIMPACTPROTECTIONDEVICE"),
5780            Self::IfcImpactProtectionDeviceType => Some("IFCIMPACTPROTECTIONDEVICETYPE"),
5781            Self::IfcIndexedColourMap => Some("IFCINDEXEDCOLOURMAP"),
5782            Self::IfcIndexedPolyCurve => Some("IFCINDEXEDPOLYCURVE"),
5783            Self::IfcIndexedPolygonalFace => Some("IFCINDEXEDPOLYGONALFACE"),
5784            Self::IfcIndexedPolygonalFaceWithVoids => Some("IFCINDEXEDPOLYGONALFACEWITHVOIDS"),
5785            Self::IfcIndexedPolygonalTextureMap => Some("IFCINDEXEDPOLYGONALTEXTUREMAP"),
5786            Self::IfcIndexedTextureMap => Some("IFCINDEXEDTEXTUREMAP"),
5787            Self::IfcIndexedTriangleTextureMap => Some("IFCINDEXEDTRIANGLETEXTUREMAP"),
5788            Self::IfcInterceptor => Some("IFCINTERCEPTOR"),
5789            Self::IfcInterceptorType => Some("IFCINTERCEPTORTYPE"),
5790            Self::IfcIntersectionCurve => Some("IFCINTERSECTIONCURVE"),
5791            Self::IfcInventory => Some("IFCINVENTORY"),
5792            Self::IfcIrregularTimeSeries => Some("IFCIRREGULARTIMESERIES"),
5793            Self::IfcIrregularTimeSeriesValue => Some("IFCIRREGULARTIMESERIESVALUE"),
5794            Self::IfcJunctionBox => Some("IFCJUNCTIONBOX"),
5795            Self::IfcJunctionBoxType => Some("IFCJUNCTIONBOXTYPE"),
5796            Self::IfcKerb => Some("IFCKERB"),
5797            Self::IfcKerbType => Some("IFCKERBTYPE"),
5798            Self::IfcLShapeProfileDef => Some("IFCLSHAPEPROFILEDEF"),
5799            Self::IfcLaborResource => Some("IFCLABORRESOURCE"),
5800            Self::IfcLaborResourceType => Some("IFCLABORRESOURCETYPE"),
5801            Self::IfcLagTime => Some("IFCLAGTIME"),
5802            Self::IfcLamp => Some("IFCLAMP"),
5803            Self::IfcLampType => Some("IFCLAMPTYPE"),
5804            Self::IfcLibraryInformation => Some("IFCLIBRARYINFORMATION"),
5805            Self::IfcLibraryReference => Some("IFCLIBRARYREFERENCE"),
5806            Self::IfcLightDistributionData => Some("IFCLIGHTDISTRIBUTIONDATA"),
5807            Self::IfcLightFixture => Some("IFCLIGHTFIXTURE"),
5808            Self::IfcLightFixtureType => Some("IFCLIGHTFIXTURETYPE"),
5809            Self::IfcLightIntensityDistribution => Some("IFCLIGHTINTENSITYDISTRIBUTION"),
5810            Self::IfcLightSource => Some("IFCLIGHTSOURCE"),
5811            Self::IfcLightSourceAmbient => Some("IFCLIGHTSOURCEAMBIENT"),
5812            Self::IfcLightSourceDirectional => Some("IFCLIGHTSOURCEDIRECTIONAL"),
5813            Self::IfcLightSourceGoniometric => Some("IFCLIGHTSOURCEGONIOMETRIC"),
5814            Self::IfcLightSourcePositional => Some("IFCLIGHTSOURCEPOSITIONAL"),
5815            Self::IfcLightSourceSpot => Some("IFCLIGHTSOURCESPOT"),
5816            Self::IfcLine => Some("IFCLINE"),
5817            Self::IfcLinearElement => Some("IFCLINEARELEMENT"),
5818            Self::IfcLinearPlacement => Some("IFCLINEARPLACEMENT"),
5819            Self::IfcLinearPositioningElement => Some("IFCLINEARPOSITIONINGELEMENT"),
5820            Self::IfcLiquidTerminal => Some("IFCLIQUIDTERMINAL"),
5821            Self::IfcLiquidTerminalType => Some("IFCLIQUIDTERMINALTYPE"),
5822            Self::IfcLocalPlacement => Some("IFCLOCALPLACEMENT"),
5823            Self::IfcLoop => Some("IFCLOOP"),
5824            Self::IfcManifoldSolidBrep => Some("IFCMANIFOLDSOLIDBREP"),
5825            Self::IfcMapConversion => Some("IFCMAPCONVERSION"),
5826            Self::IfcMapConversionScaled => Some("IFCMAPCONVERSIONSCALED"),
5827            Self::IfcMappedItem => Some("IFCMAPPEDITEM"),
5828            Self::IfcMarineFacility => Some("IFCMARINEFACILITY"),
5829            Self::IfcMarinePart => Some("IFCMARINEPART"),
5830            Self::IfcMaterial => Some("IFCMATERIAL"),
5831            Self::IfcMaterialClassificationRelationship => {
5832                Some("IFCMATERIALCLASSIFICATIONRELATIONSHIP")
5833            }
5834            Self::IfcMaterialConstituent => Some("IFCMATERIALCONSTITUENT"),
5835            Self::IfcMaterialConstituentSet => Some("IFCMATERIALCONSTITUENTSET"),
5836            Self::IfcMaterialDefinition => Some("IFCMATERIALDEFINITION"),
5837            Self::IfcMaterialDefinitionRepresentation => {
5838                Some("IFCMATERIALDEFINITIONREPRESENTATION")
5839            }
5840            Self::IfcMaterialLayer => Some("IFCMATERIALLAYER"),
5841            Self::IfcMaterialLayerSet => Some("IFCMATERIALLAYERSET"),
5842            Self::IfcMaterialLayerSetUsage => Some("IFCMATERIALLAYERSETUSAGE"),
5843            Self::IfcMaterialLayerWithOffsets => Some("IFCMATERIALLAYERWITHOFFSETS"),
5844            Self::IfcMaterialList => Some("IFCMATERIALLIST"),
5845            Self::IfcMaterialProfile => Some("IFCMATERIALPROFILE"),
5846            Self::IfcMaterialProfileSet => Some("IFCMATERIALPROFILESET"),
5847            Self::IfcMaterialProfileSetUsage => Some("IFCMATERIALPROFILESETUSAGE"),
5848            Self::IfcMaterialProfileSetUsageTapering => Some("IFCMATERIALPROFILESETUSAGETAPERING"),
5849            Self::IfcMaterialProfileWithOffsets => Some("IFCMATERIALPROFILEWITHOFFSETS"),
5850            Self::IfcMaterialProperties => Some("IFCMATERIALPROPERTIES"),
5851            Self::IfcMaterialRelationship => Some("IFCMATERIALRELATIONSHIP"),
5852            Self::IfcMaterialUsageDefinition => Some("IFCMATERIALUSAGEDEFINITION"),
5853            Self::IfcMeasureWithUnit => Some("IFCMEASUREWITHUNIT"),
5854            Self::IfcMechanicalFastener => Some("IFCMECHANICALFASTENER"),
5855            Self::IfcMechanicalFastenerType => Some("IFCMECHANICALFASTENERTYPE"),
5856            Self::IfcMedicalDevice => Some("IFCMEDICALDEVICE"),
5857            Self::IfcMedicalDeviceType => Some("IFCMEDICALDEVICETYPE"),
5858            Self::IfcMember => Some("IFCMEMBER"),
5859            Self::IfcMemberType => Some("IFCMEMBERTYPE"),
5860            Self::IfcMetric => Some("IFCMETRIC"),
5861            Self::IfcMirroredProfileDef => Some("IFCMIRROREDPROFILEDEF"),
5862            Self::IfcMobileTelecommunicationsAppliance => {
5863                Some("IFCMOBILETELECOMMUNICATIONSAPPLIANCE")
5864            }
5865            Self::IfcMobileTelecommunicationsApplianceType => {
5866                Some("IFCMOBILETELECOMMUNICATIONSAPPLIANCETYPE")
5867            }
5868            Self::IfcMonetaryUnit => Some("IFCMONETARYUNIT"),
5869            Self::IfcMooringDevice => Some("IFCMOORINGDEVICE"),
5870            Self::IfcMooringDeviceType => Some("IFCMOORINGDEVICETYPE"),
5871            Self::IfcMotorConnection => Some("IFCMOTORCONNECTION"),
5872            Self::IfcMotorConnectionType => Some("IFCMOTORCONNECTIONTYPE"),
5873            Self::IfcNamedUnit => Some("IFCNAMEDUNIT"),
5874            Self::IfcNavigationElement => Some("IFCNAVIGATIONELEMENT"),
5875            Self::IfcNavigationElementType => Some("IFCNAVIGATIONELEMENTTYPE"),
5876            Self::IfcObject => Some("IFCOBJECT"),
5877            Self::IfcObjectDefinition => Some("IFCOBJECTDEFINITION"),
5878            Self::IfcObjectPlacement => Some("IFCOBJECTPLACEMENT"),
5879            Self::IfcObjective => Some("IFCOBJECTIVE"),
5880            Self::IfcOccupant => Some("IFCOCCUPANT"),
5881            Self::IfcOffsetCurve => Some("IFCOFFSETCURVE"),
5882            Self::IfcOffsetCurve2D => Some("IFCOFFSETCURVE2D"),
5883            Self::IfcOffsetCurve3D => Some("IFCOFFSETCURVE3D"),
5884            Self::IfcOffsetCurveByDistances => Some("IFCOFFSETCURVEBYDISTANCES"),
5885            Self::IfcOpenCrossProfileDef => Some("IFCOPENCROSSPROFILEDEF"),
5886            Self::IfcOpenShell => Some("IFCOPENSHELL"),
5887            Self::IfcOpeningElement => Some("IFCOPENINGELEMENT"),
5888            Self::IfcOrganization => Some("IFCORGANIZATION"),
5889            Self::IfcOrganizationRelationship => Some("IFCORGANIZATIONRELATIONSHIP"),
5890            Self::IfcOrientedEdge => Some("IFCORIENTEDEDGE"),
5891            Self::IfcOuterBoundaryCurve => Some("IFCOUTERBOUNDARYCURVE"),
5892            Self::IfcOutlet => Some("IFCOUTLET"),
5893            Self::IfcOutletType => Some("IFCOUTLETTYPE"),
5894            Self::IfcOwnerHistory => Some("IFCOWNERHISTORY"),
5895            Self::IfcParameterizedProfileDef => Some("IFCPARAMETERIZEDPROFILEDEF"),
5896            Self::IfcPath => Some("IFCPATH"),
5897            Self::IfcPavement => Some("IFCPAVEMENT"),
5898            Self::IfcPavementType => Some("IFCPAVEMENTTYPE"),
5899            Self::IfcPcurve => Some("IFCPCURVE"),
5900            Self::IfcPerformanceHistory => Some("IFCPERFORMANCEHISTORY"),
5901            Self::IfcPermeableCoveringProperties => Some("IFCPERMEABLECOVERINGPROPERTIES"),
5902            Self::IfcPermit => Some("IFCPERMIT"),
5903            Self::IfcPerson => Some("IFCPERSON"),
5904            Self::IfcPersonAndOrganization => Some("IFCPERSONANDORGANIZATION"),
5905            Self::IfcPhysicalComplexQuantity => Some("IFCPHYSICALCOMPLEXQUANTITY"),
5906            Self::IfcPhysicalQuantity => Some("IFCPHYSICALQUANTITY"),
5907            Self::IfcPhysicalSimpleQuantity => Some("IFCPHYSICALSIMPLEQUANTITY"),
5908            Self::IfcPile => Some("IFCPILE"),
5909            Self::IfcPileType => Some("IFCPILETYPE"),
5910            Self::IfcPipeFitting => Some("IFCPIPEFITTING"),
5911            Self::IfcPipeFittingType => Some("IFCPIPEFITTINGTYPE"),
5912            Self::IfcPipeSegment => Some("IFCPIPESEGMENT"),
5913            Self::IfcPipeSegmentType => Some("IFCPIPESEGMENTTYPE"),
5914            Self::IfcPixelTexture => Some("IFCPIXELTEXTURE"),
5915            Self::IfcPlacement => Some("IFCPLACEMENT"),
5916            Self::IfcPlanarBox => Some("IFCPLANARBOX"),
5917            Self::IfcPlanarExtent => Some("IFCPLANAREXTENT"),
5918            Self::IfcPlane => Some("IFCPLANE"),
5919            Self::IfcPlate => Some("IFCPLATE"),
5920            Self::IfcPlateType => Some("IFCPLATETYPE"),
5921            Self::IfcPoint => Some("IFCPOINT"),
5922            Self::IfcPointByDistanceExpression => Some("IFCPOINTBYDISTANCEEXPRESSION"),
5923            Self::IfcPointOnCurve => Some("IFCPOINTONCURVE"),
5924            Self::IfcPointOnSurface => Some("IFCPOINTONSURFACE"),
5925            Self::IfcPolyLoop => Some("IFCPOLYLOOP"),
5926            Self::IfcPolygonalBoundedHalfSpace => Some("IFCPOLYGONALBOUNDEDHALFSPACE"),
5927            Self::IfcPolygonalFaceSet => Some("IFCPOLYGONALFACESET"),
5928            Self::IfcPolyline => Some("IFCPOLYLINE"),
5929            Self::IfcPolynomialCurve => Some("IFCPOLYNOMIALCURVE"),
5930            Self::IfcPort => Some("IFCPORT"),
5931            Self::IfcPositioningElement => Some("IFCPOSITIONINGELEMENT"),
5932            Self::IfcPostalAddress => Some("IFCPOSTALADDRESS"),
5933            Self::IfcPreDefinedColour => Some("IFCPREDEFINEDCOLOUR"),
5934            Self::IfcPreDefinedCurveFont => Some("IFCPREDEFINEDCURVEFONT"),
5935            Self::IfcPreDefinedItem => Some("IFCPREDEFINEDITEM"),
5936            Self::IfcPreDefinedProperties => Some("IFCPREDEFINEDPROPERTIES"),
5937            Self::IfcPreDefinedPropertySet => Some("IFCPREDEFINEDPROPERTYSET"),
5938            Self::IfcPreDefinedTextFont => Some("IFCPREDEFINEDTEXTFONT"),
5939            Self::IfcPresentationItem => Some("IFCPRESENTATIONITEM"),
5940            Self::IfcPresentationLayerAssignment => Some("IFCPRESENTATIONLAYERASSIGNMENT"),
5941            Self::IfcPresentationLayerWithStyle => Some("IFCPRESENTATIONLAYERWITHSTYLE"),
5942            Self::IfcPresentationStyle => Some("IFCPRESENTATIONSTYLE"),
5943            Self::IfcProcedure => Some("IFCPROCEDURE"),
5944            Self::IfcProcedureType => Some("IFCPROCEDURETYPE"),
5945            Self::IfcProcess => Some("IFCPROCESS"),
5946            Self::IfcProduct => Some("IFCPRODUCT"),
5947            Self::IfcProductDefinitionShape => Some("IFCPRODUCTDEFINITIONSHAPE"),
5948            Self::IfcProductRepresentation => Some("IFCPRODUCTREPRESENTATION"),
5949            Self::IfcProfileDef => Some("IFCPROFILEDEF"),
5950            Self::IfcProfileProperties => Some("IFCPROFILEPROPERTIES"),
5951            Self::IfcProject => Some("IFCPROJECT"),
5952            Self::IfcProjectLibrary => Some("IFCPROJECTLIBRARY"),
5953            Self::IfcProjectOrder => Some("IFCPROJECTORDER"),
5954            Self::IfcProjectedCRS => Some("IFCPROJECTEDCRS"),
5955            Self::IfcProjectionElement => Some("IFCPROJECTIONELEMENT"),
5956            Self::IfcProperty => Some("IFCPROPERTY"),
5957            Self::IfcPropertyAbstraction => Some("IFCPROPERTYABSTRACTION"),
5958            Self::IfcPropertyBoundedValue => Some("IFCPROPERTYBOUNDEDVALUE"),
5959            Self::IfcPropertyDefinition => Some("IFCPROPERTYDEFINITION"),
5960            Self::IfcPropertyDependencyRelationship => Some("IFCPROPERTYDEPENDENCYRELATIONSHIP"),
5961            Self::IfcPropertyEnumeratedValue => Some("IFCPROPERTYENUMERATEDVALUE"),
5962            Self::IfcPropertyEnumeration => Some("IFCPROPERTYENUMERATION"),
5963            Self::IfcPropertyListValue => Some("IFCPROPERTYLISTVALUE"),
5964            Self::IfcPropertyReferenceValue => Some("IFCPROPERTYREFERENCEVALUE"),
5965            Self::IfcPropertySet => Some("IFCPROPERTYSET"),
5966            Self::IfcPropertySetDefinition => Some("IFCPROPERTYSETDEFINITION"),
5967            Self::IfcPropertySetTemplate => Some("IFCPROPERTYSETTEMPLATE"),
5968            Self::IfcPropertySingleValue => Some("IFCPROPERTYSINGLEVALUE"),
5969            Self::IfcPropertyTableValue => Some("IFCPROPERTYTABLEVALUE"),
5970            Self::IfcPropertyTemplate => Some("IFCPROPERTYTEMPLATE"),
5971            Self::IfcPropertyTemplateDefinition => Some("IFCPROPERTYTEMPLATEDEFINITION"),
5972            Self::IfcProtectiveDevice => Some("IFCPROTECTIVEDEVICE"),
5973            Self::IfcProtectiveDeviceTrippingUnit => Some("IFCPROTECTIVEDEVICETRIPPINGUNIT"),
5974            Self::IfcProtectiveDeviceTrippingUnitType => {
5975                Some("IFCPROTECTIVEDEVICETRIPPINGUNITTYPE")
5976            }
5977            Self::IfcProtectiveDeviceType => Some("IFCPROTECTIVEDEVICETYPE"),
5978            Self::IfcPump => Some("IFCPUMP"),
5979            Self::IfcPumpType => Some("IFCPUMPTYPE"),
5980            Self::IfcQuantityArea => Some("IFCQUANTITYAREA"),
5981            Self::IfcQuantityCount => Some("IFCQUANTITYCOUNT"),
5982            Self::IfcQuantityLength => Some("IFCQUANTITYLENGTH"),
5983            Self::IfcQuantityNumber => Some("IFCQUANTITYNUMBER"),
5984            Self::IfcQuantitySet => Some("IFCQUANTITYSET"),
5985            Self::IfcQuantityTime => Some("IFCQUANTITYTIME"),
5986            Self::IfcQuantityVolume => Some("IFCQUANTITYVOLUME"),
5987            Self::IfcQuantityWeight => Some("IFCQUANTITYWEIGHT"),
5988            Self::IfcRail => Some("IFCRAIL"),
5989            Self::IfcRailType => Some("IFCRAILTYPE"),
5990            Self::IfcRailing => Some("IFCRAILING"),
5991            Self::IfcRailingType => Some("IFCRAILINGTYPE"),
5992            Self::IfcRailway => Some("IFCRAILWAY"),
5993            Self::IfcRailwayPart => Some("IFCRAILWAYPART"),
5994            Self::IfcRamp => Some("IFCRAMP"),
5995            Self::IfcRampFlight => Some("IFCRAMPFLIGHT"),
5996            Self::IfcRampFlightType => Some("IFCRAMPFLIGHTTYPE"),
5997            Self::IfcRampType => Some("IFCRAMPTYPE"),
5998            Self::IfcRationalBSplineCurveWithKnots => Some("IFCRATIONALBSPLINECURVEWITHKNOTS"),
5999            Self::IfcRationalBSplineSurfaceWithKnots => Some("IFCRATIONALBSPLINESURFACEWITHKNOTS"),
6000            Self::IfcRectangleHollowProfileDef => Some("IFCRECTANGLEHOLLOWPROFILEDEF"),
6001            Self::IfcRectangleProfileDef => Some("IFCRECTANGLEPROFILEDEF"),
6002            Self::IfcRectangularPyramid => Some("IFCRECTANGULARPYRAMID"),
6003            Self::IfcRectangularTrimmedSurface => Some("IFCRECTANGULARTRIMMEDSURFACE"),
6004            Self::IfcRecurrencePattern => Some("IFCRECURRENCEPATTERN"),
6005            Self::IfcReference => Some("IFCREFERENCE"),
6006            Self::IfcReferent => Some("IFCREFERENT"),
6007            Self::IfcRegularTimeSeries => Some("IFCREGULARTIMESERIES"),
6008            Self::IfcReinforcedSoil => Some("IFCREINFORCEDSOIL"),
6009            Self::IfcReinforcementBarProperties => Some("IFCREINFORCEMENTBARPROPERTIES"),
6010            Self::IfcReinforcementDefinitionProperties => {
6011                Some("IFCREINFORCEMENTDEFINITIONPROPERTIES")
6012            }
6013            Self::IfcReinforcingBar => Some("IFCREINFORCINGBAR"),
6014            Self::IfcReinforcingBarType => Some("IFCREINFORCINGBARTYPE"),
6015            Self::IfcReinforcingElement => Some("IFCREINFORCINGELEMENT"),
6016            Self::IfcReinforcingElementType => Some("IFCREINFORCINGELEMENTTYPE"),
6017            Self::IfcReinforcingMesh => Some("IFCREINFORCINGMESH"),
6018            Self::IfcReinforcingMeshType => Some("IFCREINFORCINGMESHTYPE"),
6019            Self::IfcRelAdheresToElement => Some("IFCRELADHERESTOELEMENT"),
6020            Self::IfcRelAggregates => Some("IFCRELAGGREGATES"),
6021            Self::IfcRelAssigns => Some("IFCRELASSIGNS"),
6022            Self::IfcRelAssignsToActor => Some("IFCRELASSIGNSTOACTOR"),
6023            Self::IfcRelAssignsToControl => Some("IFCRELASSIGNSTOCONTROL"),
6024            Self::IfcRelAssignsToGroup => Some("IFCRELASSIGNSTOGROUP"),
6025            Self::IfcRelAssignsToGroupByFactor => Some("IFCRELASSIGNSTOGROUPBYFACTOR"),
6026            Self::IfcRelAssignsToProcess => Some("IFCRELASSIGNSTOPROCESS"),
6027            Self::IfcRelAssignsToProduct => Some("IFCRELASSIGNSTOPRODUCT"),
6028            Self::IfcRelAssignsToResource => Some("IFCRELASSIGNSTORESOURCE"),
6029            Self::IfcRelAssociates => Some("IFCRELASSOCIATES"),
6030            Self::IfcRelAssociatesApproval => Some("IFCRELASSOCIATESAPPROVAL"),
6031            Self::IfcRelAssociatesClassification => Some("IFCRELASSOCIATESCLASSIFICATION"),
6032            Self::IfcRelAssociatesConstraint => Some("IFCRELASSOCIATESCONSTRAINT"),
6033            Self::IfcRelAssociatesDocument => Some("IFCRELASSOCIATESDOCUMENT"),
6034            Self::IfcRelAssociatesLibrary => Some("IFCRELASSOCIATESLIBRARY"),
6035            Self::IfcRelAssociatesMaterial => Some("IFCRELASSOCIATESMATERIAL"),
6036            Self::IfcRelAssociatesProfileDef => Some("IFCRELASSOCIATESPROFILEDEF"),
6037            Self::IfcRelConnects => Some("IFCRELCONNECTS"),
6038            Self::IfcRelConnectsElements => Some("IFCRELCONNECTSELEMENTS"),
6039            Self::IfcRelConnectsPathElements => Some("IFCRELCONNECTSPATHELEMENTS"),
6040            Self::IfcRelConnectsPortToElement => Some("IFCRELCONNECTSPORTTOELEMENT"),
6041            Self::IfcRelConnectsPorts => Some("IFCRELCONNECTSPORTS"),
6042            Self::IfcRelConnectsStructuralActivity => Some("IFCRELCONNECTSSTRUCTURALACTIVITY"),
6043            Self::IfcRelConnectsStructuralMember => Some("IFCRELCONNECTSSTRUCTURALMEMBER"),
6044            Self::IfcRelConnectsWithEccentricity => Some("IFCRELCONNECTSWITHECCENTRICITY"),
6045            Self::IfcRelConnectsWithRealizingElements => {
6046                Some("IFCRELCONNECTSWITHREALIZINGELEMENTS")
6047            }
6048            Self::IfcRelContainedInSpatialStructure => Some("IFCRELCONTAINEDINSPATIALSTRUCTURE"),
6049            Self::IfcRelCoversBldgElements => Some("IFCRELCOVERSBLDGELEMENTS"),
6050            Self::IfcRelCoversSpaces => Some("IFCRELCOVERSSPACES"),
6051            Self::IfcRelDeclares => Some("IFCRELDECLARES"),
6052            Self::IfcRelDecomposes => Some("IFCRELDECOMPOSES"),
6053            Self::IfcRelDefines => Some("IFCRELDEFINES"),
6054            Self::IfcRelDefinesByObject => Some("IFCRELDEFINESBYOBJECT"),
6055            Self::IfcRelDefinesByProperties => Some("IFCRELDEFINESBYPROPERTIES"),
6056            Self::IfcRelDefinesByTemplate => Some("IFCRELDEFINESBYTEMPLATE"),
6057            Self::IfcRelDefinesByType => Some("IFCRELDEFINESBYTYPE"),
6058            Self::IfcRelFillsElement => Some("IFCRELFILLSELEMENT"),
6059            Self::IfcRelFlowControlElements => Some("IFCRELFLOWCONTROLELEMENTS"),
6060            Self::IfcRelInterferesElements => Some("IFCRELINTERFERESELEMENTS"),
6061            Self::IfcRelNests => Some("IFCRELNESTS"),
6062            Self::IfcRelPositions => Some("IFCRELPOSITIONS"),
6063            Self::IfcRelProjectsElement => Some("IFCRELPROJECTSELEMENT"),
6064            Self::IfcRelReferencedInSpatialStructure => Some("IFCRELREFERENCEDINSPATIALSTRUCTURE"),
6065            Self::IfcRelSequence => Some("IFCRELSEQUENCE"),
6066            Self::IfcRelServicesBuildings => Some("IFCRELSERVICESBUILDINGS"),
6067            Self::IfcRelSpaceBoundary => Some("IFCRELSPACEBOUNDARY"),
6068            Self::IfcRelSpaceBoundary1stLevel => Some("IFCRELSPACEBOUNDARY1STLEVEL"),
6069            Self::IfcRelSpaceBoundary2ndLevel => Some("IFCRELSPACEBOUNDARY2NDLEVEL"),
6070            Self::IfcRelVoidsElement => Some("IFCRELVOIDSELEMENT"),
6071            Self::IfcRelationship => Some("IFCRELATIONSHIP"),
6072            Self::IfcReparametrisedCompositeCurveSegment => {
6073                Some("IFCREPARAMETRISEDCOMPOSITECURVESEGMENT")
6074            }
6075            Self::IfcRepresentation => Some("IFCREPRESENTATION"),
6076            Self::IfcRepresentationContext => Some("IFCREPRESENTATIONCONTEXT"),
6077            Self::IfcRepresentationItem => Some("IFCREPRESENTATIONITEM"),
6078            Self::IfcRepresentationMap => Some("IFCREPRESENTATIONMAP"),
6079            Self::IfcResource => Some("IFCRESOURCE"),
6080            Self::IfcResourceApprovalRelationship => Some("IFCRESOURCEAPPROVALRELATIONSHIP"),
6081            Self::IfcResourceConstraintRelationship => Some("IFCRESOURCECONSTRAINTRELATIONSHIP"),
6082            Self::IfcResourceLevelRelationship => Some("IFCRESOURCELEVELRELATIONSHIP"),
6083            Self::IfcResourceTime => Some("IFCRESOURCETIME"),
6084            Self::IfcRevolvedAreaSolid => Some("IFCREVOLVEDAREASOLID"),
6085            Self::IfcRevolvedAreaSolidTapered => Some("IFCREVOLVEDAREASOLIDTAPERED"),
6086            Self::IfcRightCircularCone => Some("IFCRIGHTCIRCULARCONE"),
6087            Self::IfcRightCircularCylinder => Some("IFCRIGHTCIRCULARCYLINDER"),
6088            Self::IfcRigidOperation => Some("IFCRIGIDOPERATION"),
6089            Self::IfcRoad => Some("IFCROAD"),
6090            Self::IfcRoadPart => Some("IFCROADPART"),
6091            Self::IfcRoof => Some("IFCROOF"),
6092            Self::IfcRoofType => Some("IFCROOFTYPE"),
6093            Self::IfcRoot => Some("IFCROOT"),
6094            Self::IfcRoundedRectangleProfileDef => Some("IFCROUNDEDRECTANGLEPROFILEDEF"),
6095            Self::IfcSIUnit => Some("IFCSIUNIT"),
6096            Self::IfcSanitaryTerminal => Some("IFCSANITARYTERMINAL"),
6097            Self::IfcSanitaryTerminalType => Some("IFCSANITARYTERMINALTYPE"),
6098            Self::IfcSchedulingTime => Some("IFCSCHEDULINGTIME"),
6099            Self::IfcSeamCurve => Some("IFCSEAMCURVE"),
6100            Self::IfcSecondOrderPolynomialSpiral => Some("IFCSECONDORDERPOLYNOMIALSPIRAL"),
6101            Self::IfcSectionProperties => Some("IFCSECTIONPROPERTIES"),
6102            Self::IfcSectionReinforcementProperties => Some("IFCSECTIONREINFORCEMENTPROPERTIES"),
6103            Self::IfcSectionedSolid => Some("IFCSECTIONEDSOLID"),
6104            Self::IfcSectionedSolidHorizontal => Some("IFCSECTIONEDSOLIDHORIZONTAL"),
6105            Self::IfcSectionedSpine => Some("IFCSECTIONEDSPINE"),
6106            Self::IfcSectionedSurface => Some("IFCSECTIONEDSURFACE"),
6107            Self::IfcSegment => Some("IFCSEGMENT"),
6108            Self::IfcSegmentedReferenceCurve => Some("IFCSEGMENTEDREFERENCECURVE"),
6109            Self::IfcSensor => Some("IFCSENSOR"),
6110            Self::IfcSensorType => Some("IFCSENSORTYPE"),
6111            Self::IfcSeventhOrderPolynomialSpiral => Some("IFCSEVENTHORDERPOLYNOMIALSPIRAL"),
6112            Self::IfcShadingDevice => Some("IFCSHADINGDEVICE"),
6113            Self::IfcShadingDeviceType => Some("IFCSHADINGDEVICETYPE"),
6114            Self::IfcShapeAspect => Some("IFCSHAPEASPECT"),
6115            Self::IfcShapeModel => Some("IFCSHAPEMODEL"),
6116            Self::IfcShapeRepresentation => Some("IFCSHAPEREPRESENTATION"),
6117            Self::IfcShellBasedSurfaceModel => Some("IFCSHELLBASEDSURFACEMODEL"),
6118            Self::IfcSign => Some("IFCSIGN"),
6119            Self::IfcSignType => Some("IFCSIGNTYPE"),
6120            Self::IfcSignal => Some("IFCSIGNAL"),
6121            Self::IfcSignalType => Some("IFCSIGNALTYPE"),
6122            Self::IfcSimpleProperty => Some("IFCSIMPLEPROPERTY"),
6123            Self::IfcSimplePropertyTemplate => Some("IFCSIMPLEPROPERTYTEMPLATE"),
6124            Self::IfcSineSpiral => Some("IFCSINESPIRAL"),
6125            Self::IfcSite => Some("IFCSITE"),
6126            Self::IfcSlab => Some("IFCSLAB"),
6127            Self::IfcSlabType => Some("IFCSLABTYPE"),
6128            Self::IfcSlippageConnectionCondition => Some("IFCSLIPPAGECONNECTIONCONDITION"),
6129            Self::IfcSolarDevice => Some("IFCSOLARDEVICE"),
6130            Self::IfcSolarDeviceType => Some("IFCSOLARDEVICETYPE"),
6131            Self::IfcSolidModel => Some("IFCSOLIDMODEL"),
6132            Self::IfcSpace => Some("IFCSPACE"),
6133            Self::IfcSpaceHeater => Some("IFCSPACEHEATER"),
6134            Self::IfcSpaceHeaterType => Some("IFCSPACEHEATERTYPE"),
6135            Self::IfcSpaceType => Some("IFCSPACETYPE"),
6136            Self::IfcSpatialElement => Some("IFCSPATIALELEMENT"),
6137            Self::IfcSpatialElementType => Some("IFCSPATIALELEMENTTYPE"),
6138            Self::IfcSpatialStructureElement => Some("IFCSPATIALSTRUCTUREELEMENT"),
6139            Self::IfcSpatialStructureElementType => Some("IFCSPATIALSTRUCTUREELEMENTTYPE"),
6140            Self::IfcSpatialZone => Some("IFCSPATIALZONE"),
6141            Self::IfcSpatialZoneType => Some("IFCSPATIALZONETYPE"),
6142            Self::IfcSphere => Some("IFCSPHERE"),
6143            Self::IfcSphericalSurface => Some("IFCSPHERICALSURFACE"),
6144            Self::IfcSpiral => Some("IFCSPIRAL"),
6145            Self::IfcStackTerminal => Some("IFCSTACKTERMINAL"),
6146            Self::IfcStackTerminalType => Some("IFCSTACKTERMINALTYPE"),
6147            Self::IfcStair => Some("IFCSTAIR"),
6148            Self::IfcStairFlight => Some("IFCSTAIRFLIGHT"),
6149            Self::IfcStairFlightType => Some("IFCSTAIRFLIGHTTYPE"),
6150            Self::IfcStairType => Some("IFCSTAIRTYPE"),
6151            Self::IfcStructuralAction => Some("IFCSTRUCTURALACTION"),
6152            Self::IfcStructuralActivity => Some("IFCSTRUCTURALACTIVITY"),
6153            Self::IfcStructuralAnalysisModel => Some("IFCSTRUCTURALANALYSISMODEL"),
6154            Self::IfcStructuralConnection => Some("IFCSTRUCTURALCONNECTION"),
6155            Self::IfcStructuralConnectionCondition => Some("IFCSTRUCTURALCONNECTIONCONDITION"),
6156            Self::IfcStructuralCurveAction => Some("IFCSTRUCTURALCURVEACTION"),
6157            Self::IfcStructuralCurveConnection => Some("IFCSTRUCTURALCURVECONNECTION"),
6158            Self::IfcStructuralCurveMember => Some("IFCSTRUCTURALCURVEMEMBER"),
6159            Self::IfcStructuralCurveMemberVarying => Some("IFCSTRUCTURALCURVEMEMBERVARYING"),
6160            Self::IfcStructuralCurveReaction => Some("IFCSTRUCTURALCURVEREACTION"),
6161            Self::IfcStructuralItem => Some("IFCSTRUCTURALITEM"),
6162            Self::IfcStructuralLinearAction => Some("IFCSTRUCTURALLINEARACTION"),
6163            Self::IfcStructuralLoad => Some("IFCSTRUCTURALLOAD"),
6164            Self::IfcStructuralLoadCase => Some("IFCSTRUCTURALLOADCASE"),
6165            Self::IfcStructuralLoadConfiguration => Some("IFCSTRUCTURALLOADCONFIGURATION"),
6166            Self::IfcStructuralLoadGroup => Some("IFCSTRUCTURALLOADGROUP"),
6167            Self::IfcStructuralLoadLinearForce => Some("IFCSTRUCTURALLOADLINEARFORCE"),
6168            Self::IfcStructuralLoadOrResult => Some("IFCSTRUCTURALLOADORRESULT"),
6169            Self::IfcStructuralLoadPlanarForce => Some("IFCSTRUCTURALLOADPLANARFORCE"),
6170            Self::IfcStructuralLoadSingleDisplacement => {
6171                Some("IFCSTRUCTURALLOADSINGLEDISPLACEMENT")
6172            }
6173            Self::IfcStructuralLoadSingleDisplacementDistortion => {
6174                Some("IFCSTRUCTURALLOADSINGLEDISPLACEMENTDISTORTION")
6175            }
6176            Self::IfcStructuralLoadSingleForce => Some("IFCSTRUCTURALLOADSINGLEFORCE"),
6177            Self::IfcStructuralLoadSingleForceWarping => {
6178                Some("IFCSTRUCTURALLOADSINGLEFORCEWARPING")
6179            }
6180            Self::IfcStructuralLoadStatic => Some("IFCSTRUCTURALLOADSTATIC"),
6181            Self::IfcStructuralLoadTemperature => Some("IFCSTRUCTURALLOADTEMPERATURE"),
6182            Self::IfcStructuralMember => Some("IFCSTRUCTURALMEMBER"),
6183            Self::IfcStructuralPlanarAction => Some("IFCSTRUCTURALPLANARACTION"),
6184            Self::IfcStructuralPointAction => Some("IFCSTRUCTURALPOINTACTION"),
6185            Self::IfcStructuralPointConnection => Some("IFCSTRUCTURALPOINTCONNECTION"),
6186            Self::IfcStructuralPointReaction => Some("IFCSTRUCTURALPOINTREACTION"),
6187            Self::IfcStructuralReaction => Some("IFCSTRUCTURALREACTION"),
6188            Self::IfcStructuralResultGroup => Some("IFCSTRUCTURALRESULTGROUP"),
6189            Self::IfcStructuralSurfaceAction => Some("IFCSTRUCTURALSURFACEACTION"),
6190            Self::IfcStructuralSurfaceConnection => Some("IFCSTRUCTURALSURFACECONNECTION"),
6191            Self::IfcStructuralSurfaceMember => Some("IFCSTRUCTURALSURFACEMEMBER"),
6192            Self::IfcStructuralSurfaceMemberVarying => Some("IFCSTRUCTURALSURFACEMEMBERVARYING"),
6193            Self::IfcStructuralSurfaceReaction => Some("IFCSTRUCTURALSURFACEREACTION"),
6194            Self::IfcStyleModel => Some("IFCSTYLEMODEL"),
6195            Self::IfcStyledItem => Some("IFCSTYLEDITEM"),
6196            Self::IfcStyledRepresentation => Some("IFCSTYLEDREPRESENTATION"),
6197            Self::IfcSubContractResource => Some("IFCSUBCONTRACTRESOURCE"),
6198            Self::IfcSubContractResourceType => Some("IFCSUBCONTRACTRESOURCETYPE"),
6199            Self::IfcSubedge => Some("IFCSUBEDGE"),
6200            Self::IfcSurface => Some("IFCSURFACE"),
6201            Self::IfcSurfaceCurve => Some("IFCSURFACECURVE"),
6202            Self::IfcSurfaceCurveSweptAreaSolid => Some("IFCSURFACECURVESWEPTAREASOLID"),
6203            Self::IfcSurfaceFeature => Some("IFCSURFACEFEATURE"),
6204            Self::IfcSurfaceOfLinearExtrusion => Some("IFCSURFACEOFLINEAREXTRUSION"),
6205            Self::IfcSurfaceOfRevolution => Some("IFCSURFACEOFREVOLUTION"),
6206            Self::IfcSurfaceReinforcementArea => Some("IFCSURFACEREINFORCEMENTAREA"),
6207            Self::IfcSurfaceStyle => Some("IFCSURFACESTYLE"),
6208            Self::IfcSurfaceStyleLighting => Some("IFCSURFACESTYLELIGHTING"),
6209            Self::IfcSurfaceStyleRefraction => Some("IFCSURFACESTYLEREFRACTION"),
6210            Self::IfcSurfaceStyleRendering => Some("IFCSURFACESTYLERENDERING"),
6211            Self::IfcSurfaceStyleShading => Some("IFCSURFACESTYLESHADING"),
6212            Self::IfcSurfaceStyleWithTextures => Some("IFCSURFACESTYLEWITHTEXTURES"),
6213            Self::IfcSurfaceTexture => Some("IFCSURFACETEXTURE"),
6214            Self::IfcSweptAreaSolid => Some("IFCSWEPTAREASOLID"),
6215            Self::IfcSweptDiskSolid => Some("IFCSWEPTDISKSOLID"),
6216            Self::IfcSweptDiskSolidPolygonal => Some("IFCSWEPTDISKSOLIDPOLYGONAL"),
6217            Self::IfcSweptSurface => Some("IFCSWEPTSURFACE"),
6218            Self::IfcSwitchingDevice => Some("IFCSWITCHINGDEVICE"),
6219            Self::IfcSwitchingDeviceType => Some("IFCSWITCHINGDEVICETYPE"),
6220            Self::IfcSystem => Some("IFCSYSTEM"),
6221            Self::IfcSystemFurnitureElement => Some("IFCSYSTEMFURNITUREELEMENT"),
6222            Self::IfcSystemFurnitureElementType => Some("IFCSYSTEMFURNITUREELEMENTTYPE"),
6223            Self::IfcTShapeProfileDef => Some("IFCTSHAPEPROFILEDEF"),
6224            Self::IfcTable => Some("IFCTABLE"),
6225            Self::IfcTableColumn => Some("IFCTABLECOLUMN"),
6226            Self::IfcTableRow => Some("IFCTABLEROW"),
6227            Self::IfcTank => Some("IFCTANK"),
6228            Self::IfcTankType => Some("IFCTANKTYPE"),
6229            Self::IfcTask => Some("IFCTASK"),
6230            Self::IfcTaskTime => Some("IFCTASKTIME"),
6231            Self::IfcTaskTimeRecurring => Some("IFCTASKTIMERECURRING"),
6232            Self::IfcTaskType => Some("IFCTASKTYPE"),
6233            Self::IfcTelecomAddress => Some("IFCTELECOMADDRESS"),
6234            Self::IfcTendon => Some("IFCTENDON"),
6235            Self::IfcTendonAnchor => Some("IFCTENDONANCHOR"),
6236            Self::IfcTendonAnchorType => Some("IFCTENDONANCHORTYPE"),
6237            Self::IfcTendonConduit => Some("IFCTENDONCONDUIT"),
6238            Self::IfcTendonConduitType => Some("IFCTENDONCONDUITTYPE"),
6239            Self::IfcTendonType => Some("IFCTENDONTYPE"),
6240            Self::IfcTessellatedFaceSet => Some("IFCTESSELLATEDFACESET"),
6241            Self::IfcTessellatedItem => Some("IFCTESSELLATEDITEM"),
6242            Self::IfcTextLiteral => Some("IFCTEXTLITERAL"),
6243            Self::IfcTextLiteralWithExtent => Some("IFCTEXTLITERALWITHEXTENT"),
6244            Self::IfcTextStyle => Some("IFCTEXTSTYLE"),
6245            Self::IfcTextStyleFontModel => Some("IFCTEXTSTYLEFONTMODEL"),
6246            Self::IfcTextStyleForDefinedFont => Some("IFCTEXTSTYLEFORDEFINEDFONT"),
6247            Self::IfcTextStyleTextModel => Some("IFCTEXTSTYLETEXTMODEL"),
6248            Self::IfcTextureCoordinate => Some("IFCTEXTURECOORDINATE"),
6249            Self::IfcTextureCoordinateGenerator => Some("IFCTEXTURECOORDINATEGENERATOR"),
6250            Self::IfcTextureCoordinateIndices => Some("IFCTEXTURECOORDINATEINDICES"),
6251            Self::IfcTextureCoordinateIndicesWithVoids => {
6252                Some("IFCTEXTURECOORDINATEINDICESWITHVOIDS")
6253            }
6254            Self::IfcTextureMap => Some("IFCTEXTUREMAP"),
6255            Self::IfcTextureVertex => Some("IFCTEXTUREVERTEX"),
6256            Self::IfcTextureVertexList => Some("IFCTEXTUREVERTEXLIST"),
6257            Self::IfcThirdOrderPolynomialSpiral => Some("IFCTHIRDORDERPOLYNOMIALSPIRAL"),
6258            Self::IfcTimePeriod => Some("IFCTIMEPERIOD"),
6259            Self::IfcTimeSeries => Some("IFCTIMESERIES"),
6260            Self::IfcTimeSeriesValue => Some("IFCTIMESERIESVALUE"),
6261            Self::IfcTopologicalRepresentationItem => Some("IFCTOPOLOGICALREPRESENTATIONITEM"),
6262            Self::IfcTopologyRepresentation => Some("IFCTOPOLOGYREPRESENTATION"),
6263            Self::IfcToroidalSurface => Some("IFCTOROIDALSURFACE"),
6264            Self::IfcTrackElement => Some("IFCTRACKELEMENT"),
6265            Self::IfcTrackElementType => Some("IFCTRACKELEMENTTYPE"),
6266            Self::IfcTransformer => Some("IFCTRANSFORMER"),
6267            Self::IfcTransformerType => Some("IFCTRANSFORMERTYPE"),
6268            Self::IfcTransportElement => Some("IFCTRANSPORTELEMENT"),
6269            Self::IfcTransportElementType => Some("IFCTRANSPORTELEMENTTYPE"),
6270            Self::IfcTransportationDevice => Some("IFCTRANSPORTATIONDEVICE"),
6271            Self::IfcTransportationDeviceType => Some("IFCTRANSPORTATIONDEVICETYPE"),
6272            Self::IfcTrapeziumProfileDef => Some("IFCTRAPEZIUMPROFILEDEF"),
6273            Self::IfcTriangulatedFaceSet => Some("IFCTRIANGULATEDFACESET"),
6274            Self::IfcTriangulatedIrregularNetwork => Some("IFCTRIANGULATEDIRREGULARNETWORK"),
6275            Self::IfcTrimmedCurve => Some("IFCTRIMMEDCURVE"),
6276            Self::IfcTubeBundle => Some("IFCTUBEBUNDLE"),
6277            Self::IfcTubeBundleType => Some("IFCTUBEBUNDLETYPE"),
6278            Self::IfcTypeObject => Some("IFCTYPEOBJECT"),
6279            Self::IfcTypeProcess => Some("IFCTYPEPROCESS"),
6280            Self::IfcTypeProduct => Some("IFCTYPEPRODUCT"),
6281            Self::IfcTypeResource => Some("IFCTYPERESOURCE"),
6282            Self::IfcUShapeProfileDef => Some("IFCUSHAPEPROFILEDEF"),
6283            Self::IfcUnitAssignment => Some("IFCUNITASSIGNMENT"),
6284            Self::IfcUnitaryControlElement => Some("IFCUNITARYCONTROLELEMENT"),
6285            Self::IfcUnitaryControlElementType => Some("IFCUNITARYCONTROLELEMENTTYPE"),
6286            Self::IfcUnitaryEquipment => Some("IFCUNITARYEQUIPMENT"),
6287            Self::IfcUnitaryEquipmentType => Some("IFCUNITARYEQUIPMENTTYPE"),
6288            Self::IfcValve => Some("IFCVALVE"),
6289            Self::IfcValveType => Some("IFCVALVETYPE"),
6290            Self::IfcVector => Some("IFCVECTOR"),
6291            Self::IfcVehicle => Some("IFCVEHICLE"),
6292            Self::IfcVehicleType => Some("IFCVEHICLETYPE"),
6293            Self::IfcVertex => Some("IFCVERTEX"),
6294            Self::IfcVertexLoop => Some("IFCVERTEXLOOP"),
6295            Self::IfcVertexPoint => Some("IFCVERTEXPOINT"),
6296            Self::IfcVibrationDamper => Some("IFCVIBRATIONDAMPER"),
6297            Self::IfcVibrationDamperType => Some("IFCVIBRATIONDAMPERTYPE"),
6298            Self::IfcVibrationIsolator => Some("IFCVIBRATIONISOLATOR"),
6299            Self::IfcVibrationIsolatorType => Some("IFCVIBRATIONISOLATORTYPE"),
6300            Self::IfcVirtualElement => Some("IFCVIRTUALELEMENT"),
6301            Self::IfcVirtualGridIntersection => Some("IFCVIRTUALGRIDINTERSECTION"),
6302            Self::IfcVoidingFeature => Some("IFCVOIDINGFEATURE"),
6303            Self::IfcWall => Some("IFCWALL"),
6304            Self::IfcWallStandardCase => Some("IFCWALLSTANDARDCASE"),
6305            Self::IfcWallType => Some("IFCWALLTYPE"),
6306            Self::IfcWasteTerminal => Some("IFCWASTETERMINAL"),
6307            Self::IfcWasteTerminalType => Some("IFCWASTETERMINALTYPE"),
6308            Self::IfcWellKnownText => Some("IFCWELLKNOWNTEXT"),
6309            Self::IfcWindow => Some("IFCWINDOW"),
6310            Self::IfcWindowLiningProperties => Some("IFCWINDOWLININGPROPERTIES"),
6311            Self::IfcWindowPanelProperties => Some("IFCWINDOWPANELPROPERTIES"),
6312            Self::IfcWindowType => Some("IFCWINDOWTYPE"),
6313            Self::IfcWorkCalendar => Some("IFCWORKCALENDAR"),
6314            Self::IfcWorkControl => Some("IFCWORKCONTROL"),
6315            Self::IfcWorkPlan => Some("IFCWORKPLAN"),
6316            Self::IfcWorkSchedule => Some("IFCWORKSCHEDULE"),
6317            Self::IfcWorkTime => Some("IFCWORKTIME"),
6318            Self::IfcZShapeProfileDef => Some("IFCZSHAPEPROFILEDEF"),
6319            Self::IfcZone => Some("IFCZONE"),
6320            Self::IfcBeamStandardCase => Some("IFCBEAMSTANDARDCASE"),
6321            Self::IfcBuildingElement => Some("IFCBUILDINGELEMENT"),
6322            Self::IfcBuildingElementType => Some("IFCBUILDINGELEMENTTYPE"),
6323            Self::IfcColumnStandardCase => Some("IFCCOLUMNSTANDARDCASE"),
6324            Self::IfcDoorStandardCase => Some("IFCDOORSTANDARDCASE"),
6325            Self::IfcDoorStyle => Some("IFCDOORSTYLE"),
6326            Self::IfcMemberStandardCase => Some("IFCMEMBERSTANDARDCASE"),
6327            Self::IfcOpeningStandardCase => Some("IFCOPENINGSTANDARDCASE"),
6328            Self::IfcPlateStandardCase => Some("IFCPLATESTANDARDCASE"),
6329            Self::IfcPresentationStyleAssignment => Some("IFCPRESENTATIONSTYLEASSIGNMENT"),
6330            Self::IfcProxy => Some("IFCPROXY"),
6331            Self::IfcSlabElementedCase => Some("IFCSLABELEMENTEDCASE"),
6332            Self::IfcSlabStandardCase => Some("IFCSLABSTANDARDCASE"),
6333            Self::IfcWallElementedCase => Some("IFCWALLELEMENTEDCASE"),
6334            Self::IfcWindowStandardCase => Some("IFCWINDOWSTANDARDCASE"),
6335            Self::IfcWindowStyle => Some("IFCWINDOWSTYLE"),
6336            Self::Ifc2DCompositeCurve => Some("IFC2DCOMPOSITECURVE"),
6337            Self::IfcAngularDimension => Some("IFCANGULARDIMENSION"),
6338            Self::IfcAnnotationCurveOccurrence => Some("IFCANNOTATIONCURVEOCCURRENCE"),
6339            Self::IfcAnnotationFillAreaOccurrence => Some("IFCANNOTATIONFILLAREAOCCURRENCE"),
6340            Self::IfcAnnotationOccurrence => Some("IFCANNOTATIONOCCURRENCE"),
6341            Self::IfcAnnotationSurface => Some("IFCANNOTATIONSURFACE"),
6342            Self::IfcAnnotationSurfaceOccurrence => Some("IFCANNOTATIONSURFACEOCCURRENCE"),
6343            Self::IfcAnnotationSymbolOccurrence => Some("IFCANNOTATIONSYMBOLOCCURRENCE"),
6344            Self::IfcAnnotationTextOccurrence => Some("IFCANNOTATIONTEXTOCCURRENCE"),
6345            Self::IfcAppliedValueRelationship => Some("IFCAPPLIEDVALUERELATIONSHIP"),
6346            Self::IfcApprovalActorRelationship => Some("IFCAPPROVALACTORRELATIONSHIP"),
6347            Self::IfcApprovalPropertyRelationship => Some("IFCAPPROVALPROPERTYRELATIONSHIP"),
6348            Self::IfcBezierCurve => Some("IFCBEZIERCURVE"),
6349            Self::IfcBuildingElementComponent => Some("IFCBUILDINGELEMENTCOMPONENT"),
6350            Self::IfcCalendarDate => Some("IFCCALENDARDATE"),
6351            Self::IfcChamferEdgeFeature => Some("IFCCHAMFEREDGEFEATURE"),
6352            Self::IfcClassificationItem => Some("IFCCLASSIFICATIONITEM"),
6353            Self::IfcClassificationItemRelationship => Some("IFCCLASSIFICATIONITEMRELATIONSHIP"),
6354            Self::IfcClassificationNotation => Some("IFCCLASSIFICATIONNOTATION"),
6355            Self::IfcClassificationNotationFacet => Some("IFCCLASSIFICATIONNOTATIONFACET"),
6356            Self::IfcCondition => Some("IFCCONDITION"),
6357            Self::IfcConditionCriterion => Some("IFCCONDITIONCRITERION"),
6358            Self::IfcConnectionPortGeometry => Some("IFCCONNECTIONPORTGEOMETRY"),
6359            Self::IfcConstraintAggregationRelationship => {
6360                Some("IFCCONSTRAINTAGGREGATIONRELATIONSHIP")
6361            }
6362            Self::IfcConstraintClassificationRelationship => {
6363                Some("IFCCONSTRAINTCLASSIFICATIONRELATIONSHIP")
6364            }
6365            Self::IfcConstraintRelationship => Some("IFCCONSTRAINTRELATIONSHIP"),
6366            Self::IfcCoordinatedUniversalTimeOffset => Some("IFCCOORDINATEDUNIVERSALTIMEOFFSET"),
6367            Self::IfcCraneRailAShapeProfileDef => Some("IFCCRANERAILASHAPEPROFILEDEF"),
6368            Self::IfcCraneRailFShapeProfileDef => Some("IFCCRANERAILFSHAPEPROFILEDEF"),
6369            Self::IfcDateAndTime => Some("IFCDATEANDTIME"),
6370            Self::IfcDefinedSymbol => Some("IFCDEFINEDSYMBOL"),
6371            Self::IfcDiameterDimension => Some("IFCDIAMETERDIMENSION"),
6372            Self::IfcDimensionCalloutRelationship => Some("IFCDIMENSIONCALLOUTRELATIONSHIP"),
6373            Self::IfcDimensionCurve => Some("IFCDIMENSIONCURVE"),
6374            Self::IfcDimensionCurveDirectedCallout => Some("IFCDIMENSIONCURVEDIRECTEDCALLOUT"),
6375            Self::IfcDimensionCurveTerminator => Some("IFCDIMENSIONCURVETERMINATOR"),
6376            Self::IfcDimensionPair => Some("IFCDIMENSIONPAIR"),
6377            Self::IfcDocumentElectronicFormat => Some("IFCDOCUMENTELECTRONICFORMAT"),
6378            Self::IfcDraughtingCallout => Some("IFCDRAUGHTINGCALLOUT"),
6379            Self::IfcDraughtingCalloutRelationship => Some("IFCDRAUGHTINGCALLOUTRELATIONSHIP"),
6380            Self::IfcDraughtingPreDefinedTextFont => Some("IFCDRAUGHTINGPREDEFINEDTEXTFONT"),
6381            Self::IfcEdgeFeature => Some("IFCEDGEFEATURE"),
6382            Self::IfcElectricDistributionPoint => Some("IFCELECTRICDISTRIBUTIONPOINT"),
6383            Self::IfcElectricHeaterType => Some("IFCELECTRICHEATERTYPE"),
6384            Self::IfcElectricalBaseProperties => Some("IFCELECTRICALBASEPROPERTIES"),
6385            Self::IfcElectricalCircuit => Some("IFCELECTRICALCIRCUIT"),
6386            Self::IfcElectricalElement => Some("IFCELECTRICALELEMENT"),
6387            Self::IfcEnergyProperties => Some("IFCENERGYPROPERTIES"),
6388            Self::IfcEnvironmentalImpactValue => Some("IFCENVIRONMENTALIMPACTVALUE"),
6389            Self::IfcEquipmentElement => Some("IFCEQUIPMENTELEMENT"),
6390            Self::IfcEquipmentStandard => Some("IFCEQUIPMENTSTANDARD"),
6391            Self::IfcExtendedMaterialProperties => Some("IFCEXTENDEDMATERIALPROPERTIES"),
6392            Self::IfcExternallyDefinedSymbol => Some("IFCEXTERNALLYDEFINEDSYMBOL"),
6393            Self::IfcFillAreaStyleTileSymbolWithStyle => {
6394                Some("IFCFILLAREASTYLETILESYMBOLWITHSTYLE")
6395            }
6396            Self::IfcFluidFlowProperties => Some("IFCFLUIDFLOWPROPERTIES"),
6397            Self::IfcFuelProperties => Some("IFCFUELPROPERTIES"),
6398            Self::IfcFurnitureStandard => Some("IFCFURNITURESTANDARD"),
6399            Self::IfcGasTerminalType => Some("IFCGASTERMINALTYPE"),
6400            Self::IfcGeneralMaterialProperties => Some("IFCGENERALMATERIALPROPERTIES"),
6401            Self::IfcGeneralProfileProperties => Some("IFCGENERALPROFILEPROPERTIES"),
6402            Self::IfcHygroscopicMaterialProperties => Some("IFCHYGROSCOPICMATERIALPROPERTIES"),
6403            Self::IfcLinearDimension => Some("IFCLINEARDIMENSION"),
6404            Self::IfcLocalTime => Some("IFCLOCALTIME"),
6405            Self::IfcMechanicalConcreteMaterialProperties => {
6406                Some("IFCMECHANICALCONCRETEMATERIALPROPERTIES")
6407            }
6408            Self::IfcMechanicalMaterialProperties => Some("IFCMECHANICALMATERIALPROPERTIES"),
6409            Self::IfcMechanicalSteelMaterialProperties => {
6410                Some("IFCMECHANICALSTEELMATERIALPROPERTIES")
6411            }
6412            Self::IfcMove => Some("IFCMOVE"),
6413            Self::IfcOneDirectionRepeatFactor => Some("IFCONEDIRECTIONREPEATFACTOR"),
6414            Self::IfcOpticalMaterialProperties => Some("IFCOPTICALMATERIALPROPERTIES"),
6415            Self::IfcOrderAction => Some("IFCORDERACTION"),
6416            Self::IfcPreDefinedDimensionSymbol => Some("IFCPREDEFINEDDIMENSIONSYMBOL"),
6417            Self::IfcPreDefinedPointMarkerSymbol => Some("IFCPREDEFINEDPOINTMARKERSYMBOL"),
6418            Self::IfcPreDefinedSymbol => Some("IFCPREDEFINEDSYMBOL"),
6419            Self::IfcPreDefinedTerminatorSymbol => Some("IFCPREDEFINEDTERMINATORSYMBOL"),
6420            Self::IfcProductsOfCombustionProperties => Some("IFCPRODUCTSOFCOMBUSTIONPROPERTIES"),
6421            Self::IfcProjectOrderRecord => Some("IFCPROJECTORDERRECORD"),
6422            Self::IfcProjectionCurve => Some("IFCPROJECTIONCURVE"),
6423            Self::IfcPropertyConstraintRelationship => Some("IFCPROPERTYCONSTRAINTRELATIONSHIP"),
6424            Self::IfcRadiusDimension => Some("IFCRADIUSDIMENSION"),
6425            Self::IfcRationalBezierCurve => Some("IFCRATIONALBEZIERCURVE"),
6426            Self::IfcReferencesValueDocument => Some("IFCREFERENCESVALUEDOCUMENT"),
6427            Self::IfcRelAssignsTasks => Some("IFCRELASSIGNSTASKS"),
6428            Self::IfcRelAssignsToProjectOrder => Some("IFCRELASSIGNSTOPROJECTORDER"),
6429            Self::IfcRelAssociatesAppliedValue => Some("IFCRELASSOCIATESAPPLIEDVALUE"),
6430            Self::IfcRelAssociatesProfileProperties => Some("IFCRELASSOCIATESPROFILEPROPERTIES"),
6431            Self::IfcRelConnectsStructuralElement => Some("IFCRELCONNECTSSTRUCTURALELEMENT"),
6432            Self::IfcRelInteractionRequirements => Some("IFCRELINTERACTIONREQUIREMENTS"),
6433            Self::IfcRelOccupiesSpaces => Some("IFCRELOCCUPIESSPACES"),
6434            Self::IfcRelOverridesProperties => Some("IFCRELOVERRIDESPROPERTIES"),
6435            Self::IfcRelSchedulesCostItems => Some("IFCRELSCHEDULESCOSTITEMS"),
6436            Self::IfcRelaxation => Some("IFCRELAXATION"),
6437            Self::IfcRibPlateProfileProperties => Some("IFCRIBPLATEPROFILEPROPERTIES"),
6438            Self::IfcRoundedEdgeFeature => Some("IFCROUNDEDEDGEFEATURE"),
6439            Self::IfcScheduleTimeControl => Some("IFCSCHEDULETIMECONTROL"),
6440            Self::IfcServiceLife => Some("IFCSERVICELIFE"),
6441            Self::IfcServiceLifeFactor => Some("IFCSERVICELIFEFACTOR"),
6442            Self::IfcSoundProperties => Some("IFCSOUNDPROPERTIES"),
6443            Self::IfcSoundValue => Some("IFCSOUNDVALUE"),
6444            Self::IfcSpaceProgram => Some("IFCSPACEPROGRAM"),
6445            Self::IfcSpaceThermalLoadProperties => Some("IFCSPACETHERMALLOADPROPERTIES"),
6446            Self::IfcStructuralLinearActionVarying => Some("IFCSTRUCTURALLINEARACTIONVARYING"),
6447            Self::IfcStructuralPlanarActionVarying => Some("IFCSTRUCTURALPLANARACTIONVARYING"),
6448            Self::IfcStructuralProfileProperties => Some("IFCSTRUCTURALPROFILEPROPERTIES"),
6449            Self::IfcStructuralSteelProfileProperties => {
6450                Some("IFCSTRUCTURALSTEELPROFILEPROPERTIES")
6451            }
6452            Self::IfcStructuredDimensionCallout => Some("IFCSTRUCTUREDDIMENSIONCALLOUT"),
6453            Self::IfcSymbolStyle => Some("IFCSYMBOLSTYLE"),
6454            Self::IfcTerminatorSymbol => Some("IFCTERMINATORSYMBOL"),
6455            Self::IfcTextStyleWithBoxCharacteristics => Some("IFCTEXTSTYLEWITHBOXCHARACTERISTICS"),
6456            Self::IfcThermalMaterialProperties => Some("IFCTHERMALMATERIALPROPERTIES"),
6457            Self::IfcTimeSeriesReferenceRelationship => Some("IFCTIMESERIESREFERENCERELATIONSHIP"),
6458            Self::IfcTimeSeriesSchedule => Some("IFCTIMESERIESSCHEDULE"),
6459            Self::IfcTwoDirectionRepeatFactor => Some("IFCTWODIRECTIONREPEATFACTOR"),
6460            Self::IfcVertexBasedTextureMap => Some("IFCVERTEXBASEDTEXTUREMAP"),
6461            Self::IfcWaterProperties => Some("IFCWATERPROPERTIES"),
6462            Self::IfcCircularArcSegment2D => Some("IFCCIRCULARARCSEGMENT2D"),
6463            Self::IfcCurveSegment2D => Some("IFCCURVESEGMENT2D"),
6464            Self::IfcDistanceExpression => Some("IFCDISTANCEEXPRESSION"),
6465            Self::IfcLineSegment2D => Some("IFCLINESEGMENT2D"),
6466            Self::IfcOrientationExpression => Some("IFCORIENTATIONEXPRESSION"),
6467            Self::IfcTransitionCurveSegment2D => Some("IFCTRANSITIONCURVESEGMENT2D"),
6468            Self::IfcAlignment2DHorizontal => Some("IFCALIGNMENT2DHORIZONTAL"),
6469            Self::IfcAlignment2DHorizontalSegment => Some("IFCALIGNMENT2DHORIZONTALSEGMENT"),
6470            Self::IfcAlignment2DSegment => Some("IFCALIGNMENT2DSEGMENT"),
6471            Self::IfcAlignment2DVerSegCircularArc => Some("IFCALIGNMENT2DVERSEGCIRCULARARC"),
6472            Self::IfcAlignment2DVerticalSegment => Some("IFCALIGNMENT2DVERTICALSEGMENT"),
6473            Self::IfcAlignment2DVerSegLine => Some("IFCALIGNMENT2DVERSEGLINE"),
6474            Self::IfcAlignment2DVerSegParabolicArc => Some("IFCALIGNMENT2DVERSEGPARABOLICARC"),
6475            Self::IfcAlignment2DVertical => Some("IFCALIGNMENT2DVERTICAL"),
6476            Self::IfcAlignmentCurve => Some("IFCALIGNMENTCURVE"),
6477            Self::Unknown(_) => None,
6478        }
6479    }
6480
6481    /// Get display name (PascalCase)
6482    pub fn name(&self) -> &str {
6483        match self {
6484            Self::IfcActionRequest => "IfcActionRequest",
6485            Self::IfcActor => "IfcActor",
6486            Self::IfcActorRole => "IfcActorRole",
6487            Self::IfcActuator => "IfcActuator",
6488            Self::IfcActuatorType => "IfcActuatorType",
6489            Self::IfcAddress => "IfcAddress",
6490            Self::IfcAdvancedBrep => "IfcAdvancedBrep",
6491            Self::IfcAdvancedBrepWithVoids => "IfcAdvancedBrepWithVoids",
6492            Self::IfcAdvancedFace => "IfcAdvancedFace",
6493            Self::IfcAirTerminal => "IfcAirTerminal",
6494            Self::IfcAirTerminalBox => "IfcAirTerminalBox",
6495            Self::IfcAirTerminalBoxType => "IfcAirTerminalBoxType",
6496            Self::IfcAirTerminalType => "IfcAirTerminalType",
6497            Self::IfcAirToAirHeatRecovery => "IfcAirToAirHeatRecovery",
6498            Self::IfcAirToAirHeatRecoveryType => "IfcAirToAirHeatRecoveryType",
6499            Self::IfcAlarm => "IfcAlarm",
6500            Self::IfcAlarmType => "IfcAlarmType",
6501            Self::IfcAlignment => "IfcAlignment",
6502            Self::IfcAlignmentCant => "IfcAlignmentCant",
6503            Self::IfcAlignmentCantSegment => "IfcAlignmentCantSegment",
6504            Self::IfcAlignmentHorizontal => "IfcAlignmentHorizontal",
6505            Self::IfcAlignmentHorizontalSegment => "IfcAlignmentHorizontalSegment",
6506            Self::IfcAlignmentParameterSegment => "IfcAlignmentParameterSegment",
6507            Self::IfcAlignmentSegment => "IfcAlignmentSegment",
6508            Self::IfcAlignmentVertical => "IfcAlignmentVertical",
6509            Self::IfcAlignmentVerticalSegment => "IfcAlignmentVerticalSegment",
6510            Self::IfcAnnotation => "IfcAnnotation",
6511            Self::IfcAnnotationFillArea => "IfcAnnotationFillArea",
6512            Self::IfcApplication => "IfcApplication",
6513            Self::IfcAppliedValue => "IfcAppliedValue",
6514            Self::IfcApproval => "IfcApproval",
6515            Self::IfcApprovalRelationship => "IfcApprovalRelationship",
6516            Self::IfcArbitraryClosedProfileDef => "IfcArbitraryClosedProfileDef",
6517            Self::IfcArbitraryOpenProfileDef => "IfcArbitraryOpenProfileDef",
6518            Self::IfcArbitraryProfileDefWithVoids => "IfcArbitraryProfileDefWithVoids",
6519            Self::IfcAsset => "IfcAsset",
6520            Self::IfcAsymmetricIShapeProfileDef => "IfcAsymmetricIShapeProfileDef",
6521            Self::IfcAudioVisualAppliance => "IfcAudioVisualAppliance",
6522            Self::IfcAudioVisualApplianceType => "IfcAudioVisualApplianceType",
6523            Self::IfcAxis1Placement => "IfcAxis1Placement",
6524            Self::IfcAxis2Placement2D => "IfcAxis2Placement2D",
6525            Self::IfcAxis2Placement3D => "IfcAxis2Placement3D",
6526            Self::IfcAxis2PlacementLinear => "IfcAxis2PlacementLinear",
6527            Self::IfcBSplineCurve => "IfcBSplineCurve",
6528            Self::IfcBSplineCurveWithKnots => "IfcBSplineCurveWithKnots",
6529            Self::IfcBSplineSurface => "IfcBSplineSurface",
6530            Self::IfcBSplineSurfaceWithKnots => "IfcBSplineSurfaceWithKnots",
6531            Self::IfcBeam => "IfcBeam",
6532            Self::IfcBeamType => "IfcBeamType",
6533            Self::IfcBearing => "IfcBearing",
6534            Self::IfcBearingType => "IfcBearingType",
6535            Self::IfcBlobTexture => "IfcBlobTexture",
6536            Self::IfcBlock => "IfcBlock",
6537            Self::IfcBoiler => "IfcBoiler",
6538            Self::IfcBoilerType => "IfcBoilerType",
6539            Self::IfcBooleanClippingResult => "IfcBooleanClippingResult",
6540            Self::IfcBooleanResult => "IfcBooleanResult",
6541            Self::IfcBorehole => "IfcBorehole",
6542            Self::IfcBoundaryCondition => "IfcBoundaryCondition",
6543            Self::IfcBoundaryCurve => "IfcBoundaryCurve",
6544            Self::IfcBoundaryEdgeCondition => "IfcBoundaryEdgeCondition",
6545            Self::IfcBoundaryFaceCondition => "IfcBoundaryFaceCondition",
6546            Self::IfcBoundaryNodeCondition => "IfcBoundaryNodeCondition",
6547            Self::IfcBoundaryNodeConditionWarping => "IfcBoundaryNodeConditionWarping",
6548            Self::IfcBoundedCurve => "IfcBoundedCurve",
6549            Self::IfcBoundedSurface => "IfcBoundedSurface",
6550            Self::IfcBoundingBox => "IfcBoundingBox",
6551            Self::IfcBoxedHalfSpace => "IfcBoxedHalfSpace",
6552            Self::IfcBridge => "IfcBridge",
6553            Self::IfcBridgePart => "IfcBridgePart",
6554            Self::IfcBuilding => "IfcBuilding",
6555            Self::IfcBuildingElementPart => "IfcBuildingElementPart",
6556            Self::IfcBuildingElementPartType => "IfcBuildingElementPartType",
6557            Self::IfcBuildingElementProxy => "IfcBuildingElementProxy",
6558            Self::IfcBuildingElementProxyType => "IfcBuildingElementProxyType",
6559            Self::IfcBuildingStorey => "IfcBuildingStorey",
6560            Self::IfcBuildingSystem => "IfcBuildingSystem",
6561            Self::IfcBuiltElement => "IfcBuiltElement",
6562            Self::IfcBuiltElementType => "IfcBuiltElementType",
6563            Self::IfcBuiltSystem => "IfcBuiltSystem",
6564            Self::IfcBurner => "IfcBurner",
6565            Self::IfcBurnerType => "IfcBurnerType",
6566            Self::IfcCShapeProfileDef => "IfcCShapeProfileDef",
6567            Self::IfcCableCarrierFitting => "IfcCableCarrierFitting",
6568            Self::IfcCableCarrierFittingType => "IfcCableCarrierFittingType",
6569            Self::IfcCableCarrierSegment => "IfcCableCarrierSegment",
6570            Self::IfcCableCarrierSegmentType => "IfcCableCarrierSegmentType",
6571            Self::IfcCableFitting => "IfcCableFitting",
6572            Self::IfcCableFittingType => "IfcCableFittingType",
6573            Self::IfcCableSegment => "IfcCableSegment",
6574            Self::IfcCableSegmentType => "IfcCableSegmentType",
6575            Self::IfcCaissonFoundation => "IfcCaissonFoundation",
6576            Self::IfcCaissonFoundationType => "IfcCaissonFoundationType",
6577            Self::IfcCartesianPoint => "IfcCartesianPoint",
6578            Self::IfcCartesianPointList => "IfcCartesianPointList",
6579            Self::IfcCartesianPointList2D => "IfcCartesianPointList2D",
6580            Self::IfcCartesianPointList3D => "IfcCartesianPointList3D",
6581            Self::IfcCartesianTransformationOperator => "IfcCartesianTransformationOperator",
6582            Self::IfcCartesianTransformationOperator2D => "IfcCartesianTransformationOperator2D",
6583            Self::IfcCartesianTransformationOperator2DnonUniform => {
6584                "IfcCartesianTransformationOperator2DnonUniform"
6585            }
6586            Self::IfcCartesianTransformationOperator3D => "IfcCartesianTransformationOperator3D",
6587            Self::IfcCartesianTransformationOperator3DnonUniform => {
6588                "IfcCartesianTransformationOperator3DnonUniform"
6589            }
6590            Self::IfcCenterLineProfileDef => "IfcCenterLineProfileDef",
6591            Self::IfcChiller => "IfcChiller",
6592            Self::IfcChillerType => "IfcChillerType",
6593            Self::IfcChimney => "IfcChimney",
6594            Self::IfcChimneyType => "IfcChimneyType",
6595            Self::IfcCircle => "IfcCircle",
6596            Self::IfcCircleHollowProfileDef => "IfcCircleHollowProfileDef",
6597            Self::IfcCircleProfileDef => "IfcCircleProfileDef",
6598            Self::IfcCivilElement => "IfcCivilElement",
6599            Self::IfcCivilElementType => "IfcCivilElementType",
6600            Self::IfcClassification => "IfcClassification",
6601            Self::IfcClassificationReference => "IfcClassificationReference",
6602            Self::IfcClosedShell => "IfcClosedShell",
6603            Self::IfcClothoid => "IfcClothoid",
6604            Self::IfcCoil => "IfcCoil",
6605            Self::IfcCoilType => "IfcCoilType",
6606            Self::IfcColourRgb => "IfcColourRgb",
6607            Self::IfcColourRgbList => "IfcColourRgbList",
6608            Self::IfcColourSpecification => "IfcColourSpecification",
6609            Self::IfcColumn => "IfcColumn",
6610            Self::IfcColumnType => "IfcColumnType",
6611            Self::IfcCommunicationsAppliance => "IfcCommunicationsAppliance",
6612            Self::IfcCommunicationsApplianceType => "IfcCommunicationsApplianceType",
6613            Self::IfcComplexProperty => "IfcComplexProperty",
6614            Self::IfcComplexPropertyTemplate => "IfcComplexPropertyTemplate",
6615            Self::IfcCompositeCurve => "IfcCompositeCurve",
6616            Self::IfcCompositeCurveOnSurface => "IfcCompositeCurveOnSurface",
6617            Self::IfcCompositeCurveSegment => "IfcCompositeCurveSegment",
6618            Self::IfcCompositeProfileDef => "IfcCompositeProfileDef",
6619            Self::IfcCompressor => "IfcCompressor",
6620            Self::IfcCompressorType => "IfcCompressorType",
6621            Self::IfcCondenser => "IfcCondenser",
6622            Self::IfcCondenserType => "IfcCondenserType",
6623            Self::IfcConic => "IfcConic",
6624            Self::IfcConnectedFaceSet => "IfcConnectedFaceSet",
6625            Self::IfcConnectionCurveGeometry => "IfcConnectionCurveGeometry",
6626            Self::IfcConnectionGeometry => "IfcConnectionGeometry",
6627            Self::IfcConnectionPointEccentricity => "IfcConnectionPointEccentricity",
6628            Self::IfcConnectionPointGeometry => "IfcConnectionPointGeometry",
6629            Self::IfcConnectionSurfaceGeometry => "IfcConnectionSurfaceGeometry",
6630            Self::IfcConnectionVolumeGeometry => "IfcConnectionVolumeGeometry",
6631            Self::IfcConstraint => "IfcConstraint",
6632            Self::IfcConstructionEquipmentResource => "IfcConstructionEquipmentResource",
6633            Self::IfcConstructionEquipmentResourceType => "IfcConstructionEquipmentResourceType",
6634            Self::IfcConstructionMaterialResource => "IfcConstructionMaterialResource",
6635            Self::IfcConstructionMaterialResourceType => "IfcConstructionMaterialResourceType",
6636            Self::IfcConstructionProductResource => "IfcConstructionProductResource",
6637            Self::IfcConstructionProductResourceType => "IfcConstructionProductResourceType",
6638            Self::IfcConstructionResource => "IfcConstructionResource",
6639            Self::IfcConstructionResourceType => "IfcConstructionResourceType",
6640            Self::IfcContext => "IfcContext",
6641            Self::IfcContextDependentUnit => "IfcContextDependentUnit",
6642            Self::IfcControl => "IfcControl",
6643            Self::IfcController => "IfcController",
6644            Self::IfcControllerType => "IfcControllerType",
6645            Self::IfcConversionBasedUnit => "IfcConversionBasedUnit",
6646            Self::IfcConversionBasedUnitWithOffset => "IfcConversionBasedUnitWithOffset",
6647            Self::IfcConveyorSegment => "IfcConveyorSegment",
6648            Self::IfcConveyorSegmentType => "IfcConveyorSegmentType",
6649            Self::IfcCooledBeam => "IfcCooledBeam",
6650            Self::IfcCooledBeamType => "IfcCooledBeamType",
6651            Self::IfcCoolingTower => "IfcCoolingTower",
6652            Self::IfcCoolingTowerType => "IfcCoolingTowerType",
6653            Self::IfcCoordinateOperation => "IfcCoordinateOperation",
6654            Self::IfcCoordinateReferenceSystem => "IfcCoordinateReferenceSystem",
6655            Self::IfcCosineSpiral => "IfcCosineSpiral",
6656            Self::IfcCostItem => "IfcCostItem",
6657            Self::IfcCostSchedule => "IfcCostSchedule",
6658            Self::IfcCostValue => "IfcCostValue",
6659            Self::IfcCourse => "IfcCourse",
6660            Self::IfcCourseType => "IfcCourseType",
6661            Self::IfcCovering => "IfcCovering",
6662            Self::IfcCoveringType => "IfcCoveringType",
6663            Self::IfcCrewResource => "IfcCrewResource",
6664            Self::IfcCrewResourceType => "IfcCrewResourceType",
6665            Self::IfcCsgPrimitive3D => "IfcCsgPrimitive3D",
6666            Self::IfcCsgSolid => "IfcCsgSolid",
6667            Self::IfcCurrencyRelationship => "IfcCurrencyRelationship",
6668            Self::IfcCurtainWall => "IfcCurtainWall",
6669            Self::IfcCurtainWallType => "IfcCurtainWallType",
6670            Self::IfcCurve => "IfcCurve",
6671            Self::IfcCurveBoundedPlane => "IfcCurveBoundedPlane",
6672            Self::IfcCurveBoundedSurface => "IfcCurveBoundedSurface",
6673            Self::IfcCurveSegment => "IfcCurveSegment",
6674            Self::IfcCurveStyle => "IfcCurveStyle",
6675            Self::IfcCurveStyleFont => "IfcCurveStyleFont",
6676            Self::IfcCurveStyleFontAndScaling => "IfcCurveStyleFontAndScaling",
6677            Self::IfcCurveStyleFontPattern => "IfcCurveStyleFontPattern",
6678            Self::IfcCylindricalSurface => "IfcCylindricalSurface",
6679            Self::IfcDamper => "IfcDamper",
6680            Self::IfcDamperType => "IfcDamperType",
6681            Self::IfcDeepFoundation => "IfcDeepFoundation",
6682            Self::IfcDeepFoundationType => "IfcDeepFoundationType",
6683            Self::IfcDerivedProfileDef => "IfcDerivedProfileDef",
6684            Self::IfcDerivedUnit => "IfcDerivedUnit",
6685            Self::IfcDerivedUnitElement => "IfcDerivedUnitElement",
6686            Self::IfcDimensionalExponents => "IfcDimensionalExponents",
6687            Self::IfcDirection => "IfcDirection",
6688            Self::IfcDirectrixCurveSweptAreaSolid => "IfcDirectrixCurveSweptAreaSolid",
6689            Self::IfcDirectrixDerivedReferenceSweptAreaSolid => {
6690                "IfcDirectrixDerivedReferenceSweptAreaSolid"
6691            }
6692            Self::IfcDiscreteAccessory => "IfcDiscreteAccessory",
6693            Self::IfcDiscreteAccessoryType => "IfcDiscreteAccessoryType",
6694            Self::IfcDistributionBoard => "IfcDistributionBoard",
6695            Self::IfcDistributionBoardType => "IfcDistributionBoardType",
6696            Self::IfcDistributionChamberElement => "IfcDistributionChamberElement",
6697            Self::IfcDistributionChamberElementType => "IfcDistributionChamberElementType",
6698            Self::IfcDistributionCircuit => "IfcDistributionCircuit",
6699            Self::IfcDistributionControlElement => "IfcDistributionControlElement",
6700            Self::IfcDistributionControlElementType => "IfcDistributionControlElementType",
6701            Self::IfcDistributionElement => "IfcDistributionElement",
6702            Self::IfcDistributionElementType => "IfcDistributionElementType",
6703            Self::IfcDistributionFlowElement => "IfcDistributionFlowElement",
6704            Self::IfcDistributionFlowElementType => "IfcDistributionFlowElementType",
6705            Self::IfcDistributionPort => "IfcDistributionPort",
6706            Self::IfcDistributionSystem => "IfcDistributionSystem",
6707            Self::IfcDocumentInformation => "IfcDocumentInformation",
6708            Self::IfcDocumentInformationRelationship => "IfcDocumentInformationRelationship",
6709            Self::IfcDocumentReference => "IfcDocumentReference",
6710            Self::IfcDoor => "IfcDoor",
6711            Self::IfcDoorLiningProperties => "IfcDoorLiningProperties",
6712            Self::IfcDoorPanelProperties => "IfcDoorPanelProperties",
6713            Self::IfcDoorType => "IfcDoorType",
6714            Self::IfcDraughtingPreDefinedColour => "IfcDraughtingPreDefinedColour",
6715            Self::IfcDraughtingPreDefinedCurveFont => "IfcDraughtingPreDefinedCurveFont",
6716            Self::IfcDuctFitting => "IfcDuctFitting",
6717            Self::IfcDuctFittingType => "IfcDuctFittingType",
6718            Self::IfcDuctSegment => "IfcDuctSegment",
6719            Self::IfcDuctSegmentType => "IfcDuctSegmentType",
6720            Self::IfcDuctSilencer => "IfcDuctSilencer",
6721            Self::IfcDuctSilencerType => "IfcDuctSilencerType",
6722            Self::IfcEarthworksCut => "IfcEarthworksCut",
6723            Self::IfcEarthworksElement => "IfcEarthworksElement",
6724            Self::IfcEarthworksFill => "IfcEarthworksFill",
6725            Self::IfcEdge => "IfcEdge",
6726            Self::IfcEdgeCurve => "IfcEdgeCurve",
6727            Self::IfcEdgeLoop => "IfcEdgeLoop",
6728            Self::IfcElectricAppliance => "IfcElectricAppliance",
6729            Self::IfcElectricApplianceType => "IfcElectricApplianceType",
6730            Self::IfcElectricDistributionBoard => "IfcElectricDistributionBoard",
6731            Self::IfcElectricDistributionBoardType => "IfcElectricDistributionBoardType",
6732            Self::IfcElectricFlowStorageDevice => "IfcElectricFlowStorageDevice",
6733            Self::IfcElectricFlowStorageDeviceType => "IfcElectricFlowStorageDeviceType",
6734            Self::IfcElectricFlowTreatmentDevice => "IfcElectricFlowTreatmentDevice",
6735            Self::IfcElectricFlowTreatmentDeviceType => "IfcElectricFlowTreatmentDeviceType",
6736            Self::IfcElectricGenerator => "IfcElectricGenerator",
6737            Self::IfcElectricGeneratorType => "IfcElectricGeneratorType",
6738            Self::IfcElectricMotor => "IfcElectricMotor",
6739            Self::IfcElectricMotorType => "IfcElectricMotorType",
6740            Self::IfcElectricTimeControl => "IfcElectricTimeControl",
6741            Self::IfcElectricTimeControlType => "IfcElectricTimeControlType",
6742            Self::IfcElement => "IfcElement",
6743            Self::IfcElementAssembly => "IfcElementAssembly",
6744            Self::IfcElementAssemblyType => "IfcElementAssemblyType",
6745            Self::IfcElementComponent => "IfcElementComponent",
6746            Self::IfcElementComponentType => "IfcElementComponentType",
6747            Self::IfcElementQuantity => "IfcElementQuantity",
6748            Self::IfcElementType => "IfcElementType",
6749            Self::IfcElementarySurface => "IfcElementarySurface",
6750            Self::IfcEllipse => "IfcEllipse",
6751            Self::IfcEllipseProfileDef => "IfcEllipseProfileDef",
6752            Self::IfcEnergyConversionDevice => "IfcEnergyConversionDevice",
6753            Self::IfcEnergyConversionDeviceType => "IfcEnergyConversionDeviceType",
6754            Self::IfcEngine => "IfcEngine",
6755            Self::IfcEngineType => "IfcEngineType",
6756            Self::IfcEvaporativeCooler => "IfcEvaporativeCooler",
6757            Self::IfcEvaporativeCoolerType => "IfcEvaporativeCoolerType",
6758            Self::IfcEvaporator => "IfcEvaporator",
6759            Self::IfcEvaporatorType => "IfcEvaporatorType",
6760            Self::IfcEvent => "IfcEvent",
6761            Self::IfcEventTime => "IfcEventTime",
6762            Self::IfcEventType => "IfcEventType",
6763            Self::IfcExtendedProperties => "IfcExtendedProperties",
6764            Self::IfcExternalInformation => "IfcExternalInformation",
6765            Self::IfcExternalReference => "IfcExternalReference",
6766            Self::IfcExternalReferenceRelationship => "IfcExternalReferenceRelationship",
6767            Self::IfcExternalSpatialElement => "IfcExternalSpatialElement",
6768            Self::IfcExternalSpatialStructureElement => "IfcExternalSpatialStructureElement",
6769            Self::IfcExternallyDefinedHatchStyle => "IfcExternallyDefinedHatchStyle",
6770            Self::IfcExternallyDefinedSurfaceStyle => "IfcExternallyDefinedSurfaceStyle",
6771            Self::IfcExternallyDefinedTextFont => "IfcExternallyDefinedTextFont",
6772            Self::IfcExtrudedAreaSolid => "IfcExtrudedAreaSolid",
6773            Self::IfcExtrudedAreaSolidTapered => "IfcExtrudedAreaSolidTapered",
6774            Self::IfcFace => "IfcFace",
6775            Self::IfcFaceBasedSurfaceModel => "IfcFaceBasedSurfaceModel",
6776            Self::IfcFaceBound => "IfcFaceBound",
6777            Self::IfcFaceOuterBound => "IfcFaceOuterBound",
6778            Self::IfcFaceSurface => "IfcFaceSurface",
6779            Self::IfcFacetedBrep => "IfcFacetedBrep",
6780            Self::IfcFacetedBrepWithVoids => "IfcFacetedBrepWithVoids",
6781            Self::IfcFacility => "IfcFacility",
6782            Self::IfcFacilityPart => "IfcFacilityPart",
6783            Self::IfcFacilityPartCommon => "IfcFacilityPartCommon",
6784            Self::IfcFailureConnectionCondition => "IfcFailureConnectionCondition",
6785            Self::IfcFan => "IfcFan",
6786            Self::IfcFanType => "IfcFanType",
6787            Self::IfcFastener => "IfcFastener",
6788            Self::IfcFastenerType => "IfcFastenerType",
6789            Self::IfcFeatureElement => "IfcFeatureElement",
6790            Self::IfcFeatureElementAddition => "IfcFeatureElementAddition",
6791            Self::IfcFeatureElementSubtraction => "IfcFeatureElementSubtraction",
6792            Self::IfcFillAreaStyle => "IfcFillAreaStyle",
6793            Self::IfcFillAreaStyleHatching => "IfcFillAreaStyleHatching",
6794            Self::IfcFillAreaStyleTiles => "IfcFillAreaStyleTiles",
6795            Self::IfcFilter => "IfcFilter",
6796            Self::IfcFilterType => "IfcFilterType",
6797            Self::IfcFireSuppressionTerminal => "IfcFireSuppressionTerminal",
6798            Self::IfcFireSuppressionTerminalType => "IfcFireSuppressionTerminalType",
6799            Self::IfcFixedReferenceSweptAreaSolid => "IfcFixedReferenceSweptAreaSolid",
6800            Self::IfcFlowController => "IfcFlowController",
6801            Self::IfcFlowControllerType => "IfcFlowControllerType",
6802            Self::IfcFlowFitting => "IfcFlowFitting",
6803            Self::IfcFlowFittingType => "IfcFlowFittingType",
6804            Self::IfcFlowInstrument => "IfcFlowInstrument",
6805            Self::IfcFlowInstrumentType => "IfcFlowInstrumentType",
6806            Self::IfcFlowMeter => "IfcFlowMeter",
6807            Self::IfcFlowMeterType => "IfcFlowMeterType",
6808            Self::IfcFlowMovingDevice => "IfcFlowMovingDevice",
6809            Self::IfcFlowMovingDeviceType => "IfcFlowMovingDeviceType",
6810            Self::IfcFlowSegment => "IfcFlowSegment",
6811            Self::IfcFlowSegmentType => "IfcFlowSegmentType",
6812            Self::IfcFlowStorageDevice => "IfcFlowStorageDevice",
6813            Self::IfcFlowStorageDeviceType => "IfcFlowStorageDeviceType",
6814            Self::IfcFlowTerminal => "IfcFlowTerminal",
6815            Self::IfcFlowTerminalType => "IfcFlowTerminalType",
6816            Self::IfcFlowTreatmentDevice => "IfcFlowTreatmentDevice",
6817            Self::IfcFlowTreatmentDeviceType => "IfcFlowTreatmentDeviceType",
6818            Self::IfcFooting => "IfcFooting",
6819            Self::IfcFootingType => "IfcFootingType",
6820            Self::IfcFurnishingElement => "IfcFurnishingElement",
6821            Self::IfcFurnishingElementType => "IfcFurnishingElementType",
6822            Self::IfcFurniture => "IfcFurniture",
6823            Self::IfcFurnitureType => "IfcFurnitureType",
6824            Self::IfcGeographicCRS => "IfcGeographicCRS",
6825            Self::IfcGeographicElement => "IfcGeographicElement",
6826            Self::IfcGeographicElementType => "IfcGeographicElementType",
6827            Self::IfcGeometricCurveSet => "IfcGeometricCurveSet",
6828            Self::IfcGeometricRepresentationContext => "IfcGeometricRepresentationContext",
6829            Self::IfcGeometricRepresentationItem => "IfcGeometricRepresentationItem",
6830            Self::IfcGeometricRepresentationSubContext => "IfcGeometricRepresentationSubContext",
6831            Self::IfcGeometricSet => "IfcGeometricSet",
6832            Self::IfcGeomodel => "IfcGeomodel",
6833            Self::IfcGeoslice => "IfcGeoslice",
6834            Self::IfcGeotechnicalAssembly => "IfcGeotechnicalAssembly",
6835            Self::IfcGeotechnicalElement => "IfcGeotechnicalElement",
6836            Self::IfcGeotechnicalStratum => "IfcGeotechnicalStratum",
6837            Self::IfcGradientCurve => "IfcGradientCurve",
6838            Self::IfcGrid => "IfcGrid",
6839            Self::IfcGridAxis => "IfcGridAxis",
6840            Self::IfcGridPlacement => "IfcGridPlacement",
6841            Self::IfcGroup => "IfcGroup",
6842            Self::IfcHalfSpaceSolid => "IfcHalfSpaceSolid",
6843            Self::IfcHeatExchanger => "IfcHeatExchanger",
6844            Self::IfcHeatExchangerType => "IfcHeatExchangerType",
6845            Self::IfcHumidifier => "IfcHumidifier",
6846            Self::IfcHumidifierType => "IfcHumidifierType",
6847            Self::IfcIShapeProfileDef => "IfcIShapeProfileDef",
6848            Self::IfcImageTexture => "IfcImageTexture",
6849            Self::IfcImpactProtectionDevice => "IfcImpactProtectionDevice",
6850            Self::IfcImpactProtectionDeviceType => "IfcImpactProtectionDeviceType",
6851            Self::IfcIndexedColourMap => "IfcIndexedColourMap",
6852            Self::IfcIndexedPolyCurve => "IfcIndexedPolyCurve",
6853            Self::IfcIndexedPolygonalFace => "IfcIndexedPolygonalFace",
6854            Self::IfcIndexedPolygonalFaceWithVoids => "IfcIndexedPolygonalFaceWithVoids",
6855            Self::IfcIndexedPolygonalTextureMap => "IfcIndexedPolygonalTextureMap",
6856            Self::IfcIndexedTextureMap => "IfcIndexedTextureMap",
6857            Self::IfcIndexedTriangleTextureMap => "IfcIndexedTriangleTextureMap",
6858            Self::IfcInterceptor => "IfcInterceptor",
6859            Self::IfcInterceptorType => "IfcInterceptorType",
6860            Self::IfcIntersectionCurve => "IfcIntersectionCurve",
6861            Self::IfcInventory => "IfcInventory",
6862            Self::IfcIrregularTimeSeries => "IfcIrregularTimeSeries",
6863            Self::IfcIrregularTimeSeriesValue => "IfcIrregularTimeSeriesValue",
6864            Self::IfcJunctionBox => "IfcJunctionBox",
6865            Self::IfcJunctionBoxType => "IfcJunctionBoxType",
6866            Self::IfcKerb => "IfcKerb",
6867            Self::IfcKerbType => "IfcKerbType",
6868            Self::IfcLShapeProfileDef => "IfcLShapeProfileDef",
6869            Self::IfcLaborResource => "IfcLaborResource",
6870            Self::IfcLaborResourceType => "IfcLaborResourceType",
6871            Self::IfcLagTime => "IfcLagTime",
6872            Self::IfcLamp => "IfcLamp",
6873            Self::IfcLampType => "IfcLampType",
6874            Self::IfcLibraryInformation => "IfcLibraryInformation",
6875            Self::IfcLibraryReference => "IfcLibraryReference",
6876            Self::IfcLightDistributionData => "IfcLightDistributionData",
6877            Self::IfcLightFixture => "IfcLightFixture",
6878            Self::IfcLightFixtureType => "IfcLightFixtureType",
6879            Self::IfcLightIntensityDistribution => "IfcLightIntensityDistribution",
6880            Self::IfcLightSource => "IfcLightSource",
6881            Self::IfcLightSourceAmbient => "IfcLightSourceAmbient",
6882            Self::IfcLightSourceDirectional => "IfcLightSourceDirectional",
6883            Self::IfcLightSourceGoniometric => "IfcLightSourceGoniometric",
6884            Self::IfcLightSourcePositional => "IfcLightSourcePositional",
6885            Self::IfcLightSourceSpot => "IfcLightSourceSpot",
6886            Self::IfcLine => "IfcLine",
6887            Self::IfcLinearElement => "IfcLinearElement",
6888            Self::IfcLinearPlacement => "IfcLinearPlacement",
6889            Self::IfcLinearPositioningElement => "IfcLinearPositioningElement",
6890            Self::IfcLiquidTerminal => "IfcLiquidTerminal",
6891            Self::IfcLiquidTerminalType => "IfcLiquidTerminalType",
6892            Self::IfcLocalPlacement => "IfcLocalPlacement",
6893            Self::IfcLoop => "IfcLoop",
6894            Self::IfcManifoldSolidBrep => "IfcManifoldSolidBrep",
6895            Self::IfcMapConversion => "IfcMapConversion",
6896            Self::IfcMapConversionScaled => "IfcMapConversionScaled",
6897            Self::IfcMappedItem => "IfcMappedItem",
6898            Self::IfcMarineFacility => "IfcMarineFacility",
6899            Self::IfcMarinePart => "IfcMarinePart",
6900            Self::IfcMaterial => "IfcMaterial",
6901            Self::IfcMaterialClassificationRelationship => "IfcMaterialClassificationRelationship",
6902            Self::IfcMaterialConstituent => "IfcMaterialConstituent",
6903            Self::IfcMaterialConstituentSet => "IfcMaterialConstituentSet",
6904            Self::IfcMaterialDefinition => "IfcMaterialDefinition",
6905            Self::IfcMaterialDefinitionRepresentation => "IfcMaterialDefinitionRepresentation",
6906            Self::IfcMaterialLayer => "IfcMaterialLayer",
6907            Self::IfcMaterialLayerSet => "IfcMaterialLayerSet",
6908            Self::IfcMaterialLayerSetUsage => "IfcMaterialLayerSetUsage",
6909            Self::IfcMaterialLayerWithOffsets => "IfcMaterialLayerWithOffsets",
6910            Self::IfcMaterialList => "IfcMaterialList",
6911            Self::IfcMaterialProfile => "IfcMaterialProfile",
6912            Self::IfcMaterialProfileSet => "IfcMaterialProfileSet",
6913            Self::IfcMaterialProfileSetUsage => "IfcMaterialProfileSetUsage",
6914            Self::IfcMaterialProfileSetUsageTapering => "IfcMaterialProfileSetUsageTapering",
6915            Self::IfcMaterialProfileWithOffsets => "IfcMaterialProfileWithOffsets",
6916            Self::IfcMaterialProperties => "IfcMaterialProperties",
6917            Self::IfcMaterialRelationship => "IfcMaterialRelationship",
6918            Self::IfcMaterialUsageDefinition => "IfcMaterialUsageDefinition",
6919            Self::IfcMeasureWithUnit => "IfcMeasureWithUnit",
6920            Self::IfcMechanicalFastener => "IfcMechanicalFastener",
6921            Self::IfcMechanicalFastenerType => "IfcMechanicalFastenerType",
6922            Self::IfcMedicalDevice => "IfcMedicalDevice",
6923            Self::IfcMedicalDeviceType => "IfcMedicalDeviceType",
6924            Self::IfcMember => "IfcMember",
6925            Self::IfcMemberType => "IfcMemberType",
6926            Self::IfcMetric => "IfcMetric",
6927            Self::IfcMirroredProfileDef => "IfcMirroredProfileDef",
6928            Self::IfcMobileTelecommunicationsAppliance => "IfcMobileTelecommunicationsAppliance",
6929            Self::IfcMobileTelecommunicationsApplianceType => {
6930                "IfcMobileTelecommunicationsApplianceType"
6931            }
6932            Self::IfcMonetaryUnit => "IfcMonetaryUnit",
6933            Self::IfcMooringDevice => "IfcMooringDevice",
6934            Self::IfcMooringDeviceType => "IfcMooringDeviceType",
6935            Self::IfcMotorConnection => "IfcMotorConnection",
6936            Self::IfcMotorConnectionType => "IfcMotorConnectionType",
6937            Self::IfcNamedUnit => "IfcNamedUnit",
6938            Self::IfcNavigationElement => "IfcNavigationElement",
6939            Self::IfcNavigationElementType => "IfcNavigationElementType",
6940            Self::IfcObject => "IfcObject",
6941            Self::IfcObjectDefinition => "IfcObjectDefinition",
6942            Self::IfcObjectPlacement => "IfcObjectPlacement",
6943            Self::IfcObjective => "IfcObjective",
6944            Self::IfcOccupant => "IfcOccupant",
6945            Self::IfcOffsetCurve => "IfcOffsetCurve",
6946            Self::IfcOffsetCurve2D => "IfcOffsetCurve2D",
6947            Self::IfcOffsetCurve3D => "IfcOffsetCurve3D",
6948            Self::IfcOffsetCurveByDistances => "IfcOffsetCurveByDistances",
6949            Self::IfcOpenCrossProfileDef => "IfcOpenCrossProfileDef",
6950            Self::IfcOpenShell => "IfcOpenShell",
6951            Self::IfcOpeningElement => "IfcOpeningElement",
6952            Self::IfcOrganization => "IfcOrganization",
6953            Self::IfcOrganizationRelationship => "IfcOrganizationRelationship",
6954            Self::IfcOrientedEdge => "IfcOrientedEdge",
6955            Self::IfcOuterBoundaryCurve => "IfcOuterBoundaryCurve",
6956            Self::IfcOutlet => "IfcOutlet",
6957            Self::IfcOutletType => "IfcOutletType",
6958            Self::IfcOwnerHistory => "IfcOwnerHistory",
6959            Self::IfcParameterizedProfileDef => "IfcParameterizedProfileDef",
6960            Self::IfcPath => "IfcPath",
6961            Self::IfcPavement => "IfcPavement",
6962            Self::IfcPavementType => "IfcPavementType",
6963            Self::IfcPcurve => "IfcPcurve",
6964            Self::IfcPerformanceHistory => "IfcPerformanceHistory",
6965            Self::IfcPermeableCoveringProperties => "IfcPermeableCoveringProperties",
6966            Self::IfcPermit => "IfcPermit",
6967            Self::IfcPerson => "IfcPerson",
6968            Self::IfcPersonAndOrganization => "IfcPersonAndOrganization",
6969            Self::IfcPhysicalComplexQuantity => "IfcPhysicalComplexQuantity",
6970            Self::IfcPhysicalQuantity => "IfcPhysicalQuantity",
6971            Self::IfcPhysicalSimpleQuantity => "IfcPhysicalSimpleQuantity",
6972            Self::IfcPile => "IfcPile",
6973            Self::IfcPileType => "IfcPileType",
6974            Self::IfcPipeFitting => "IfcPipeFitting",
6975            Self::IfcPipeFittingType => "IfcPipeFittingType",
6976            Self::IfcPipeSegment => "IfcPipeSegment",
6977            Self::IfcPipeSegmentType => "IfcPipeSegmentType",
6978            Self::IfcPixelTexture => "IfcPixelTexture",
6979            Self::IfcPlacement => "IfcPlacement",
6980            Self::IfcPlanarBox => "IfcPlanarBox",
6981            Self::IfcPlanarExtent => "IfcPlanarExtent",
6982            Self::IfcPlane => "IfcPlane",
6983            Self::IfcPlate => "IfcPlate",
6984            Self::IfcPlateType => "IfcPlateType",
6985            Self::IfcPoint => "IfcPoint",
6986            Self::IfcPointByDistanceExpression => "IfcPointByDistanceExpression",
6987            Self::IfcPointOnCurve => "IfcPointOnCurve",
6988            Self::IfcPointOnSurface => "IfcPointOnSurface",
6989            Self::IfcPolyLoop => "IfcPolyLoop",
6990            Self::IfcPolygonalBoundedHalfSpace => "IfcPolygonalBoundedHalfSpace",
6991            Self::IfcPolygonalFaceSet => "IfcPolygonalFaceSet",
6992            Self::IfcPolyline => "IfcPolyline",
6993            Self::IfcPolynomialCurve => "IfcPolynomialCurve",
6994            Self::IfcPort => "IfcPort",
6995            Self::IfcPositioningElement => "IfcPositioningElement",
6996            Self::IfcPostalAddress => "IfcPostalAddress",
6997            Self::IfcPreDefinedColour => "IfcPreDefinedColour",
6998            Self::IfcPreDefinedCurveFont => "IfcPreDefinedCurveFont",
6999            Self::IfcPreDefinedItem => "IfcPreDefinedItem",
7000            Self::IfcPreDefinedProperties => "IfcPreDefinedProperties",
7001            Self::IfcPreDefinedPropertySet => "IfcPreDefinedPropertySet",
7002            Self::IfcPreDefinedTextFont => "IfcPreDefinedTextFont",
7003            Self::IfcPresentationItem => "IfcPresentationItem",
7004            Self::IfcPresentationLayerAssignment => "IfcPresentationLayerAssignment",
7005            Self::IfcPresentationLayerWithStyle => "IfcPresentationLayerWithStyle",
7006            Self::IfcPresentationStyle => "IfcPresentationStyle",
7007            Self::IfcProcedure => "IfcProcedure",
7008            Self::IfcProcedureType => "IfcProcedureType",
7009            Self::IfcProcess => "IfcProcess",
7010            Self::IfcProduct => "IfcProduct",
7011            Self::IfcProductDefinitionShape => "IfcProductDefinitionShape",
7012            Self::IfcProductRepresentation => "IfcProductRepresentation",
7013            Self::IfcProfileDef => "IfcProfileDef",
7014            Self::IfcProfileProperties => "IfcProfileProperties",
7015            Self::IfcProject => "IfcProject",
7016            Self::IfcProjectLibrary => "IfcProjectLibrary",
7017            Self::IfcProjectOrder => "IfcProjectOrder",
7018            Self::IfcProjectedCRS => "IfcProjectedCRS",
7019            Self::IfcProjectionElement => "IfcProjectionElement",
7020            Self::IfcProperty => "IfcProperty",
7021            Self::IfcPropertyAbstraction => "IfcPropertyAbstraction",
7022            Self::IfcPropertyBoundedValue => "IfcPropertyBoundedValue",
7023            Self::IfcPropertyDefinition => "IfcPropertyDefinition",
7024            Self::IfcPropertyDependencyRelationship => "IfcPropertyDependencyRelationship",
7025            Self::IfcPropertyEnumeratedValue => "IfcPropertyEnumeratedValue",
7026            Self::IfcPropertyEnumeration => "IfcPropertyEnumeration",
7027            Self::IfcPropertyListValue => "IfcPropertyListValue",
7028            Self::IfcPropertyReferenceValue => "IfcPropertyReferenceValue",
7029            Self::IfcPropertySet => "IfcPropertySet",
7030            Self::IfcPropertySetDefinition => "IfcPropertySetDefinition",
7031            Self::IfcPropertySetTemplate => "IfcPropertySetTemplate",
7032            Self::IfcPropertySingleValue => "IfcPropertySingleValue",
7033            Self::IfcPropertyTableValue => "IfcPropertyTableValue",
7034            Self::IfcPropertyTemplate => "IfcPropertyTemplate",
7035            Self::IfcPropertyTemplateDefinition => "IfcPropertyTemplateDefinition",
7036            Self::IfcProtectiveDevice => "IfcProtectiveDevice",
7037            Self::IfcProtectiveDeviceTrippingUnit => "IfcProtectiveDeviceTrippingUnit",
7038            Self::IfcProtectiveDeviceTrippingUnitType => "IfcProtectiveDeviceTrippingUnitType",
7039            Self::IfcProtectiveDeviceType => "IfcProtectiveDeviceType",
7040            Self::IfcPump => "IfcPump",
7041            Self::IfcPumpType => "IfcPumpType",
7042            Self::IfcQuantityArea => "IfcQuantityArea",
7043            Self::IfcQuantityCount => "IfcQuantityCount",
7044            Self::IfcQuantityLength => "IfcQuantityLength",
7045            Self::IfcQuantityNumber => "IfcQuantityNumber",
7046            Self::IfcQuantitySet => "IfcQuantitySet",
7047            Self::IfcQuantityTime => "IfcQuantityTime",
7048            Self::IfcQuantityVolume => "IfcQuantityVolume",
7049            Self::IfcQuantityWeight => "IfcQuantityWeight",
7050            Self::IfcRail => "IfcRail",
7051            Self::IfcRailType => "IfcRailType",
7052            Self::IfcRailing => "IfcRailing",
7053            Self::IfcRailingType => "IfcRailingType",
7054            Self::IfcRailway => "IfcRailway",
7055            Self::IfcRailwayPart => "IfcRailwayPart",
7056            Self::IfcRamp => "IfcRamp",
7057            Self::IfcRampFlight => "IfcRampFlight",
7058            Self::IfcRampFlightType => "IfcRampFlightType",
7059            Self::IfcRampType => "IfcRampType",
7060            Self::IfcRationalBSplineCurveWithKnots => "IfcRationalBSplineCurveWithKnots",
7061            Self::IfcRationalBSplineSurfaceWithKnots => "IfcRationalBSplineSurfaceWithKnots",
7062            Self::IfcRectangleHollowProfileDef => "IfcRectangleHollowProfileDef",
7063            Self::IfcRectangleProfileDef => "IfcRectangleProfileDef",
7064            Self::IfcRectangularPyramid => "IfcRectangularPyramid",
7065            Self::IfcRectangularTrimmedSurface => "IfcRectangularTrimmedSurface",
7066            Self::IfcRecurrencePattern => "IfcRecurrencePattern",
7067            Self::IfcReference => "IfcReference",
7068            Self::IfcReferent => "IfcReferent",
7069            Self::IfcRegularTimeSeries => "IfcRegularTimeSeries",
7070            Self::IfcReinforcedSoil => "IfcReinforcedSoil",
7071            Self::IfcReinforcementBarProperties => "IfcReinforcementBarProperties",
7072            Self::IfcReinforcementDefinitionProperties => "IfcReinforcementDefinitionProperties",
7073            Self::IfcReinforcingBar => "IfcReinforcingBar",
7074            Self::IfcReinforcingBarType => "IfcReinforcingBarType",
7075            Self::IfcReinforcingElement => "IfcReinforcingElement",
7076            Self::IfcReinforcingElementType => "IfcReinforcingElementType",
7077            Self::IfcReinforcingMesh => "IfcReinforcingMesh",
7078            Self::IfcReinforcingMeshType => "IfcReinforcingMeshType",
7079            Self::IfcRelAdheresToElement => "IfcRelAdheresToElement",
7080            Self::IfcRelAggregates => "IfcRelAggregates",
7081            Self::IfcRelAssigns => "IfcRelAssigns",
7082            Self::IfcRelAssignsToActor => "IfcRelAssignsToActor",
7083            Self::IfcRelAssignsToControl => "IfcRelAssignsToControl",
7084            Self::IfcRelAssignsToGroup => "IfcRelAssignsToGroup",
7085            Self::IfcRelAssignsToGroupByFactor => "IfcRelAssignsToGroupByFactor",
7086            Self::IfcRelAssignsToProcess => "IfcRelAssignsToProcess",
7087            Self::IfcRelAssignsToProduct => "IfcRelAssignsToProduct",
7088            Self::IfcRelAssignsToResource => "IfcRelAssignsToResource",
7089            Self::IfcRelAssociates => "IfcRelAssociates",
7090            Self::IfcRelAssociatesApproval => "IfcRelAssociatesApproval",
7091            Self::IfcRelAssociatesClassification => "IfcRelAssociatesClassification",
7092            Self::IfcRelAssociatesConstraint => "IfcRelAssociatesConstraint",
7093            Self::IfcRelAssociatesDocument => "IfcRelAssociatesDocument",
7094            Self::IfcRelAssociatesLibrary => "IfcRelAssociatesLibrary",
7095            Self::IfcRelAssociatesMaterial => "IfcRelAssociatesMaterial",
7096            Self::IfcRelAssociatesProfileDef => "IfcRelAssociatesProfileDef",
7097            Self::IfcRelConnects => "IfcRelConnects",
7098            Self::IfcRelConnectsElements => "IfcRelConnectsElements",
7099            Self::IfcRelConnectsPathElements => "IfcRelConnectsPathElements",
7100            Self::IfcRelConnectsPortToElement => "IfcRelConnectsPortToElement",
7101            Self::IfcRelConnectsPorts => "IfcRelConnectsPorts",
7102            Self::IfcRelConnectsStructuralActivity => "IfcRelConnectsStructuralActivity",
7103            Self::IfcRelConnectsStructuralMember => "IfcRelConnectsStructuralMember",
7104            Self::IfcRelConnectsWithEccentricity => "IfcRelConnectsWithEccentricity",
7105            Self::IfcRelConnectsWithRealizingElements => "IfcRelConnectsWithRealizingElements",
7106            Self::IfcRelContainedInSpatialStructure => "IfcRelContainedInSpatialStructure",
7107            Self::IfcRelCoversBldgElements => "IfcRelCoversBldgElements",
7108            Self::IfcRelCoversSpaces => "IfcRelCoversSpaces",
7109            Self::IfcRelDeclares => "IfcRelDeclares",
7110            Self::IfcRelDecomposes => "IfcRelDecomposes",
7111            Self::IfcRelDefines => "IfcRelDefines",
7112            Self::IfcRelDefinesByObject => "IfcRelDefinesByObject",
7113            Self::IfcRelDefinesByProperties => "IfcRelDefinesByProperties",
7114            Self::IfcRelDefinesByTemplate => "IfcRelDefinesByTemplate",
7115            Self::IfcRelDefinesByType => "IfcRelDefinesByType",
7116            Self::IfcRelFillsElement => "IfcRelFillsElement",
7117            Self::IfcRelFlowControlElements => "IfcRelFlowControlElements",
7118            Self::IfcRelInterferesElements => "IfcRelInterferesElements",
7119            Self::IfcRelNests => "IfcRelNests",
7120            Self::IfcRelPositions => "IfcRelPositions",
7121            Self::IfcRelProjectsElement => "IfcRelProjectsElement",
7122            Self::IfcRelReferencedInSpatialStructure => "IfcRelReferencedInSpatialStructure",
7123            Self::IfcRelSequence => "IfcRelSequence",
7124            Self::IfcRelServicesBuildings => "IfcRelServicesBuildings",
7125            Self::IfcRelSpaceBoundary => "IfcRelSpaceBoundary",
7126            Self::IfcRelSpaceBoundary1stLevel => "IfcRelSpaceBoundary1stLevel",
7127            Self::IfcRelSpaceBoundary2ndLevel => "IfcRelSpaceBoundary2ndLevel",
7128            Self::IfcRelVoidsElement => "IfcRelVoidsElement",
7129            Self::IfcRelationship => "IfcRelationship",
7130            Self::IfcReparametrisedCompositeCurveSegment => {
7131                "IfcReparametrisedCompositeCurveSegment"
7132            }
7133            Self::IfcRepresentation => "IfcRepresentation",
7134            Self::IfcRepresentationContext => "IfcRepresentationContext",
7135            Self::IfcRepresentationItem => "IfcRepresentationItem",
7136            Self::IfcRepresentationMap => "IfcRepresentationMap",
7137            Self::IfcResource => "IfcResource",
7138            Self::IfcResourceApprovalRelationship => "IfcResourceApprovalRelationship",
7139            Self::IfcResourceConstraintRelationship => "IfcResourceConstraintRelationship",
7140            Self::IfcResourceLevelRelationship => "IfcResourceLevelRelationship",
7141            Self::IfcResourceTime => "IfcResourceTime",
7142            Self::IfcRevolvedAreaSolid => "IfcRevolvedAreaSolid",
7143            Self::IfcRevolvedAreaSolidTapered => "IfcRevolvedAreaSolidTapered",
7144            Self::IfcRightCircularCone => "IfcRightCircularCone",
7145            Self::IfcRightCircularCylinder => "IfcRightCircularCylinder",
7146            Self::IfcRigidOperation => "IfcRigidOperation",
7147            Self::IfcRoad => "IfcRoad",
7148            Self::IfcRoadPart => "IfcRoadPart",
7149            Self::IfcRoof => "IfcRoof",
7150            Self::IfcRoofType => "IfcRoofType",
7151            Self::IfcRoot => "IfcRoot",
7152            Self::IfcRoundedRectangleProfileDef => "IfcRoundedRectangleProfileDef",
7153            Self::IfcSIUnit => "IfcSIUnit",
7154            Self::IfcSanitaryTerminal => "IfcSanitaryTerminal",
7155            Self::IfcSanitaryTerminalType => "IfcSanitaryTerminalType",
7156            Self::IfcSchedulingTime => "IfcSchedulingTime",
7157            Self::IfcSeamCurve => "IfcSeamCurve",
7158            Self::IfcSecondOrderPolynomialSpiral => "IfcSecondOrderPolynomialSpiral",
7159            Self::IfcSectionProperties => "IfcSectionProperties",
7160            Self::IfcSectionReinforcementProperties => "IfcSectionReinforcementProperties",
7161            Self::IfcSectionedSolid => "IfcSectionedSolid",
7162            Self::IfcSectionedSolidHorizontal => "IfcSectionedSolidHorizontal",
7163            Self::IfcSectionedSpine => "IfcSectionedSpine",
7164            Self::IfcSectionedSurface => "IfcSectionedSurface",
7165            Self::IfcSegment => "IfcSegment",
7166            Self::IfcSegmentedReferenceCurve => "IfcSegmentedReferenceCurve",
7167            Self::IfcSensor => "IfcSensor",
7168            Self::IfcSensorType => "IfcSensorType",
7169            Self::IfcSeventhOrderPolynomialSpiral => "IfcSeventhOrderPolynomialSpiral",
7170            Self::IfcShadingDevice => "IfcShadingDevice",
7171            Self::IfcShadingDeviceType => "IfcShadingDeviceType",
7172            Self::IfcShapeAspect => "IfcShapeAspect",
7173            Self::IfcShapeModel => "IfcShapeModel",
7174            Self::IfcShapeRepresentation => "IfcShapeRepresentation",
7175            Self::IfcShellBasedSurfaceModel => "IfcShellBasedSurfaceModel",
7176            Self::IfcSign => "IfcSign",
7177            Self::IfcSignType => "IfcSignType",
7178            Self::IfcSignal => "IfcSignal",
7179            Self::IfcSignalType => "IfcSignalType",
7180            Self::IfcSimpleProperty => "IfcSimpleProperty",
7181            Self::IfcSimplePropertyTemplate => "IfcSimplePropertyTemplate",
7182            Self::IfcSineSpiral => "IfcSineSpiral",
7183            Self::IfcSite => "IfcSite",
7184            Self::IfcSlab => "IfcSlab",
7185            Self::IfcSlabType => "IfcSlabType",
7186            Self::IfcSlippageConnectionCondition => "IfcSlippageConnectionCondition",
7187            Self::IfcSolarDevice => "IfcSolarDevice",
7188            Self::IfcSolarDeviceType => "IfcSolarDeviceType",
7189            Self::IfcSolidModel => "IfcSolidModel",
7190            Self::IfcSpace => "IfcSpace",
7191            Self::IfcSpaceHeater => "IfcSpaceHeater",
7192            Self::IfcSpaceHeaterType => "IfcSpaceHeaterType",
7193            Self::IfcSpaceType => "IfcSpaceType",
7194            Self::IfcSpatialElement => "IfcSpatialElement",
7195            Self::IfcSpatialElementType => "IfcSpatialElementType",
7196            Self::IfcSpatialStructureElement => "IfcSpatialStructureElement",
7197            Self::IfcSpatialStructureElementType => "IfcSpatialStructureElementType",
7198            Self::IfcSpatialZone => "IfcSpatialZone",
7199            Self::IfcSpatialZoneType => "IfcSpatialZoneType",
7200            Self::IfcSphere => "IfcSphere",
7201            Self::IfcSphericalSurface => "IfcSphericalSurface",
7202            Self::IfcSpiral => "IfcSpiral",
7203            Self::IfcStackTerminal => "IfcStackTerminal",
7204            Self::IfcStackTerminalType => "IfcStackTerminalType",
7205            Self::IfcStair => "IfcStair",
7206            Self::IfcStairFlight => "IfcStairFlight",
7207            Self::IfcStairFlightType => "IfcStairFlightType",
7208            Self::IfcStairType => "IfcStairType",
7209            Self::IfcStructuralAction => "IfcStructuralAction",
7210            Self::IfcStructuralActivity => "IfcStructuralActivity",
7211            Self::IfcStructuralAnalysisModel => "IfcStructuralAnalysisModel",
7212            Self::IfcStructuralConnection => "IfcStructuralConnection",
7213            Self::IfcStructuralConnectionCondition => "IfcStructuralConnectionCondition",
7214            Self::IfcStructuralCurveAction => "IfcStructuralCurveAction",
7215            Self::IfcStructuralCurveConnection => "IfcStructuralCurveConnection",
7216            Self::IfcStructuralCurveMember => "IfcStructuralCurveMember",
7217            Self::IfcStructuralCurveMemberVarying => "IfcStructuralCurveMemberVarying",
7218            Self::IfcStructuralCurveReaction => "IfcStructuralCurveReaction",
7219            Self::IfcStructuralItem => "IfcStructuralItem",
7220            Self::IfcStructuralLinearAction => "IfcStructuralLinearAction",
7221            Self::IfcStructuralLoad => "IfcStructuralLoad",
7222            Self::IfcStructuralLoadCase => "IfcStructuralLoadCase",
7223            Self::IfcStructuralLoadConfiguration => "IfcStructuralLoadConfiguration",
7224            Self::IfcStructuralLoadGroup => "IfcStructuralLoadGroup",
7225            Self::IfcStructuralLoadLinearForce => "IfcStructuralLoadLinearForce",
7226            Self::IfcStructuralLoadOrResult => "IfcStructuralLoadOrResult",
7227            Self::IfcStructuralLoadPlanarForce => "IfcStructuralLoadPlanarForce",
7228            Self::IfcStructuralLoadSingleDisplacement => "IfcStructuralLoadSingleDisplacement",
7229            Self::IfcStructuralLoadSingleDisplacementDistortion => {
7230                "IfcStructuralLoadSingleDisplacementDistortion"
7231            }
7232            Self::IfcStructuralLoadSingleForce => "IfcStructuralLoadSingleForce",
7233            Self::IfcStructuralLoadSingleForceWarping => "IfcStructuralLoadSingleForceWarping",
7234            Self::IfcStructuralLoadStatic => "IfcStructuralLoadStatic",
7235            Self::IfcStructuralLoadTemperature => "IfcStructuralLoadTemperature",
7236            Self::IfcStructuralMember => "IfcStructuralMember",
7237            Self::IfcStructuralPlanarAction => "IfcStructuralPlanarAction",
7238            Self::IfcStructuralPointAction => "IfcStructuralPointAction",
7239            Self::IfcStructuralPointConnection => "IfcStructuralPointConnection",
7240            Self::IfcStructuralPointReaction => "IfcStructuralPointReaction",
7241            Self::IfcStructuralReaction => "IfcStructuralReaction",
7242            Self::IfcStructuralResultGroup => "IfcStructuralResultGroup",
7243            Self::IfcStructuralSurfaceAction => "IfcStructuralSurfaceAction",
7244            Self::IfcStructuralSurfaceConnection => "IfcStructuralSurfaceConnection",
7245            Self::IfcStructuralSurfaceMember => "IfcStructuralSurfaceMember",
7246            Self::IfcStructuralSurfaceMemberVarying => "IfcStructuralSurfaceMemberVarying",
7247            Self::IfcStructuralSurfaceReaction => "IfcStructuralSurfaceReaction",
7248            Self::IfcStyleModel => "IfcStyleModel",
7249            Self::IfcStyledItem => "IfcStyledItem",
7250            Self::IfcStyledRepresentation => "IfcStyledRepresentation",
7251            Self::IfcSubContractResource => "IfcSubContractResource",
7252            Self::IfcSubContractResourceType => "IfcSubContractResourceType",
7253            Self::IfcSubedge => "IfcSubedge",
7254            Self::IfcSurface => "IfcSurface",
7255            Self::IfcSurfaceCurve => "IfcSurfaceCurve",
7256            Self::IfcSurfaceCurveSweptAreaSolid => "IfcSurfaceCurveSweptAreaSolid",
7257            Self::IfcSurfaceFeature => "IfcSurfaceFeature",
7258            Self::IfcSurfaceOfLinearExtrusion => "IfcSurfaceOfLinearExtrusion",
7259            Self::IfcSurfaceOfRevolution => "IfcSurfaceOfRevolution",
7260            Self::IfcSurfaceReinforcementArea => "IfcSurfaceReinforcementArea",
7261            Self::IfcSurfaceStyle => "IfcSurfaceStyle",
7262            Self::IfcSurfaceStyleLighting => "IfcSurfaceStyleLighting",
7263            Self::IfcSurfaceStyleRefraction => "IfcSurfaceStyleRefraction",
7264            Self::IfcSurfaceStyleRendering => "IfcSurfaceStyleRendering",
7265            Self::IfcSurfaceStyleShading => "IfcSurfaceStyleShading",
7266            Self::IfcSurfaceStyleWithTextures => "IfcSurfaceStyleWithTextures",
7267            Self::IfcSurfaceTexture => "IfcSurfaceTexture",
7268            Self::IfcSweptAreaSolid => "IfcSweptAreaSolid",
7269            Self::IfcSweptDiskSolid => "IfcSweptDiskSolid",
7270            Self::IfcSweptDiskSolidPolygonal => "IfcSweptDiskSolidPolygonal",
7271            Self::IfcSweptSurface => "IfcSweptSurface",
7272            Self::IfcSwitchingDevice => "IfcSwitchingDevice",
7273            Self::IfcSwitchingDeviceType => "IfcSwitchingDeviceType",
7274            Self::IfcSystem => "IfcSystem",
7275            Self::IfcSystemFurnitureElement => "IfcSystemFurnitureElement",
7276            Self::IfcSystemFurnitureElementType => "IfcSystemFurnitureElementType",
7277            Self::IfcTShapeProfileDef => "IfcTShapeProfileDef",
7278            Self::IfcTable => "IfcTable",
7279            Self::IfcTableColumn => "IfcTableColumn",
7280            Self::IfcTableRow => "IfcTableRow",
7281            Self::IfcTank => "IfcTank",
7282            Self::IfcTankType => "IfcTankType",
7283            Self::IfcTask => "IfcTask",
7284            Self::IfcTaskTime => "IfcTaskTime",
7285            Self::IfcTaskTimeRecurring => "IfcTaskTimeRecurring",
7286            Self::IfcTaskType => "IfcTaskType",
7287            Self::IfcTelecomAddress => "IfcTelecomAddress",
7288            Self::IfcTendon => "IfcTendon",
7289            Self::IfcTendonAnchor => "IfcTendonAnchor",
7290            Self::IfcTendonAnchorType => "IfcTendonAnchorType",
7291            Self::IfcTendonConduit => "IfcTendonConduit",
7292            Self::IfcTendonConduitType => "IfcTendonConduitType",
7293            Self::IfcTendonType => "IfcTendonType",
7294            Self::IfcTessellatedFaceSet => "IfcTessellatedFaceSet",
7295            Self::IfcTessellatedItem => "IfcTessellatedItem",
7296            Self::IfcTextLiteral => "IfcTextLiteral",
7297            Self::IfcTextLiteralWithExtent => "IfcTextLiteralWithExtent",
7298            Self::IfcTextStyle => "IfcTextStyle",
7299            Self::IfcTextStyleFontModel => "IfcTextStyleFontModel",
7300            Self::IfcTextStyleForDefinedFont => "IfcTextStyleForDefinedFont",
7301            Self::IfcTextStyleTextModel => "IfcTextStyleTextModel",
7302            Self::IfcTextureCoordinate => "IfcTextureCoordinate",
7303            Self::IfcTextureCoordinateGenerator => "IfcTextureCoordinateGenerator",
7304            Self::IfcTextureCoordinateIndices => "IfcTextureCoordinateIndices",
7305            Self::IfcTextureCoordinateIndicesWithVoids => "IfcTextureCoordinateIndicesWithVoids",
7306            Self::IfcTextureMap => "IfcTextureMap",
7307            Self::IfcTextureVertex => "IfcTextureVertex",
7308            Self::IfcTextureVertexList => "IfcTextureVertexList",
7309            Self::IfcThirdOrderPolynomialSpiral => "IfcThirdOrderPolynomialSpiral",
7310            Self::IfcTimePeriod => "IfcTimePeriod",
7311            Self::IfcTimeSeries => "IfcTimeSeries",
7312            Self::IfcTimeSeriesValue => "IfcTimeSeriesValue",
7313            Self::IfcTopologicalRepresentationItem => "IfcTopologicalRepresentationItem",
7314            Self::IfcTopologyRepresentation => "IfcTopologyRepresentation",
7315            Self::IfcToroidalSurface => "IfcToroidalSurface",
7316            Self::IfcTrackElement => "IfcTrackElement",
7317            Self::IfcTrackElementType => "IfcTrackElementType",
7318            Self::IfcTransformer => "IfcTransformer",
7319            Self::IfcTransformerType => "IfcTransformerType",
7320            Self::IfcTransportElement => "IfcTransportElement",
7321            Self::IfcTransportElementType => "IfcTransportElementType",
7322            Self::IfcTransportationDevice => "IfcTransportationDevice",
7323            Self::IfcTransportationDeviceType => "IfcTransportationDeviceType",
7324            Self::IfcTrapeziumProfileDef => "IfcTrapeziumProfileDef",
7325            Self::IfcTriangulatedFaceSet => "IfcTriangulatedFaceSet",
7326            Self::IfcTriangulatedIrregularNetwork => "IfcTriangulatedIrregularNetwork",
7327            Self::IfcTrimmedCurve => "IfcTrimmedCurve",
7328            Self::IfcTubeBundle => "IfcTubeBundle",
7329            Self::IfcTubeBundleType => "IfcTubeBundleType",
7330            Self::IfcTypeObject => "IfcTypeObject",
7331            Self::IfcTypeProcess => "IfcTypeProcess",
7332            Self::IfcTypeProduct => "IfcTypeProduct",
7333            Self::IfcTypeResource => "IfcTypeResource",
7334            Self::IfcUShapeProfileDef => "IfcUShapeProfileDef",
7335            Self::IfcUnitAssignment => "IfcUnitAssignment",
7336            Self::IfcUnitaryControlElement => "IfcUnitaryControlElement",
7337            Self::IfcUnitaryControlElementType => "IfcUnitaryControlElementType",
7338            Self::IfcUnitaryEquipment => "IfcUnitaryEquipment",
7339            Self::IfcUnitaryEquipmentType => "IfcUnitaryEquipmentType",
7340            Self::IfcValve => "IfcValve",
7341            Self::IfcValveType => "IfcValveType",
7342            Self::IfcVector => "IfcVector",
7343            Self::IfcVehicle => "IfcVehicle",
7344            Self::IfcVehicleType => "IfcVehicleType",
7345            Self::IfcVertex => "IfcVertex",
7346            Self::IfcVertexLoop => "IfcVertexLoop",
7347            Self::IfcVertexPoint => "IfcVertexPoint",
7348            Self::IfcVibrationDamper => "IfcVibrationDamper",
7349            Self::IfcVibrationDamperType => "IfcVibrationDamperType",
7350            Self::IfcVibrationIsolator => "IfcVibrationIsolator",
7351            Self::IfcVibrationIsolatorType => "IfcVibrationIsolatorType",
7352            Self::IfcVirtualElement => "IfcVirtualElement",
7353            Self::IfcVirtualGridIntersection => "IfcVirtualGridIntersection",
7354            Self::IfcVoidingFeature => "IfcVoidingFeature",
7355            Self::IfcWall => "IfcWall",
7356            Self::IfcWallStandardCase => "IfcWallStandardCase",
7357            Self::IfcWallType => "IfcWallType",
7358            Self::IfcWasteTerminal => "IfcWasteTerminal",
7359            Self::IfcWasteTerminalType => "IfcWasteTerminalType",
7360            Self::IfcWellKnownText => "IfcWellKnownText",
7361            Self::IfcWindow => "IfcWindow",
7362            Self::IfcWindowLiningProperties => "IfcWindowLiningProperties",
7363            Self::IfcWindowPanelProperties => "IfcWindowPanelProperties",
7364            Self::IfcWindowType => "IfcWindowType",
7365            Self::IfcWorkCalendar => "IfcWorkCalendar",
7366            Self::IfcWorkControl => "IfcWorkControl",
7367            Self::IfcWorkPlan => "IfcWorkPlan",
7368            Self::IfcWorkSchedule => "IfcWorkSchedule",
7369            Self::IfcWorkTime => "IfcWorkTime",
7370            Self::IfcZShapeProfileDef => "IfcZShapeProfileDef",
7371            Self::IfcZone => "IfcZone",
7372            Self::IfcBeamStandardCase => "IfcBeamStandardCase",
7373            Self::IfcBuildingElement => "IfcBuildingElement",
7374            Self::IfcBuildingElementType => "IfcBuildingElementType",
7375            Self::IfcColumnStandardCase => "IfcColumnStandardCase",
7376            Self::IfcDoorStandardCase => "IfcDoorStandardCase",
7377            Self::IfcDoorStyle => "IfcDoorStyle",
7378            Self::IfcMemberStandardCase => "IfcMemberStandardCase",
7379            Self::IfcOpeningStandardCase => "IfcOpeningStandardCase",
7380            Self::IfcPlateStandardCase => "IfcPlateStandardCase",
7381            Self::IfcPresentationStyleAssignment => "IfcPresentationStyleAssignment",
7382            Self::IfcProxy => "IfcProxy",
7383            Self::IfcSlabElementedCase => "IfcSlabElementedCase",
7384            Self::IfcSlabStandardCase => "IfcSlabStandardCase",
7385            Self::IfcWallElementedCase => "IfcWallElementedCase",
7386            Self::IfcWindowStandardCase => "IfcWindowStandardCase",
7387            Self::IfcWindowStyle => "IfcWindowStyle",
7388            Self::Ifc2DCompositeCurve => "Ifc2DCompositeCurve",
7389            Self::IfcAngularDimension => "IfcAngularDimension",
7390            Self::IfcAnnotationCurveOccurrence => "IfcAnnotationCurveOccurrence",
7391            Self::IfcAnnotationFillAreaOccurrence => "IfcAnnotationFillAreaOccurrence",
7392            Self::IfcAnnotationOccurrence => "IfcAnnotationOccurrence",
7393            Self::IfcAnnotationSurface => "IfcAnnotationSurface",
7394            Self::IfcAnnotationSurfaceOccurrence => "IfcAnnotationSurfaceOccurrence",
7395            Self::IfcAnnotationSymbolOccurrence => "IfcAnnotationSymbolOccurrence",
7396            Self::IfcAnnotationTextOccurrence => "IfcAnnotationTextOccurrence",
7397            Self::IfcAppliedValueRelationship => "IfcAppliedValueRelationship",
7398            Self::IfcApprovalActorRelationship => "IfcApprovalActorRelationship",
7399            Self::IfcApprovalPropertyRelationship => "IfcApprovalPropertyRelationship",
7400            Self::IfcBezierCurve => "IfcBezierCurve",
7401            Self::IfcBuildingElementComponent => "IfcBuildingElementComponent",
7402            Self::IfcCalendarDate => "IfcCalendarDate",
7403            Self::IfcChamferEdgeFeature => "IfcChamferEdgeFeature",
7404            Self::IfcClassificationItem => "IfcClassificationItem",
7405            Self::IfcClassificationItemRelationship => "IfcClassificationItemRelationship",
7406            Self::IfcClassificationNotation => "IfcClassificationNotation",
7407            Self::IfcClassificationNotationFacet => "IfcClassificationNotationFacet",
7408            Self::IfcCondition => "IfcCondition",
7409            Self::IfcConditionCriterion => "IfcConditionCriterion",
7410            Self::IfcConnectionPortGeometry => "IfcConnectionPortGeometry",
7411            Self::IfcConstraintAggregationRelationship => "IfcConstraintAggregationRelationship",
7412            Self::IfcConstraintClassificationRelationship => {
7413                "IfcConstraintClassificationRelationship"
7414            }
7415            Self::IfcConstraintRelationship => "IfcConstraintRelationship",
7416            Self::IfcCoordinatedUniversalTimeOffset => "IfcCoordinatedUniversalTimeOffset",
7417            Self::IfcCraneRailAShapeProfileDef => "IfcCraneRailAShapeProfileDef",
7418            Self::IfcCraneRailFShapeProfileDef => "IfcCraneRailFShapeProfileDef",
7419            Self::IfcDateAndTime => "IfcDateAndTime",
7420            Self::IfcDefinedSymbol => "IfcDefinedSymbol",
7421            Self::IfcDiameterDimension => "IfcDiameterDimension",
7422            Self::IfcDimensionCalloutRelationship => "IfcDimensionCalloutRelationship",
7423            Self::IfcDimensionCurve => "IfcDimensionCurve",
7424            Self::IfcDimensionCurveDirectedCallout => "IfcDimensionCurveDirectedCallout",
7425            Self::IfcDimensionCurveTerminator => "IfcDimensionCurveTerminator",
7426            Self::IfcDimensionPair => "IfcDimensionPair",
7427            Self::IfcDocumentElectronicFormat => "IfcDocumentElectronicFormat",
7428            Self::IfcDraughtingCallout => "IfcDraughtingCallout",
7429            Self::IfcDraughtingCalloutRelationship => "IfcDraughtingCalloutRelationship",
7430            Self::IfcDraughtingPreDefinedTextFont => "IfcDraughtingPreDefinedTextFont",
7431            Self::IfcEdgeFeature => "IfcEdgeFeature",
7432            Self::IfcElectricDistributionPoint => "IfcElectricDistributionPoint",
7433            Self::IfcElectricHeaterType => "IfcElectricHeaterType",
7434            Self::IfcElectricalBaseProperties => "IfcElectricalBaseProperties",
7435            Self::IfcElectricalCircuit => "IfcElectricalCircuit",
7436            Self::IfcElectricalElement => "IfcElectricalElement",
7437            Self::IfcEnergyProperties => "IfcEnergyProperties",
7438            Self::IfcEnvironmentalImpactValue => "IfcEnvironmentalImpactValue",
7439            Self::IfcEquipmentElement => "IfcEquipmentElement",
7440            Self::IfcEquipmentStandard => "IfcEquipmentStandard",
7441            Self::IfcExtendedMaterialProperties => "IfcExtendedMaterialProperties",
7442            Self::IfcExternallyDefinedSymbol => "IfcExternallyDefinedSymbol",
7443            Self::IfcFillAreaStyleTileSymbolWithStyle => "IfcFillAreaStyleTileSymbolWithStyle",
7444            Self::IfcFluidFlowProperties => "IfcFluidFlowProperties",
7445            Self::IfcFuelProperties => "IfcFuelProperties",
7446            Self::IfcFurnitureStandard => "IfcFurnitureStandard",
7447            Self::IfcGasTerminalType => "IfcGasTerminalType",
7448            Self::IfcGeneralMaterialProperties => "IfcGeneralMaterialProperties",
7449            Self::IfcGeneralProfileProperties => "IfcGeneralProfileProperties",
7450            Self::IfcHygroscopicMaterialProperties => "IfcHygroscopicMaterialProperties",
7451            Self::IfcLinearDimension => "IfcLinearDimension",
7452            Self::IfcLocalTime => "IfcLocalTime",
7453            Self::IfcMechanicalConcreteMaterialProperties => {
7454                "IfcMechanicalConcreteMaterialProperties"
7455            }
7456            Self::IfcMechanicalMaterialProperties => "IfcMechanicalMaterialProperties",
7457            Self::IfcMechanicalSteelMaterialProperties => "IfcMechanicalSteelMaterialProperties",
7458            Self::IfcMove => "IfcMove",
7459            Self::IfcOneDirectionRepeatFactor => "IfcOneDirectionRepeatFactor",
7460            Self::IfcOpticalMaterialProperties => "IfcOpticalMaterialProperties",
7461            Self::IfcOrderAction => "IfcOrderAction",
7462            Self::IfcPreDefinedDimensionSymbol => "IfcPreDefinedDimensionSymbol",
7463            Self::IfcPreDefinedPointMarkerSymbol => "IfcPreDefinedPointMarkerSymbol",
7464            Self::IfcPreDefinedSymbol => "IfcPreDefinedSymbol",
7465            Self::IfcPreDefinedTerminatorSymbol => "IfcPreDefinedTerminatorSymbol",
7466            Self::IfcProductsOfCombustionProperties => "IfcProductsOfCombustionProperties",
7467            Self::IfcProjectOrderRecord => "IfcProjectOrderRecord",
7468            Self::IfcProjectionCurve => "IfcProjectionCurve",
7469            Self::IfcPropertyConstraintRelationship => "IfcPropertyConstraintRelationship",
7470            Self::IfcRadiusDimension => "IfcRadiusDimension",
7471            Self::IfcRationalBezierCurve => "IfcRationalBezierCurve",
7472            Self::IfcReferencesValueDocument => "IfcReferencesValueDocument",
7473            Self::IfcRelAssignsTasks => "IfcRelAssignsTasks",
7474            Self::IfcRelAssignsToProjectOrder => "IfcRelAssignsToProjectOrder",
7475            Self::IfcRelAssociatesAppliedValue => "IfcRelAssociatesAppliedValue",
7476            Self::IfcRelAssociatesProfileProperties => "IfcRelAssociatesProfileProperties",
7477            Self::IfcRelConnectsStructuralElement => "IfcRelConnectsStructuralElement",
7478            Self::IfcRelInteractionRequirements => "IfcRelInteractionRequirements",
7479            Self::IfcRelOccupiesSpaces => "IfcRelOccupiesSpaces",
7480            Self::IfcRelOverridesProperties => "IfcRelOverridesProperties",
7481            Self::IfcRelSchedulesCostItems => "IfcRelSchedulesCostItems",
7482            Self::IfcRelaxation => "IfcRelaxation",
7483            Self::IfcRibPlateProfileProperties => "IfcRibPlateProfileProperties",
7484            Self::IfcRoundedEdgeFeature => "IfcRoundedEdgeFeature",
7485            Self::IfcScheduleTimeControl => "IfcScheduleTimeControl",
7486            Self::IfcServiceLife => "IfcServiceLife",
7487            Self::IfcServiceLifeFactor => "IfcServiceLifeFactor",
7488            Self::IfcSoundProperties => "IfcSoundProperties",
7489            Self::IfcSoundValue => "IfcSoundValue",
7490            Self::IfcSpaceProgram => "IfcSpaceProgram",
7491            Self::IfcSpaceThermalLoadProperties => "IfcSpaceThermalLoadProperties",
7492            Self::IfcStructuralLinearActionVarying => "IfcStructuralLinearActionVarying",
7493            Self::IfcStructuralPlanarActionVarying => "IfcStructuralPlanarActionVarying",
7494            Self::IfcStructuralProfileProperties => "IfcStructuralProfileProperties",
7495            Self::IfcStructuralSteelProfileProperties => "IfcStructuralSteelProfileProperties",
7496            Self::IfcStructuredDimensionCallout => "IfcStructuredDimensionCallout",
7497            Self::IfcSymbolStyle => "IfcSymbolStyle",
7498            Self::IfcTerminatorSymbol => "IfcTerminatorSymbol",
7499            Self::IfcTextStyleWithBoxCharacteristics => "IfcTextStyleWithBoxCharacteristics",
7500            Self::IfcThermalMaterialProperties => "IfcThermalMaterialProperties",
7501            Self::IfcTimeSeriesReferenceRelationship => "IfcTimeSeriesReferenceRelationship",
7502            Self::IfcTimeSeriesSchedule => "IfcTimeSeriesSchedule",
7503            Self::IfcTwoDirectionRepeatFactor => "IfcTwoDirectionRepeatFactor",
7504            Self::IfcVertexBasedTextureMap => "IfcVertexBasedTextureMap",
7505            Self::IfcWaterProperties => "IfcWaterProperties",
7506            Self::IfcCircularArcSegment2D => "IfcCircularArcSegment2D",
7507            Self::IfcCurveSegment2D => "IfcCurveSegment2D",
7508            Self::IfcDistanceExpression => "IfcDistanceExpression",
7509            Self::IfcLineSegment2D => "IfcLineSegment2D",
7510            Self::IfcOrientationExpression => "IfcOrientationExpression",
7511            Self::IfcTransitionCurveSegment2D => "IfcTransitionCurveSegment2D",
7512            Self::IfcAlignment2DHorizontal => "IfcAlignment2DHorizontal",
7513            Self::IfcAlignment2DHorizontalSegment => "IfcAlignment2DHorizontalSegment",
7514            Self::IfcAlignment2DSegment => "IfcAlignment2DSegment",
7515            Self::IfcAlignment2DVerSegCircularArc => "IfcAlignment2DVerSegCircularArc",
7516            Self::IfcAlignment2DVerticalSegment => "IfcAlignment2DVerticalSegment",
7517            Self::IfcAlignment2DVerSegLine => "IfcAlignment2DVerSegLine",
7518            Self::IfcAlignment2DVerSegParabolicArc => "IfcAlignment2DVerSegParabolicArc",
7519            Self::IfcAlignment2DVertical => "IfcAlignment2DVertical",
7520            Self::IfcAlignmentCurve => "IfcAlignmentCurve",
7521            Self::Unknown(unknown) => unknown.as_str(),
7522        }
7523    }
7524
7525    /// Get parent type (if any)
7526    pub fn parent(&self) -> Option<Self> {
7527        match self {
7528            Self::IfcActionRequest => Some(Self::IfcControl),
7529            Self::IfcActor => Some(Self::IfcObject),
7530            Self::IfcActuator => Some(Self::IfcDistributionControlElement),
7531            Self::IfcActuatorType => Some(Self::IfcDistributionControlElementType),
7532            Self::IfcAdvancedBrep => Some(Self::IfcManifoldSolidBrep),
7533            Self::IfcAdvancedBrepWithVoids => Some(Self::IfcAdvancedBrep),
7534            Self::IfcAdvancedFace => Some(Self::IfcFaceSurface),
7535            Self::IfcAirTerminal => Some(Self::IfcFlowTerminal),
7536            Self::IfcAirTerminalBox => Some(Self::IfcFlowController),
7537            Self::IfcAirTerminalBoxType => Some(Self::IfcFlowControllerType),
7538            Self::IfcAirTerminalType => Some(Self::IfcFlowTerminalType),
7539            Self::IfcAirToAirHeatRecovery => Some(Self::IfcEnergyConversionDevice),
7540            Self::IfcAirToAirHeatRecoveryType => Some(Self::IfcEnergyConversionDeviceType),
7541            Self::IfcAlarm => Some(Self::IfcDistributionControlElement),
7542            Self::IfcAlarmType => Some(Self::IfcDistributionControlElementType),
7543            Self::IfcAlignment => Some(Self::IfcLinearPositioningElement),
7544            Self::IfcAlignmentCant => Some(Self::IfcLinearElement),
7545            Self::IfcAlignmentCantSegment => Some(Self::IfcAlignmentParameterSegment),
7546            Self::IfcAlignmentHorizontal => Some(Self::IfcLinearElement),
7547            Self::IfcAlignmentHorizontalSegment => Some(Self::IfcAlignmentParameterSegment),
7548            Self::IfcAlignmentSegment => Some(Self::IfcLinearElement),
7549            Self::IfcAlignmentVertical => Some(Self::IfcLinearElement),
7550            Self::IfcAlignmentVerticalSegment => Some(Self::IfcAlignmentParameterSegment),
7551            Self::IfcAnnotation => Some(Self::IfcProduct),
7552            Self::IfcAnnotationFillArea => Some(Self::IfcGeometricRepresentationItem),
7553            Self::IfcApprovalRelationship => Some(Self::IfcResourceLevelRelationship),
7554            Self::IfcArbitraryClosedProfileDef => Some(Self::IfcProfileDef),
7555            Self::IfcArbitraryOpenProfileDef => Some(Self::IfcProfileDef),
7556            Self::IfcArbitraryProfileDefWithVoids => Some(Self::IfcArbitraryClosedProfileDef),
7557            Self::IfcAsset => Some(Self::IfcGroup),
7558            Self::IfcAsymmetricIShapeProfileDef => Some(Self::IfcParameterizedProfileDef),
7559            Self::IfcAudioVisualAppliance => Some(Self::IfcFlowTerminal),
7560            Self::IfcAudioVisualApplianceType => Some(Self::IfcFlowTerminalType),
7561            Self::IfcAxis1Placement => Some(Self::IfcPlacement),
7562            Self::IfcAxis2Placement2D => Some(Self::IfcPlacement),
7563            Self::IfcAxis2Placement3D => Some(Self::IfcPlacement),
7564            Self::IfcAxis2PlacementLinear => Some(Self::IfcPlacement),
7565            Self::IfcBSplineCurve => Some(Self::IfcBoundedCurve),
7566            Self::IfcBSplineCurveWithKnots => Some(Self::IfcBSplineCurve),
7567            Self::IfcBSplineSurface => Some(Self::IfcBoundedSurface),
7568            Self::IfcBSplineSurfaceWithKnots => Some(Self::IfcBSplineSurface),
7569            Self::IfcBeam => Some(Self::IfcBuiltElement),
7570            Self::IfcBeamType => Some(Self::IfcBuiltElementType),
7571            Self::IfcBearing => Some(Self::IfcBuiltElement),
7572            Self::IfcBearingType => Some(Self::IfcBuiltElementType),
7573            Self::IfcBlobTexture => Some(Self::IfcSurfaceTexture),
7574            Self::IfcBlock => Some(Self::IfcCsgPrimitive3D),
7575            Self::IfcBoiler => Some(Self::IfcEnergyConversionDevice),
7576            Self::IfcBoilerType => Some(Self::IfcEnergyConversionDeviceType),
7577            Self::IfcBooleanClippingResult => Some(Self::IfcBooleanResult),
7578            Self::IfcBooleanResult => Some(Self::IfcGeometricRepresentationItem),
7579            Self::IfcBorehole => Some(Self::IfcGeotechnicalAssembly),
7580            Self::IfcBoundaryCurve => Some(Self::IfcCompositeCurveOnSurface),
7581            Self::IfcBoundaryEdgeCondition => Some(Self::IfcBoundaryCondition),
7582            Self::IfcBoundaryFaceCondition => Some(Self::IfcBoundaryCondition),
7583            Self::IfcBoundaryNodeCondition => Some(Self::IfcBoundaryCondition),
7584            Self::IfcBoundaryNodeConditionWarping => Some(Self::IfcBoundaryNodeCondition),
7585            Self::IfcBoundedCurve => Some(Self::IfcCurve),
7586            Self::IfcBoundedSurface => Some(Self::IfcSurface),
7587            Self::IfcBoundingBox => Some(Self::IfcGeometricRepresentationItem),
7588            Self::IfcBoxedHalfSpace => Some(Self::IfcHalfSpaceSolid),
7589            Self::IfcBridge => Some(Self::IfcFacility),
7590            Self::IfcBridgePart => Some(Self::IfcFacilityPart),
7591            Self::IfcBuilding => Some(Self::IfcFacility),
7592            Self::IfcBuildingElementPart => Some(Self::IfcElementComponent),
7593            Self::IfcBuildingElementPartType => Some(Self::IfcElementComponentType),
7594            Self::IfcBuildingElementProxy => Some(Self::IfcBuiltElement),
7595            Self::IfcBuildingElementProxyType => Some(Self::IfcBuiltElementType),
7596            Self::IfcBuildingStorey => Some(Self::IfcSpatialStructureElement),
7597            Self::IfcBuildingSystem => Some(Self::IfcSystem),
7598            Self::IfcBuiltElement => Some(Self::IfcElement),
7599            Self::IfcBuiltElementType => Some(Self::IfcElementType),
7600            Self::IfcBuiltSystem => Some(Self::IfcSystem),
7601            Self::IfcBurner => Some(Self::IfcEnergyConversionDevice),
7602            Self::IfcBurnerType => Some(Self::IfcEnergyConversionDeviceType),
7603            Self::IfcCShapeProfileDef => Some(Self::IfcParameterizedProfileDef),
7604            Self::IfcCableCarrierFitting => Some(Self::IfcFlowFitting),
7605            Self::IfcCableCarrierFittingType => Some(Self::IfcFlowFittingType),
7606            Self::IfcCableCarrierSegment => Some(Self::IfcFlowSegment),
7607            Self::IfcCableCarrierSegmentType => Some(Self::IfcFlowSegmentType),
7608            Self::IfcCableFitting => Some(Self::IfcFlowFitting),
7609            Self::IfcCableFittingType => Some(Self::IfcFlowFittingType),
7610            Self::IfcCableSegment => Some(Self::IfcFlowSegment),
7611            Self::IfcCableSegmentType => Some(Self::IfcFlowSegmentType),
7612            Self::IfcCaissonFoundation => Some(Self::IfcDeepFoundation),
7613            Self::IfcCaissonFoundationType => Some(Self::IfcDeepFoundationType),
7614            Self::IfcCartesianPoint => Some(Self::IfcPoint),
7615            Self::IfcCartesianPointList => Some(Self::IfcGeometricRepresentationItem),
7616            Self::IfcCartesianPointList2D => Some(Self::IfcCartesianPointList),
7617            Self::IfcCartesianPointList3D => Some(Self::IfcCartesianPointList),
7618            Self::IfcCartesianTransformationOperator => Some(Self::IfcGeometricRepresentationItem),
7619            Self::IfcCartesianTransformationOperator2D => {
7620                Some(Self::IfcCartesianTransformationOperator)
7621            }
7622            Self::IfcCartesianTransformationOperator2DnonUniform => {
7623                Some(Self::IfcCartesianTransformationOperator2D)
7624            }
7625            Self::IfcCartesianTransformationOperator3D => {
7626                Some(Self::IfcCartesianTransformationOperator)
7627            }
7628            Self::IfcCartesianTransformationOperator3DnonUniform => {
7629                Some(Self::IfcCartesianTransformationOperator3D)
7630            }
7631            Self::IfcCenterLineProfileDef => Some(Self::IfcArbitraryOpenProfileDef),
7632            Self::IfcChiller => Some(Self::IfcEnergyConversionDevice),
7633            Self::IfcChillerType => Some(Self::IfcEnergyConversionDeviceType),
7634            Self::IfcChimney => Some(Self::IfcBuiltElement),
7635            Self::IfcChimneyType => Some(Self::IfcBuiltElementType),
7636            Self::IfcCircle => Some(Self::IfcConic),
7637            Self::IfcCircleHollowProfileDef => Some(Self::IfcCircleProfileDef),
7638            Self::IfcCircleProfileDef => Some(Self::IfcParameterizedProfileDef),
7639            Self::IfcCivilElement => Some(Self::IfcElement),
7640            Self::IfcCivilElementType => Some(Self::IfcElementType),
7641            Self::IfcClassification => Some(Self::IfcExternalInformation),
7642            Self::IfcClassificationReference => Some(Self::IfcExternalReference),
7643            Self::IfcClosedShell => Some(Self::IfcConnectedFaceSet),
7644            Self::IfcClothoid => Some(Self::IfcSpiral),
7645            Self::IfcCoil => Some(Self::IfcEnergyConversionDevice),
7646            Self::IfcCoilType => Some(Self::IfcEnergyConversionDeviceType),
7647            Self::IfcColourRgb => Some(Self::IfcColourSpecification),
7648            Self::IfcColourRgbList => Some(Self::IfcPresentationItem),
7649            Self::IfcColourSpecification => Some(Self::IfcPresentationItem),
7650            Self::IfcColumn => Some(Self::IfcBuiltElement),
7651            Self::IfcColumnType => Some(Self::IfcBuiltElementType),
7652            Self::IfcCommunicationsAppliance => Some(Self::IfcFlowTerminal),
7653            Self::IfcCommunicationsApplianceType => Some(Self::IfcFlowTerminalType),
7654            Self::IfcComplexProperty => Some(Self::IfcProperty),
7655            Self::IfcComplexPropertyTemplate => Some(Self::IfcPropertyTemplate),
7656            Self::IfcCompositeCurve => Some(Self::IfcBoundedCurve),
7657            Self::IfcCompositeCurveOnSurface => Some(Self::IfcCompositeCurve),
7658            Self::IfcCompositeCurveSegment => Some(Self::IfcSegment),
7659            Self::IfcCompositeProfileDef => Some(Self::IfcProfileDef),
7660            Self::IfcCompressor => Some(Self::IfcFlowMovingDevice),
7661            Self::IfcCompressorType => Some(Self::IfcFlowMovingDeviceType),
7662            Self::IfcCondenser => Some(Self::IfcEnergyConversionDevice),
7663            Self::IfcCondenserType => Some(Self::IfcEnergyConversionDeviceType),
7664            Self::IfcConic => Some(Self::IfcCurve),
7665            Self::IfcConnectedFaceSet => Some(Self::IfcTopologicalRepresentationItem),
7666            Self::IfcConnectionCurveGeometry => Some(Self::IfcConnectionGeometry),
7667            Self::IfcConnectionPointEccentricity => Some(Self::IfcConnectionPointGeometry),
7668            Self::IfcConnectionPointGeometry => Some(Self::IfcConnectionGeometry),
7669            Self::IfcConnectionSurfaceGeometry => Some(Self::IfcConnectionGeometry),
7670            Self::IfcConnectionVolumeGeometry => Some(Self::IfcConnectionGeometry),
7671            Self::IfcConstructionEquipmentResource => Some(Self::IfcConstructionResource),
7672            Self::IfcConstructionEquipmentResourceType => Some(Self::IfcConstructionResourceType),
7673            Self::IfcConstructionMaterialResource => Some(Self::IfcConstructionResource),
7674            Self::IfcConstructionMaterialResourceType => Some(Self::IfcConstructionResourceType),
7675            Self::IfcConstructionProductResource => Some(Self::IfcConstructionResource),
7676            Self::IfcConstructionProductResourceType => Some(Self::IfcConstructionResourceType),
7677            Self::IfcConstructionResource => Some(Self::IfcResource),
7678            Self::IfcConstructionResourceType => Some(Self::IfcTypeResource),
7679            Self::IfcContext => Some(Self::IfcObjectDefinition),
7680            Self::IfcContextDependentUnit => Some(Self::IfcNamedUnit),
7681            Self::IfcControl => Some(Self::IfcObject),
7682            Self::IfcController => Some(Self::IfcDistributionControlElement),
7683            Self::IfcControllerType => Some(Self::IfcDistributionControlElementType),
7684            Self::IfcConversionBasedUnit => Some(Self::IfcNamedUnit),
7685            Self::IfcConversionBasedUnitWithOffset => Some(Self::IfcConversionBasedUnit),
7686            Self::IfcConveyorSegment => Some(Self::IfcFlowSegment),
7687            Self::IfcConveyorSegmentType => Some(Self::IfcFlowSegmentType),
7688            Self::IfcCooledBeam => Some(Self::IfcEnergyConversionDevice),
7689            Self::IfcCooledBeamType => Some(Self::IfcEnergyConversionDeviceType),
7690            Self::IfcCoolingTower => Some(Self::IfcEnergyConversionDevice),
7691            Self::IfcCoolingTowerType => Some(Self::IfcEnergyConversionDeviceType),
7692            Self::IfcCosineSpiral => Some(Self::IfcSpiral),
7693            Self::IfcCostItem => Some(Self::IfcControl),
7694            Self::IfcCostSchedule => Some(Self::IfcControl),
7695            Self::IfcCostValue => Some(Self::IfcAppliedValue),
7696            Self::IfcCourse => Some(Self::IfcBuiltElement),
7697            Self::IfcCourseType => Some(Self::IfcBuiltElementType),
7698            Self::IfcCovering => Some(Self::IfcBuiltElement),
7699            Self::IfcCoveringType => Some(Self::IfcBuiltElementType),
7700            Self::IfcCrewResource => Some(Self::IfcConstructionResource),
7701            Self::IfcCrewResourceType => Some(Self::IfcConstructionResourceType),
7702            Self::IfcCsgPrimitive3D => Some(Self::IfcGeometricRepresentationItem),
7703            Self::IfcCsgSolid => Some(Self::IfcSolidModel),
7704            Self::IfcCurrencyRelationship => Some(Self::IfcResourceLevelRelationship),
7705            Self::IfcCurtainWall => Some(Self::IfcBuiltElement),
7706            Self::IfcCurtainWallType => Some(Self::IfcBuiltElementType),
7707            Self::IfcCurve => Some(Self::IfcGeometricRepresentationItem),
7708            Self::IfcCurveBoundedPlane => Some(Self::IfcBoundedSurface),
7709            Self::IfcCurveBoundedSurface => Some(Self::IfcBoundedSurface),
7710            Self::IfcCurveSegment => Some(Self::IfcSegment),
7711            Self::IfcCurveStyle => Some(Self::IfcPresentationStyle),
7712            Self::IfcCurveStyleFont => Some(Self::IfcPresentationItem),
7713            Self::IfcCurveStyleFontAndScaling => Some(Self::IfcPresentationItem),
7714            Self::IfcCurveStyleFontPattern => Some(Self::IfcPresentationItem),
7715            Self::IfcCylindricalSurface => Some(Self::IfcElementarySurface),
7716            Self::IfcDamper => Some(Self::IfcFlowController),
7717            Self::IfcDamperType => Some(Self::IfcFlowControllerType),
7718            Self::IfcDeepFoundation => Some(Self::IfcBuiltElement),
7719            Self::IfcDeepFoundationType => Some(Self::IfcBuiltElementType),
7720            Self::IfcDerivedProfileDef => Some(Self::IfcProfileDef),
7721            Self::IfcDirection => Some(Self::IfcGeometricRepresentationItem),
7722            Self::IfcDirectrixCurveSweptAreaSolid => Some(Self::IfcSweptAreaSolid),
7723            Self::IfcDirectrixDerivedReferenceSweptAreaSolid => {
7724                Some(Self::IfcFixedReferenceSweptAreaSolid)
7725            }
7726            Self::IfcDiscreteAccessory => Some(Self::IfcElementComponent),
7727            Self::IfcDiscreteAccessoryType => Some(Self::IfcElementComponentType),
7728            Self::IfcDistributionBoard => Some(Self::IfcFlowController),
7729            Self::IfcDistributionBoardType => Some(Self::IfcFlowControllerType),
7730            Self::IfcDistributionChamberElement => Some(Self::IfcDistributionFlowElement),
7731            Self::IfcDistributionChamberElementType => Some(Self::IfcDistributionFlowElementType),
7732            Self::IfcDistributionCircuit => Some(Self::IfcDistributionSystem),
7733            Self::IfcDistributionControlElement => Some(Self::IfcDistributionElement),
7734            Self::IfcDistributionControlElementType => Some(Self::IfcDistributionElementType),
7735            Self::IfcDistributionElement => Some(Self::IfcElement),
7736            Self::IfcDistributionElementType => Some(Self::IfcElementType),
7737            Self::IfcDistributionFlowElement => Some(Self::IfcDistributionElement),
7738            Self::IfcDistributionFlowElementType => Some(Self::IfcDistributionElementType),
7739            Self::IfcDistributionPort => Some(Self::IfcPort),
7740            Self::IfcDistributionSystem => Some(Self::IfcSystem),
7741            Self::IfcDocumentInformation => Some(Self::IfcExternalInformation),
7742            Self::IfcDocumentInformationRelationship => Some(Self::IfcResourceLevelRelationship),
7743            Self::IfcDocumentReference => Some(Self::IfcExternalReference),
7744            Self::IfcDoor => Some(Self::IfcBuiltElement),
7745            Self::IfcDoorLiningProperties => Some(Self::IfcPreDefinedPropertySet),
7746            Self::IfcDoorPanelProperties => Some(Self::IfcPreDefinedPropertySet),
7747            Self::IfcDoorType => Some(Self::IfcBuiltElementType),
7748            Self::IfcDraughtingPreDefinedColour => Some(Self::IfcPreDefinedColour),
7749            Self::IfcDraughtingPreDefinedCurveFont => Some(Self::IfcPreDefinedCurveFont),
7750            Self::IfcDuctFitting => Some(Self::IfcFlowFitting),
7751            Self::IfcDuctFittingType => Some(Self::IfcFlowFittingType),
7752            Self::IfcDuctSegment => Some(Self::IfcFlowSegment),
7753            Self::IfcDuctSegmentType => Some(Self::IfcFlowSegmentType),
7754            Self::IfcDuctSilencer => Some(Self::IfcFlowTreatmentDevice),
7755            Self::IfcDuctSilencerType => Some(Self::IfcFlowTreatmentDeviceType),
7756            Self::IfcEarthworksCut => Some(Self::IfcFeatureElementSubtraction),
7757            Self::IfcEarthworksElement => Some(Self::IfcBuiltElement),
7758            Self::IfcEarthworksFill => Some(Self::IfcEarthworksElement),
7759            Self::IfcEdge => Some(Self::IfcTopologicalRepresentationItem),
7760            Self::IfcEdgeCurve => Some(Self::IfcEdge),
7761            Self::IfcEdgeLoop => Some(Self::IfcLoop),
7762            Self::IfcElectricAppliance => Some(Self::IfcFlowTerminal),
7763            Self::IfcElectricApplianceType => Some(Self::IfcFlowTerminalType),
7764            Self::IfcElectricDistributionBoard => Some(Self::IfcFlowController),
7765            Self::IfcElectricDistributionBoardType => Some(Self::IfcFlowControllerType),
7766            Self::IfcElectricFlowStorageDevice => Some(Self::IfcFlowStorageDevice),
7767            Self::IfcElectricFlowStorageDeviceType => Some(Self::IfcFlowStorageDeviceType),
7768            Self::IfcElectricFlowTreatmentDevice => Some(Self::IfcFlowTreatmentDevice),
7769            Self::IfcElectricFlowTreatmentDeviceType => Some(Self::IfcFlowTreatmentDeviceType),
7770            Self::IfcElectricGenerator => Some(Self::IfcEnergyConversionDevice),
7771            Self::IfcElectricGeneratorType => Some(Self::IfcEnergyConversionDeviceType),
7772            Self::IfcElectricMotor => Some(Self::IfcEnergyConversionDevice),
7773            Self::IfcElectricMotorType => Some(Self::IfcEnergyConversionDeviceType),
7774            Self::IfcElectricTimeControl => Some(Self::IfcFlowController),
7775            Self::IfcElectricTimeControlType => Some(Self::IfcFlowControllerType),
7776            Self::IfcElement => Some(Self::IfcProduct),
7777            Self::IfcElementAssembly => Some(Self::IfcElement),
7778            Self::IfcElementAssemblyType => Some(Self::IfcElementType),
7779            Self::IfcElementComponent => Some(Self::IfcElement),
7780            Self::IfcElementComponentType => Some(Self::IfcElementType),
7781            Self::IfcElementQuantity => Some(Self::IfcQuantitySet),
7782            Self::IfcElementType => Some(Self::IfcTypeProduct),
7783            Self::IfcElementarySurface => Some(Self::IfcSurface),
7784            Self::IfcEllipse => Some(Self::IfcConic),
7785            Self::IfcEllipseProfileDef => Some(Self::IfcParameterizedProfileDef),
7786            Self::IfcEnergyConversionDevice => Some(Self::IfcDistributionFlowElement),
7787            Self::IfcEnergyConversionDeviceType => Some(Self::IfcDistributionFlowElementType),
7788            Self::IfcEngine => Some(Self::IfcEnergyConversionDevice),
7789            Self::IfcEngineType => Some(Self::IfcEnergyConversionDeviceType),
7790            Self::IfcEvaporativeCooler => Some(Self::IfcEnergyConversionDevice),
7791            Self::IfcEvaporativeCoolerType => Some(Self::IfcEnergyConversionDeviceType),
7792            Self::IfcEvaporator => Some(Self::IfcEnergyConversionDevice),
7793            Self::IfcEvaporatorType => Some(Self::IfcEnergyConversionDeviceType),
7794            Self::IfcEvent => Some(Self::IfcProcess),
7795            Self::IfcEventTime => Some(Self::IfcSchedulingTime),
7796            Self::IfcEventType => Some(Self::IfcTypeProcess),
7797            Self::IfcExtendedProperties => Some(Self::IfcPropertyAbstraction),
7798            Self::IfcExternalReferenceRelationship => Some(Self::IfcResourceLevelRelationship),
7799            Self::IfcExternalSpatialElement => Some(Self::IfcExternalSpatialStructureElement),
7800            Self::IfcExternalSpatialStructureElement => Some(Self::IfcSpatialElement),
7801            Self::IfcExternallyDefinedHatchStyle => Some(Self::IfcExternalReference),
7802            Self::IfcExternallyDefinedSurfaceStyle => Some(Self::IfcExternalReference),
7803            Self::IfcExternallyDefinedTextFont => Some(Self::IfcExternalReference),
7804            Self::IfcExtrudedAreaSolid => Some(Self::IfcSweptAreaSolid),
7805            Self::IfcExtrudedAreaSolidTapered => Some(Self::IfcExtrudedAreaSolid),
7806            Self::IfcFace => Some(Self::IfcTopologicalRepresentationItem),
7807            Self::IfcFaceBasedSurfaceModel => Some(Self::IfcGeometricRepresentationItem),
7808            Self::IfcFaceBound => Some(Self::IfcTopologicalRepresentationItem),
7809            Self::IfcFaceOuterBound => Some(Self::IfcFaceBound),
7810            Self::IfcFaceSurface => Some(Self::IfcFace),
7811            Self::IfcFacetedBrep => Some(Self::IfcManifoldSolidBrep),
7812            Self::IfcFacetedBrepWithVoids => Some(Self::IfcFacetedBrep),
7813            Self::IfcFacility => Some(Self::IfcSpatialStructureElement),
7814            Self::IfcFacilityPart => Some(Self::IfcSpatialStructureElement),
7815            Self::IfcFacilityPartCommon => Some(Self::IfcFacilityPart),
7816            Self::IfcFailureConnectionCondition => Some(Self::IfcStructuralConnectionCondition),
7817            Self::IfcFan => Some(Self::IfcFlowMovingDevice),
7818            Self::IfcFanType => Some(Self::IfcFlowMovingDeviceType),
7819            Self::IfcFastener => Some(Self::IfcElementComponent),
7820            Self::IfcFastenerType => Some(Self::IfcElementComponentType),
7821            Self::IfcFeatureElement => Some(Self::IfcElement),
7822            Self::IfcFeatureElementAddition => Some(Self::IfcFeatureElement),
7823            Self::IfcFeatureElementSubtraction => Some(Self::IfcFeatureElement),
7824            Self::IfcFillAreaStyle => Some(Self::IfcPresentationStyle),
7825            Self::IfcFillAreaStyleHatching => Some(Self::IfcGeometricRepresentationItem),
7826            Self::IfcFillAreaStyleTiles => Some(Self::IfcGeometricRepresentationItem),
7827            Self::IfcFilter => Some(Self::IfcFlowTreatmentDevice),
7828            Self::IfcFilterType => Some(Self::IfcFlowTreatmentDeviceType),
7829            Self::IfcFireSuppressionTerminal => Some(Self::IfcFlowTerminal),
7830            Self::IfcFireSuppressionTerminalType => Some(Self::IfcFlowTerminalType),
7831            Self::IfcFixedReferenceSweptAreaSolid => Some(Self::IfcDirectrixCurveSweptAreaSolid),
7832            Self::IfcFlowController => Some(Self::IfcDistributionFlowElement),
7833            Self::IfcFlowControllerType => Some(Self::IfcDistributionFlowElementType),
7834            Self::IfcFlowFitting => Some(Self::IfcDistributionFlowElement),
7835            Self::IfcFlowFittingType => Some(Self::IfcDistributionFlowElementType),
7836            Self::IfcFlowInstrument => Some(Self::IfcDistributionControlElement),
7837            Self::IfcFlowInstrumentType => Some(Self::IfcDistributionControlElementType),
7838            Self::IfcFlowMeter => Some(Self::IfcFlowController),
7839            Self::IfcFlowMeterType => Some(Self::IfcFlowControllerType),
7840            Self::IfcFlowMovingDevice => Some(Self::IfcDistributionFlowElement),
7841            Self::IfcFlowMovingDeviceType => Some(Self::IfcDistributionFlowElementType),
7842            Self::IfcFlowSegment => Some(Self::IfcDistributionFlowElement),
7843            Self::IfcFlowSegmentType => Some(Self::IfcDistributionFlowElementType),
7844            Self::IfcFlowStorageDevice => Some(Self::IfcDistributionFlowElement),
7845            Self::IfcFlowStorageDeviceType => Some(Self::IfcDistributionFlowElementType),
7846            Self::IfcFlowTerminal => Some(Self::IfcDistributionFlowElement),
7847            Self::IfcFlowTerminalType => Some(Self::IfcDistributionFlowElementType),
7848            Self::IfcFlowTreatmentDevice => Some(Self::IfcDistributionFlowElement),
7849            Self::IfcFlowTreatmentDeviceType => Some(Self::IfcDistributionFlowElementType),
7850            Self::IfcFooting => Some(Self::IfcBuiltElement),
7851            Self::IfcFootingType => Some(Self::IfcBuiltElementType),
7852            Self::IfcFurnishingElement => Some(Self::IfcElement),
7853            Self::IfcFurnishingElementType => Some(Self::IfcElementType),
7854            Self::IfcFurniture => Some(Self::IfcFurnishingElement),
7855            Self::IfcFurnitureType => Some(Self::IfcFurnishingElementType),
7856            Self::IfcGeographicCRS => Some(Self::IfcCoordinateReferenceSystem),
7857            Self::IfcGeographicElement => Some(Self::IfcElement),
7858            Self::IfcGeographicElementType => Some(Self::IfcElementType),
7859            Self::IfcGeometricCurveSet => Some(Self::IfcGeometricSet),
7860            Self::IfcGeometricRepresentationContext => Some(Self::IfcRepresentationContext),
7861            Self::IfcGeometricRepresentationItem => Some(Self::IfcRepresentationItem),
7862            Self::IfcGeometricRepresentationSubContext => {
7863                Some(Self::IfcGeometricRepresentationContext)
7864            }
7865            Self::IfcGeometricSet => Some(Self::IfcGeometricRepresentationItem),
7866            Self::IfcGeomodel => Some(Self::IfcGeotechnicalAssembly),
7867            Self::IfcGeoslice => Some(Self::IfcGeotechnicalAssembly),
7868            Self::IfcGeotechnicalAssembly => Some(Self::IfcGeotechnicalElement),
7869            Self::IfcGeotechnicalElement => Some(Self::IfcElement),
7870            Self::IfcGeotechnicalStratum => Some(Self::IfcGeotechnicalElement),
7871            Self::IfcGradientCurve => Some(Self::IfcCompositeCurve),
7872            Self::IfcGrid => Some(Self::IfcPositioningElement),
7873            Self::IfcGridPlacement => Some(Self::IfcObjectPlacement),
7874            Self::IfcGroup => Some(Self::IfcObject),
7875            Self::IfcHalfSpaceSolid => Some(Self::IfcGeometricRepresentationItem),
7876            Self::IfcHeatExchanger => Some(Self::IfcEnergyConversionDevice),
7877            Self::IfcHeatExchangerType => Some(Self::IfcEnergyConversionDeviceType),
7878            Self::IfcHumidifier => Some(Self::IfcEnergyConversionDevice),
7879            Self::IfcHumidifierType => Some(Self::IfcEnergyConversionDeviceType),
7880            Self::IfcIShapeProfileDef => Some(Self::IfcParameterizedProfileDef),
7881            Self::IfcImageTexture => Some(Self::IfcSurfaceTexture),
7882            Self::IfcImpactProtectionDevice => Some(Self::IfcElementComponent),
7883            Self::IfcImpactProtectionDeviceType => Some(Self::IfcElementComponentType),
7884            Self::IfcIndexedColourMap => Some(Self::IfcPresentationItem),
7885            Self::IfcIndexedPolyCurve => Some(Self::IfcBoundedCurve),
7886            Self::IfcIndexedPolygonalFace => Some(Self::IfcTessellatedItem),
7887            Self::IfcIndexedPolygonalFaceWithVoids => Some(Self::IfcIndexedPolygonalFace),
7888            Self::IfcIndexedPolygonalTextureMap => Some(Self::IfcIndexedTextureMap),
7889            Self::IfcIndexedTextureMap => Some(Self::IfcTextureCoordinate),
7890            Self::IfcIndexedTriangleTextureMap => Some(Self::IfcIndexedTextureMap),
7891            Self::IfcInterceptor => Some(Self::IfcFlowTreatmentDevice),
7892            Self::IfcInterceptorType => Some(Self::IfcFlowTreatmentDeviceType),
7893            Self::IfcIntersectionCurve => Some(Self::IfcSurfaceCurve),
7894            Self::IfcInventory => Some(Self::IfcGroup),
7895            Self::IfcIrregularTimeSeries => Some(Self::IfcTimeSeries),
7896            Self::IfcJunctionBox => Some(Self::IfcFlowFitting),
7897            Self::IfcJunctionBoxType => Some(Self::IfcFlowFittingType),
7898            Self::IfcKerb => Some(Self::IfcBuiltElement),
7899            Self::IfcKerbType => Some(Self::IfcBuiltElementType),
7900            Self::IfcLShapeProfileDef => Some(Self::IfcParameterizedProfileDef),
7901            Self::IfcLaborResource => Some(Self::IfcConstructionResource),
7902            Self::IfcLaborResourceType => Some(Self::IfcConstructionResourceType),
7903            Self::IfcLagTime => Some(Self::IfcSchedulingTime),
7904            Self::IfcLamp => Some(Self::IfcFlowTerminal),
7905            Self::IfcLampType => Some(Self::IfcFlowTerminalType),
7906            Self::IfcLibraryInformation => Some(Self::IfcExternalInformation),
7907            Self::IfcLibraryReference => Some(Self::IfcExternalReference),
7908            Self::IfcLightFixture => Some(Self::IfcFlowTerminal),
7909            Self::IfcLightFixtureType => Some(Self::IfcFlowTerminalType),
7910            Self::IfcLightSource => Some(Self::IfcGeometricRepresentationItem),
7911            Self::IfcLightSourceAmbient => Some(Self::IfcLightSource),
7912            Self::IfcLightSourceDirectional => Some(Self::IfcLightSource),
7913            Self::IfcLightSourceGoniometric => Some(Self::IfcLightSource),
7914            Self::IfcLightSourcePositional => Some(Self::IfcLightSource),
7915            Self::IfcLightSourceSpot => Some(Self::IfcLightSourcePositional),
7916            Self::IfcLine => Some(Self::IfcCurve),
7917            Self::IfcLinearElement => Some(Self::IfcProduct),
7918            Self::IfcLinearPlacement => Some(Self::IfcObjectPlacement),
7919            Self::IfcLinearPositioningElement => Some(Self::IfcPositioningElement),
7920            Self::IfcLiquidTerminal => Some(Self::IfcFlowTerminal),
7921            Self::IfcLiquidTerminalType => Some(Self::IfcFlowTerminalType),
7922            Self::IfcLocalPlacement => Some(Self::IfcObjectPlacement),
7923            Self::IfcLoop => Some(Self::IfcTopologicalRepresentationItem),
7924            Self::IfcManifoldSolidBrep => Some(Self::IfcSolidModel),
7925            Self::IfcMapConversion => Some(Self::IfcCoordinateOperation),
7926            Self::IfcMapConversionScaled => Some(Self::IfcMapConversion),
7927            Self::IfcMappedItem => Some(Self::IfcRepresentationItem),
7928            Self::IfcMarineFacility => Some(Self::IfcFacility),
7929            Self::IfcMarinePart => Some(Self::IfcFacilityPart),
7930            Self::IfcMaterial => Some(Self::IfcMaterialDefinition),
7931            Self::IfcMaterialConstituent => Some(Self::IfcMaterialDefinition),
7932            Self::IfcMaterialConstituentSet => Some(Self::IfcMaterialDefinition),
7933            Self::IfcMaterialDefinitionRepresentation => Some(Self::IfcProductRepresentation),
7934            Self::IfcMaterialLayer => Some(Self::IfcMaterialDefinition),
7935            Self::IfcMaterialLayerSet => Some(Self::IfcMaterialDefinition),
7936            Self::IfcMaterialLayerSetUsage => Some(Self::IfcMaterialUsageDefinition),
7937            Self::IfcMaterialLayerWithOffsets => Some(Self::IfcMaterialLayer),
7938            Self::IfcMaterialProfile => Some(Self::IfcMaterialDefinition),
7939            Self::IfcMaterialProfileSet => Some(Self::IfcMaterialDefinition),
7940            Self::IfcMaterialProfileSetUsage => Some(Self::IfcMaterialUsageDefinition),
7941            Self::IfcMaterialProfileSetUsageTapering => Some(Self::IfcMaterialProfileSetUsage),
7942            Self::IfcMaterialProfileWithOffsets => Some(Self::IfcMaterialProfile),
7943            Self::IfcMaterialProperties => Some(Self::IfcExtendedProperties),
7944            Self::IfcMaterialRelationship => Some(Self::IfcResourceLevelRelationship),
7945            Self::IfcMechanicalFastener => Some(Self::IfcElementComponent),
7946            Self::IfcMechanicalFastenerType => Some(Self::IfcElementComponentType),
7947            Self::IfcMedicalDevice => Some(Self::IfcFlowTerminal),
7948            Self::IfcMedicalDeviceType => Some(Self::IfcFlowTerminalType),
7949            Self::IfcMember => Some(Self::IfcBuiltElement),
7950            Self::IfcMemberType => Some(Self::IfcBuiltElementType),
7951            Self::IfcMetric => Some(Self::IfcConstraint),
7952            Self::IfcMirroredProfileDef => Some(Self::IfcDerivedProfileDef),
7953            Self::IfcMobileTelecommunicationsAppliance => Some(Self::IfcFlowTerminal),
7954            Self::IfcMobileTelecommunicationsApplianceType => Some(Self::IfcFlowTerminalType),
7955            Self::IfcMooringDevice => Some(Self::IfcBuiltElement),
7956            Self::IfcMooringDeviceType => Some(Self::IfcBuiltElementType),
7957            Self::IfcMotorConnection => Some(Self::IfcEnergyConversionDevice),
7958            Self::IfcMotorConnectionType => Some(Self::IfcEnergyConversionDeviceType),
7959            Self::IfcNavigationElement => Some(Self::IfcBuiltElement),
7960            Self::IfcNavigationElementType => Some(Self::IfcBuiltElementType),
7961            Self::IfcObject => Some(Self::IfcObjectDefinition),
7962            Self::IfcObjectDefinition => Some(Self::IfcRoot),
7963            Self::IfcObjective => Some(Self::IfcConstraint),
7964            Self::IfcOccupant => Some(Self::IfcActor),
7965            Self::IfcOffsetCurve => Some(Self::IfcCurve),
7966            Self::IfcOffsetCurve2D => Some(Self::IfcOffsetCurve),
7967            Self::IfcOffsetCurve3D => Some(Self::IfcOffsetCurve),
7968            Self::IfcOffsetCurveByDistances => Some(Self::IfcOffsetCurve),
7969            Self::IfcOpenCrossProfileDef => Some(Self::IfcProfileDef),
7970            Self::IfcOpenShell => Some(Self::IfcConnectedFaceSet),
7971            Self::IfcOpeningElement => Some(Self::IfcFeatureElementSubtraction),
7972            Self::IfcOrganizationRelationship => Some(Self::IfcResourceLevelRelationship),
7973            Self::IfcOrientedEdge => Some(Self::IfcEdge),
7974            Self::IfcOuterBoundaryCurve => Some(Self::IfcBoundaryCurve),
7975            Self::IfcOutlet => Some(Self::IfcFlowTerminal),
7976            Self::IfcOutletType => Some(Self::IfcFlowTerminalType),
7977            Self::IfcParameterizedProfileDef => Some(Self::IfcProfileDef),
7978            Self::IfcPath => Some(Self::IfcTopologicalRepresentationItem),
7979            Self::IfcPavement => Some(Self::IfcBuiltElement),
7980            Self::IfcPavementType => Some(Self::IfcBuiltElementType),
7981            Self::IfcPcurve => Some(Self::IfcCurve),
7982            Self::IfcPerformanceHistory => Some(Self::IfcControl),
7983            Self::IfcPermeableCoveringProperties => Some(Self::IfcPreDefinedPropertySet),
7984            Self::IfcPermit => Some(Self::IfcControl),
7985            Self::IfcPhysicalComplexQuantity => Some(Self::IfcPhysicalQuantity),
7986            Self::IfcPhysicalSimpleQuantity => Some(Self::IfcPhysicalQuantity),
7987            Self::IfcPile => Some(Self::IfcDeepFoundation),
7988            Self::IfcPileType => Some(Self::IfcDeepFoundationType),
7989            Self::IfcPipeFitting => Some(Self::IfcFlowFitting),
7990            Self::IfcPipeFittingType => Some(Self::IfcFlowFittingType),
7991            Self::IfcPipeSegment => Some(Self::IfcFlowSegment),
7992            Self::IfcPipeSegmentType => Some(Self::IfcFlowSegmentType),
7993            Self::IfcPixelTexture => Some(Self::IfcSurfaceTexture),
7994            Self::IfcPlacement => Some(Self::IfcGeometricRepresentationItem),
7995            Self::IfcPlanarBox => Some(Self::IfcPlanarExtent),
7996            Self::IfcPlanarExtent => Some(Self::IfcGeometricRepresentationItem),
7997            Self::IfcPlane => Some(Self::IfcElementarySurface),
7998            Self::IfcPlate => Some(Self::IfcBuiltElement),
7999            Self::IfcPlateType => Some(Self::IfcBuiltElementType),
8000            Self::IfcPoint => Some(Self::IfcGeometricRepresentationItem),
8001            Self::IfcPointByDistanceExpression => Some(Self::IfcPoint),
8002            Self::IfcPointOnCurve => Some(Self::IfcPoint),
8003            Self::IfcPointOnSurface => Some(Self::IfcPoint),
8004            Self::IfcPolyLoop => Some(Self::IfcLoop),
8005            Self::IfcPolygonalBoundedHalfSpace => Some(Self::IfcHalfSpaceSolid),
8006            Self::IfcPolygonalFaceSet => Some(Self::IfcTessellatedFaceSet),
8007            Self::IfcPolyline => Some(Self::IfcBoundedCurve),
8008            Self::IfcPolynomialCurve => Some(Self::IfcCurve),
8009            Self::IfcPort => Some(Self::IfcProduct),
8010            Self::IfcPositioningElement => Some(Self::IfcProduct),
8011            Self::IfcPostalAddress => Some(Self::IfcAddress),
8012            Self::IfcPreDefinedColour => Some(Self::IfcPreDefinedItem),
8013            Self::IfcPreDefinedCurveFont => Some(Self::IfcPreDefinedItem),
8014            Self::IfcPreDefinedItem => Some(Self::IfcPresentationItem),
8015            Self::IfcPreDefinedProperties => Some(Self::IfcPropertyAbstraction),
8016            Self::IfcPreDefinedPropertySet => Some(Self::IfcPropertySetDefinition),
8017            Self::IfcPreDefinedTextFont => Some(Self::IfcPreDefinedItem),
8018            Self::IfcPresentationLayerWithStyle => Some(Self::IfcPresentationLayerAssignment),
8019            Self::IfcProcedure => Some(Self::IfcProcess),
8020            Self::IfcProcedureType => Some(Self::IfcTypeProcess),
8021            Self::IfcProcess => Some(Self::IfcObject),
8022            Self::IfcProduct => Some(Self::IfcObject),
8023            Self::IfcProductDefinitionShape => Some(Self::IfcProductRepresentation),
8024            Self::IfcProfileProperties => Some(Self::IfcExtendedProperties),
8025            Self::IfcProject => Some(Self::IfcContext),
8026            Self::IfcProjectLibrary => Some(Self::IfcContext),
8027            Self::IfcProjectOrder => Some(Self::IfcControl),
8028            Self::IfcProjectedCRS => Some(Self::IfcCoordinateReferenceSystem),
8029            Self::IfcProjectionElement => Some(Self::IfcFeatureElementAddition),
8030            Self::IfcProperty => Some(Self::IfcPropertyAbstraction),
8031            Self::IfcPropertyBoundedValue => Some(Self::IfcSimpleProperty),
8032            Self::IfcPropertyDefinition => Some(Self::IfcRoot),
8033            Self::IfcPropertyDependencyRelationship => Some(Self::IfcResourceLevelRelationship),
8034            Self::IfcPropertyEnumeratedValue => Some(Self::IfcSimpleProperty),
8035            Self::IfcPropertyEnumeration => Some(Self::IfcPropertyAbstraction),
8036            Self::IfcPropertyListValue => Some(Self::IfcSimpleProperty),
8037            Self::IfcPropertyReferenceValue => Some(Self::IfcSimpleProperty),
8038            Self::IfcPropertySet => Some(Self::IfcPropertySetDefinition),
8039            Self::IfcPropertySetDefinition => Some(Self::IfcPropertyDefinition),
8040            Self::IfcPropertySetTemplate => Some(Self::IfcPropertyTemplateDefinition),
8041            Self::IfcPropertySingleValue => Some(Self::IfcSimpleProperty),
8042            Self::IfcPropertyTableValue => Some(Self::IfcSimpleProperty),
8043            Self::IfcPropertyTemplate => Some(Self::IfcPropertyTemplateDefinition),
8044            Self::IfcPropertyTemplateDefinition => Some(Self::IfcPropertyDefinition),
8045            Self::IfcProtectiveDevice => Some(Self::IfcFlowController),
8046            Self::IfcProtectiveDeviceTrippingUnit => Some(Self::IfcDistributionControlElement),
8047            Self::IfcProtectiveDeviceTrippingUnitType => {
8048                Some(Self::IfcDistributionControlElementType)
8049            }
8050            Self::IfcProtectiveDeviceType => Some(Self::IfcFlowControllerType),
8051            Self::IfcPump => Some(Self::IfcFlowMovingDevice),
8052            Self::IfcPumpType => Some(Self::IfcFlowMovingDeviceType),
8053            Self::IfcQuantityArea => Some(Self::IfcPhysicalSimpleQuantity),
8054            Self::IfcQuantityCount => Some(Self::IfcPhysicalSimpleQuantity),
8055            Self::IfcQuantityLength => Some(Self::IfcPhysicalSimpleQuantity),
8056            Self::IfcQuantityNumber => Some(Self::IfcPhysicalSimpleQuantity),
8057            Self::IfcQuantitySet => Some(Self::IfcPropertySetDefinition),
8058            Self::IfcQuantityTime => Some(Self::IfcPhysicalSimpleQuantity),
8059            Self::IfcQuantityVolume => Some(Self::IfcPhysicalSimpleQuantity),
8060            Self::IfcQuantityWeight => Some(Self::IfcPhysicalSimpleQuantity),
8061            Self::IfcRail => Some(Self::IfcBuiltElement),
8062            Self::IfcRailType => Some(Self::IfcBuiltElementType),
8063            Self::IfcRailing => Some(Self::IfcBuiltElement),
8064            Self::IfcRailingType => Some(Self::IfcBuiltElementType),
8065            Self::IfcRailway => Some(Self::IfcFacility),
8066            Self::IfcRailwayPart => Some(Self::IfcFacilityPart),
8067            Self::IfcRamp => Some(Self::IfcBuiltElement),
8068            Self::IfcRampFlight => Some(Self::IfcBuiltElement),
8069            Self::IfcRampFlightType => Some(Self::IfcBuiltElementType),
8070            Self::IfcRampType => Some(Self::IfcBuiltElementType),
8071            Self::IfcRationalBSplineCurveWithKnots => Some(Self::IfcBSplineCurveWithKnots),
8072            Self::IfcRationalBSplineSurfaceWithKnots => Some(Self::IfcBSplineSurfaceWithKnots),
8073            Self::IfcRectangleHollowProfileDef => Some(Self::IfcRectangleProfileDef),
8074            Self::IfcRectangleProfileDef => Some(Self::IfcParameterizedProfileDef),
8075            Self::IfcRectangularPyramid => Some(Self::IfcCsgPrimitive3D),
8076            Self::IfcRectangularTrimmedSurface => Some(Self::IfcBoundedSurface),
8077            Self::IfcReferent => Some(Self::IfcPositioningElement),
8078            Self::IfcRegularTimeSeries => Some(Self::IfcTimeSeries),
8079            Self::IfcReinforcedSoil => Some(Self::IfcEarthworksElement),
8080            Self::IfcReinforcementBarProperties => Some(Self::IfcPreDefinedProperties),
8081            Self::IfcReinforcementDefinitionProperties => Some(Self::IfcPreDefinedPropertySet),
8082            Self::IfcReinforcingBar => Some(Self::IfcReinforcingElement),
8083            Self::IfcReinforcingBarType => Some(Self::IfcReinforcingElementType),
8084            Self::IfcReinforcingElement => Some(Self::IfcElementComponent),
8085            Self::IfcReinforcingElementType => Some(Self::IfcElementComponentType),
8086            Self::IfcReinforcingMesh => Some(Self::IfcReinforcingElement),
8087            Self::IfcReinforcingMeshType => Some(Self::IfcReinforcingElementType),
8088            Self::IfcRelAdheresToElement => Some(Self::IfcRelDecomposes),
8089            Self::IfcRelAggregates => Some(Self::IfcRelDecomposes),
8090            Self::IfcRelAssigns => Some(Self::IfcRelationship),
8091            Self::IfcRelAssignsToActor => Some(Self::IfcRelAssigns),
8092            Self::IfcRelAssignsToControl => Some(Self::IfcRelAssigns),
8093            Self::IfcRelAssignsToGroup => Some(Self::IfcRelAssigns),
8094            Self::IfcRelAssignsToGroupByFactor => Some(Self::IfcRelAssignsToGroup),
8095            Self::IfcRelAssignsToProcess => Some(Self::IfcRelAssigns),
8096            Self::IfcRelAssignsToProduct => Some(Self::IfcRelAssigns),
8097            Self::IfcRelAssignsToResource => Some(Self::IfcRelAssigns),
8098            Self::IfcRelAssociates => Some(Self::IfcRelationship),
8099            Self::IfcRelAssociatesApproval => Some(Self::IfcRelAssociates),
8100            Self::IfcRelAssociatesClassification => Some(Self::IfcRelAssociates),
8101            Self::IfcRelAssociatesConstraint => Some(Self::IfcRelAssociates),
8102            Self::IfcRelAssociatesDocument => Some(Self::IfcRelAssociates),
8103            Self::IfcRelAssociatesLibrary => Some(Self::IfcRelAssociates),
8104            Self::IfcRelAssociatesMaterial => Some(Self::IfcRelAssociates),
8105            Self::IfcRelAssociatesProfileDef => Some(Self::IfcRelAssociates),
8106            Self::IfcRelConnects => Some(Self::IfcRelationship),
8107            Self::IfcRelConnectsElements => Some(Self::IfcRelConnects),
8108            Self::IfcRelConnectsPathElements => Some(Self::IfcRelConnectsElements),
8109            Self::IfcRelConnectsPortToElement => Some(Self::IfcRelConnects),
8110            Self::IfcRelConnectsPorts => Some(Self::IfcRelConnects),
8111            Self::IfcRelConnectsStructuralActivity => Some(Self::IfcRelConnects),
8112            Self::IfcRelConnectsStructuralMember => Some(Self::IfcRelConnects),
8113            Self::IfcRelConnectsWithEccentricity => Some(Self::IfcRelConnectsStructuralMember),
8114            Self::IfcRelConnectsWithRealizingElements => Some(Self::IfcRelConnectsElements),
8115            Self::IfcRelContainedInSpatialStructure => Some(Self::IfcRelConnects),
8116            Self::IfcRelCoversBldgElements => Some(Self::IfcRelConnects),
8117            Self::IfcRelCoversSpaces => Some(Self::IfcRelConnects),
8118            Self::IfcRelDeclares => Some(Self::IfcRelationship),
8119            Self::IfcRelDecomposes => Some(Self::IfcRelationship),
8120            Self::IfcRelDefines => Some(Self::IfcRelationship),
8121            Self::IfcRelDefinesByObject => Some(Self::IfcRelDefines),
8122            Self::IfcRelDefinesByProperties => Some(Self::IfcRelDefines),
8123            Self::IfcRelDefinesByTemplate => Some(Self::IfcRelDefines),
8124            Self::IfcRelDefinesByType => Some(Self::IfcRelDefines),
8125            Self::IfcRelFillsElement => Some(Self::IfcRelConnects),
8126            Self::IfcRelFlowControlElements => Some(Self::IfcRelConnects),
8127            Self::IfcRelInterferesElements => Some(Self::IfcRelConnects),
8128            Self::IfcRelNests => Some(Self::IfcRelDecomposes),
8129            Self::IfcRelPositions => Some(Self::IfcRelConnects),
8130            Self::IfcRelProjectsElement => Some(Self::IfcRelDecomposes),
8131            Self::IfcRelReferencedInSpatialStructure => Some(Self::IfcRelConnects),
8132            Self::IfcRelSequence => Some(Self::IfcRelConnects),
8133            Self::IfcRelServicesBuildings => Some(Self::IfcRelConnects),
8134            Self::IfcRelSpaceBoundary => Some(Self::IfcRelConnects),
8135            Self::IfcRelSpaceBoundary1stLevel => Some(Self::IfcRelSpaceBoundary),
8136            Self::IfcRelSpaceBoundary2ndLevel => Some(Self::IfcRelSpaceBoundary1stLevel),
8137            Self::IfcRelVoidsElement => Some(Self::IfcRelDecomposes),
8138            Self::IfcRelationship => Some(Self::IfcRoot),
8139            Self::IfcReparametrisedCompositeCurveSegment => Some(Self::IfcCompositeCurveSegment),
8140            Self::IfcResource => Some(Self::IfcObject),
8141            Self::IfcResourceApprovalRelationship => Some(Self::IfcResourceLevelRelationship),
8142            Self::IfcResourceConstraintRelationship => Some(Self::IfcResourceLevelRelationship),
8143            Self::IfcResourceTime => Some(Self::IfcSchedulingTime),
8144            Self::IfcRevolvedAreaSolid => Some(Self::IfcSweptAreaSolid),
8145            Self::IfcRevolvedAreaSolidTapered => Some(Self::IfcRevolvedAreaSolid),
8146            Self::IfcRightCircularCone => Some(Self::IfcCsgPrimitive3D),
8147            Self::IfcRightCircularCylinder => Some(Self::IfcCsgPrimitive3D),
8148            Self::IfcRigidOperation => Some(Self::IfcCoordinateOperation),
8149            Self::IfcRoad => Some(Self::IfcFacility),
8150            Self::IfcRoadPart => Some(Self::IfcFacilityPart),
8151            Self::IfcRoof => Some(Self::IfcBuiltElement),
8152            Self::IfcRoofType => Some(Self::IfcBuiltElementType),
8153            Self::IfcRoundedRectangleProfileDef => Some(Self::IfcRectangleProfileDef),
8154            Self::IfcSIUnit => Some(Self::IfcNamedUnit),
8155            Self::IfcSanitaryTerminal => Some(Self::IfcFlowTerminal),
8156            Self::IfcSanitaryTerminalType => Some(Self::IfcFlowTerminalType),
8157            Self::IfcSeamCurve => Some(Self::IfcSurfaceCurve),
8158            Self::IfcSecondOrderPolynomialSpiral => Some(Self::IfcSpiral),
8159            Self::IfcSectionProperties => Some(Self::IfcPreDefinedProperties),
8160            Self::IfcSectionReinforcementProperties => Some(Self::IfcPreDefinedProperties),
8161            Self::IfcSectionedSolid => Some(Self::IfcSolidModel),
8162            Self::IfcSectionedSolidHorizontal => Some(Self::IfcSectionedSolid),
8163            Self::IfcSectionedSpine => Some(Self::IfcGeometricRepresentationItem),
8164            Self::IfcSectionedSurface => Some(Self::IfcSurface),
8165            Self::IfcSegment => Some(Self::IfcGeometricRepresentationItem),
8166            Self::IfcSegmentedReferenceCurve => Some(Self::IfcCompositeCurve),
8167            Self::IfcSensor => Some(Self::IfcDistributionControlElement),
8168            Self::IfcSensorType => Some(Self::IfcDistributionControlElementType),
8169            Self::IfcSeventhOrderPolynomialSpiral => Some(Self::IfcSpiral),
8170            Self::IfcShadingDevice => Some(Self::IfcBuiltElement),
8171            Self::IfcShadingDeviceType => Some(Self::IfcBuiltElementType),
8172            Self::IfcShapeModel => Some(Self::IfcRepresentation),
8173            Self::IfcShapeRepresentation => Some(Self::IfcShapeModel),
8174            Self::IfcShellBasedSurfaceModel => Some(Self::IfcGeometricRepresentationItem),
8175            Self::IfcSign => Some(Self::IfcElementComponent),
8176            Self::IfcSignType => Some(Self::IfcElementComponentType),
8177            Self::IfcSignal => Some(Self::IfcFlowTerminal),
8178            Self::IfcSignalType => Some(Self::IfcFlowTerminalType),
8179            Self::IfcSimpleProperty => Some(Self::IfcProperty),
8180            Self::IfcSimplePropertyTemplate => Some(Self::IfcPropertyTemplate),
8181            Self::IfcSineSpiral => Some(Self::IfcSpiral),
8182            Self::IfcSite => Some(Self::IfcSpatialStructureElement),
8183            Self::IfcSlab => Some(Self::IfcBuiltElement),
8184            Self::IfcSlabType => Some(Self::IfcBuiltElementType),
8185            Self::IfcSlippageConnectionCondition => Some(Self::IfcStructuralConnectionCondition),
8186            Self::IfcSolarDevice => Some(Self::IfcEnergyConversionDevice),
8187            Self::IfcSolarDeviceType => Some(Self::IfcEnergyConversionDeviceType),
8188            Self::IfcSolidModel => Some(Self::IfcGeometricRepresentationItem),
8189            Self::IfcSpace => Some(Self::IfcSpatialStructureElement),
8190            Self::IfcSpaceHeater => Some(Self::IfcFlowTerminal),
8191            Self::IfcSpaceHeaterType => Some(Self::IfcFlowTerminalType),
8192            Self::IfcSpaceType => Some(Self::IfcSpatialStructureElementType),
8193            Self::IfcSpatialElement => Some(Self::IfcProduct),
8194            Self::IfcSpatialElementType => Some(Self::IfcTypeProduct),
8195            Self::IfcSpatialStructureElement => Some(Self::IfcSpatialElement),
8196            Self::IfcSpatialStructureElementType => Some(Self::IfcSpatialElementType),
8197            Self::IfcSpatialZone => Some(Self::IfcSpatialElement),
8198            Self::IfcSpatialZoneType => Some(Self::IfcSpatialElementType),
8199            Self::IfcSphere => Some(Self::IfcCsgPrimitive3D),
8200            Self::IfcSphericalSurface => Some(Self::IfcElementarySurface),
8201            Self::IfcSpiral => Some(Self::IfcCurve),
8202            Self::IfcStackTerminal => Some(Self::IfcFlowTerminal),
8203            Self::IfcStackTerminalType => Some(Self::IfcFlowTerminalType),
8204            Self::IfcStair => Some(Self::IfcBuiltElement),
8205            Self::IfcStairFlight => Some(Self::IfcBuiltElement),
8206            Self::IfcStairFlightType => Some(Self::IfcBuiltElementType),
8207            Self::IfcStairType => Some(Self::IfcBuiltElementType),
8208            Self::IfcStructuralAction => Some(Self::IfcStructuralActivity),
8209            Self::IfcStructuralActivity => Some(Self::IfcProduct),
8210            Self::IfcStructuralAnalysisModel => Some(Self::IfcSystem),
8211            Self::IfcStructuralConnection => Some(Self::IfcStructuralItem),
8212            Self::IfcStructuralCurveAction => Some(Self::IfcStructuralAction),
8213            Self::IfcStructuralCurveConnection => Some(Self::IfcStructuralConnection),
8214            Self::IfcStructuralCurveMember => Some(Self::IfcStructuralMember),
8215            Self::IfcStructuralCurveMemberVarying => Some(Self::IfcStructuralCurveMember),
8216            Self::IfcStructuralCurveReaction => Some(Self::IfcStructuralReaction),
8217            Self::IfcStructuralItem => Some(Self::IfcProduct),
8218            Self::IfcStructuralLinearAction => Some(Self::IfcStructuralCurveAction),
8219            Self::IfcStructuralLoadCase => Some(Self::IfcStructuralLoadGroup),
8220            Self::IfcStructuralLoadConfiguration => Some(Self::IfcStructuralLoad),
8221            Self::IfcStructuralLoadGroup => Some(Self::IfcGroup),
8222            Self::IfcStructuralLoadLinearForce => Some(Self::IfcStructuralLoadStatic),
8223            Self::IfcStructuralLoadOrResult => Some(Self::IfcStructuralLoad),
8224            Self::IfcStructuralLoadPlanarForce => Some(Self::IfcStructuralLoadStatic),
8225            Self::IfcStructuralLoadSingleDisplacement => Some(Self::IfcStructuralLoadStatic),
8226            Self::IfcStructuralLoadSingleDisplacementDistortion => {
8227                Some(Self::IfcStructuralLoadSingleDisplacement)
8228            }
8229            Self::IfcStructuralLoadSingleForce => Some(Self::IfcStructuralLoadStatic),
8230            Self::IfcStructuralLoadSingleForceWarping => Some(Self::IfcStructuralLoadSingleForce),
8231            Self::IfcStructuralLoadStatic => Some(Self::IfcStructuralLoadOrResult),
8232            Self::IfcStructuralLoadTemperature => Some(Self::IfcStructuralLoadStatic),
8233            Self::IfcStructuralMember => Some(Self::IfcStructuralItem),
8234            Self::IfcStructuralPlanarAction => Some(Self::IfcStructuralSurfaceAction),
8235            Self::IfcStructuralPointAction => Some(Self::IfcStructuralAction),
8236            Self::IfcStructuralPointConnection => Some(Self::IfcStructuralConnection),
8237            Self::IfcStructuralPointReaction => Some(Self::IfcStructuralReaction),
8238            Self::IfcStructuralReaction => Some(Self::IfcStructuralActivity),
8239            Self::IfcStructuralResultGroup => Some(Self::IfcGroup),
8240            Self::IfcStructuralSurfaceAction => Some(Self::IfcStructuralAction),
8241            Self::IfcStructuralSurfaceConnection => Some(Self::IfcStructuralConnection),
8242            Self::IfcStructuralSurfaceMember => Some(Self::IfcStructuralMember),
8243            Self::IfcStructuralSurfaceMemberVarying => Some(Self::IfcStructuralSurfaceMember),
8244            Self::IfcStructuralSurfaceReaction => Some(Self::IfcStructuralReaction),
8245            Self::IfcStyleModel => Some(Self::IfcRepresentation),
8246            Self::IfcStyledItem => Some(Self::IfcRepresentationItem),
8247            Self::IfcStyledRepresentation => Some(Self::IfcStyleModel),
8248            Self::IfcSubContractResource => Some(Self::IfcConstructionResource),
8249            Self::IfcSubContractResourceType => Some(Self::IfcConstructionResourceType),
8250            Self::IfcSubedge => Some(Self::IfcEdge),
8251            Self::IfcSurface => Some(Self::IfcGeometricRepresentationItem),
8252            Self::IfcSurfaceCurve => Some(Self::IfcCurve),
8253            Self::IfcSurfaceCurveSweptAreaSolid => Some(Self::IfcDirectrixCurveSweptAreaSolid),
8254            Self::IfcSurfaceFeature => Some(Self::IfcFeatureElement),
8255            Self::IfcSurfaceOfLinearExtrusion => Some(Self::IfcSweptSurface),
8256            Self::IfcSurfaceOfRevolution => Some(Self::IfcSweptSurface),
8257            Self::IfcSurfaceReinforcementArea => Some(Self::IfcStructuralLoadOrResult),
8258            Self::IfcSurfaceStyle => Some(Self::IfcPresentationStyle),
8259            Self::IfcSurfaceStyleLighting => Some(Self::IfcPresentationItem),
8260            Self::IfcSurfaceStyleRefraction => Some(Self::IfcPresentationItem),
8261            Self::IfcSurfaceStyleRendering => Some(Self::IfcSurfaceStyleShading),
8262            Self::IfcSurfaceStyleShading => Some(Self::IfcPresentationItem),
8263            Self::IfcSurfaceStyleWithTextures => Some(Self::IfcPresentationItem),
8264            Self::IfcSurfaceTexture => Some(Self::IfcPresentationItem),
8265            Self::IfcSweptAreaSolid => Some(Self::IfcSolidModel),
8266            Self::IfcSweptDiskSolid => Some(Self::IfcSolidModel),
8267            Self::IfcSweptDiskSolidPolygonal => Some(Self::IfcSweptDiskSolid),
8268            Self::IfcSweptSurface => Some(Self::IfcSurface),
8269            Self::IfcSwitchingDevice => Some(Self::IfcFlowController),
8270            Self::IfcSwitchingDeviceType => Some(Self::IfcFlowControllerType),
8271            Self::IfcSystem => Some(Self::IfcGroup),
8272            Self::IfcSystemFurnitureElement => Some(Self::IfcFurnishingElement),
8273            Self::IfcSystemFurnitureElementType => Some(Self::IfcFurnishingElementType),
8274            Self::IfcTShapeProfileDef => Some(Self::IfcParameterizedProfileDef),
8275            Self::IfcTank => Some(Self::IfcFlowStorageDevice),
8276            Self::IfcTankType => Some(Self::IfcFlowStorageDeviceType),
8277            Self::IfcTask => Some(Self::IfcProcess),
8278            Self::IfcTaskTime => Some(Self::IfcSchedulingTime),
8279            Self::IfcTaskTimeRecurring => Some(Self::IfcTaskTime),
8280            Self::IfcTaskType => Some(Self::IfcTypeProcess),
8281            Self::IfcTelecomAddress => Some(Self::IfcAddress),
8282            Self::IfcTendon => Some(Self::IfcReinforcingElement),
8283            Self::IfcTendonAnchor => Some(Self::IfcReinforcingElement),
8284            Self::IfcTendonAnchorType => Some(Self::IfcReinforcingElementType),
8285            Self::IfcTendonConduit => Some(Self::IfcReinforcingElement),
8286            Self::IfcTendonConduitType => Some(Self::IfcReinforcingElementType),
8287            Self::IfcTendonType => Some(Self::IfcReinforcingElementType),
8288            Self::IfcTessellatedFaceSet => Some(Self::IfcTessellatedItem),
8289            Self::IfcTessellatedItem => Some(Self::IfcGeometricRepresentationItem),
8290            Self::IfcTextLiteral => Some(Self::IfcGeometricRepresentationItem),
8291            Self::IfcTextLiteralWithExtent => Some(Self::IfcTextLiteral),
8292            Self::IfcTextStyle => Some(Self::IfcPresentationStyle),
8293            Self::IfcTextStyleFontModel => Some(Self::IfcPreDefinedTextFont),
8294            Self::IfcTextStyleForDefinedFont => Some(Self::IfcPresentationItem),
8295            Self::IfcTextStyleTextModel => Some(Self::IfcPresentationItem),
8296            Self::IfcTextureCoordinate => Some(Self::IfcPresentationItem),
8297            Self::IfcTextureCoordinateGenerator => Some(Self::IfcTextureCoordinate),
8298            Self::IfcTextureCoordinateIndicesWithVoids => Some(Self::IfcTextureCoordinateIndices),
8299            Self::IfcTextureMap => Some(Self::IfcTextureCoordinate),
8300            Self::IfcTextureVertex => Some(Self::IfcPresentationItem),
8301            Self::IfcTextureVertexList => Some(Self::IfcPresentationItem),
8302            Self::IfcThirdOrderPolynomialSpiral => Some(Self::IfcSpiral),
8303            Self::IfcTopologicalRepresentationItem => Some(Self::IfcRepresentationItem),
8304            Self::IfcTopologyRepresentation => Some(Self::IfcShapeModel),
8305            Self::IfcToroidalSurface => Some(Self::IfcElementarySurface),
8306            Self::IfcTrackElement => Some(Self::IfcBuiltElement),
8307            Self::IfcTrackElementType => Some(Self::IfcBuiltElementType),
8308            Self::IfcTransformer => Some(Self::IfcEnergyConversionDevice),
8309            Self::IfcTransformerType => Some(Self::IfcEnergyConversionDeviceType),
8310            Self::IfcTransportElement => Some(Self::IfcTransportationDevice),
8311            Self::IfcTransportElementType => Some(Self::IfcTransportationDeviceType),
8312            Self::IfcTransportationDevice => Some(Self::IfcElement),
8313            Self::IfcTransportationDeviceType => Some(Self::IfcElementType),
8314            Self::IfcTrapeziumProfileDef => Some(Self::IfcParameterizedProfileDef),
8315            Self::IfcTriangulatedFaceSet => Some(Self::IfcTessellatedFaceSet),
8316            Self::IfcTriangulatedIrregularNetwork => Some(Self::IfcTriangulatedFaceSet),
8317            Self::IfcTrimmedCurve => Some(Self::IfcBoundedCurve),
8318            Self::IfcTubeBundle => Some(Self::IfcEnergyConversionDevice),
8319            Self::IfcTubeBundleType => Some(Self::IfcEnergyConversionDeviceType),
8320            Self::IfcTypeObject => Some(Self::IfcObjectDefinition),
8321            Self::IfcTypeProcess => Some(Self::IfcTypeObject),
8322            Self::IfcTypeProduct => Some(Self::IfcTypeObject),
8323            Self::IfcTypeResource => Some(Self::IfcTypeObject),
8324            Self::IfcUShapeProfileDef => Some(Self::IfcParameterizedProfileDef),
8325            Self::IfcUnitaryControlElement => Some(Self::IfcDistributionControlElement),
8326            Self::IfcUnitaryControlElementType => Some(Self::IfcDistributionControlElementType),
8327            Self::IfcUnitaryEquipment => Some(Self::IfcEnergyConversionDevice),
8328            Self::IfcUnitaryEquipmentType => Some(Self::IfcEnergyConversionDeviceType),
8329            Self::IfcValve => Some(Self::IfcFlowController),
8330            Self::IfcValveType => Some(Self::IfcFlowControllerType),
8331            Self::IfcVector => Some(Self::IfcGeometricRepresentationItem),
8332            Self::IfcVehicle => Some(Self::IfcTransportationDevice),
8333            Self::IfcVehicleType => Some(Self::IfcTransportationDeviceType),
8334            Self::IfcVertex => Some(Self::IfcTopologicalRepresentationItem),
8335            Self::IfcVertexLoop => Some(Self::IfcLoop),
8336            Self::IfcVertexPoint => Some(Self::IfcVertex),
8337            Self::IfcVibrationDamper => Some(Self::IfcElementComponent),
8338            Self::IfcVibrationDamperType => Some(Self::IfcElementComponentType),
8339            Self::IfcVibrationIsolator => Some(Self::IfcElementComponent),
8340            Self::IfcVibrationIsolatorType => Some(Self::IfcElementComponentType),
8341            Self::IfcVirtualElement => Some(Self::IfcElement),
8342            Self::IfcVoidingFeature => Some(Self::IfcFeatureElementSubtraction),
8343            Self::IfcWall => Some(Self::IfcBuiltElement),
8344            Self::IfcWallStandardCase => Some(Self::IfcWall),
8345            Self::IfcWallType => Some(Self::IfcBuiltElementType),
8346            Self::IfcWasteTerminal => Some(Self::IfcFlowTerminal),
8347            Self::IfcWasteTerminalType => Some(Self::IfcFlowTerminalType),
8348            Self::IfcWindow => Some(Self::IfcBuiltElement),
8349            Self::IfcWindowLiningProperties => Some(Self::IfcPreDefinedPropertySet),
8350            Self::IfcWindowPanelProperties => Some(Self::IfcPreDefinedPropertySet),
8351            Self::IfcWindowType => Some(Self::IfcBuiltElementType),
8352            Self::IfcWorkCalendar => Some(Self::IfcControl),
8353            Self::IfcWorkControl => Some(Self::IfcControl),
8354            Self::IfcWorkPlan => Some(Self::IfcWorkControl),
8355            Self::IfcWorkSchedule => Some(Self::IfcWorkControl),
8356            Self::IfcWorkTime => Some(Self::IfcSchedulingTime),
8357            Self::IfcZShapeProfileDef => Some(Self::IfcParameterizedProfileDef),
8358            Self::IfcZone => Some(Self::IfcSystem),
8359            Self::IfcBeamStandardCase => Some(Self::IfcBeam),
8360            Self::IfcBuildingElement => Some(Self::IfcElement),
8361            Self::IfcBuildingElementType => Some(Self::IfcElementType),
8362            Self::IfcColumnStandardCase => Some(Self::IfcColumn),
8363            Self::IfcDoorStandardCase => Some(Self::IfcDoor),
8364            Self::IfcDoorStyle => Some(Self::IfcTypeProduct),
8365            Self::IfcMemberStandardCase => Some(Self::IfcMember),
8366            Self::IfcOpeningStandardCase => Some(Self::IfcOpeningElement),
8367            Self::IfcPlateStandardCase => Some(Self::IfcPlate),
8368            Self::IfcProxy => Some(Self::IfcProduct),
8369            Self::IfcSlabElementedCase => Some(Self::IfcSlab),
8370            Self::IfcSlabStandardCase => Some(Self::IfcSlab),
8371            Self::IfcWallElementedCase => Some(Self::IfcWall),
8372            Self::IfcWindowStandardCase => Some(Self::IfcWindow),
8373            Self::IfcWindowStyle => Some(Self::IfcTypeProduct),
8374            Self::Ifc2DCompositeCurve => Some(Self::IfcCompositeCurve),
8375            Self::IfcAngularDimension => Some(Self::IfcDimensionCurveDirectedCallout),
8376            Self::IfcAnnotationCurveOccurrence => Some(Self::IfcAnnotationOccurrence),
8377            Self::IfcAnnotationFillAreaOccurrence => Some(Self::IfcAnnotationOccurrence),
8378            Self::IfcAnnotationOccurrence => Some(Self::IfcStyledItem),
8379            Self::IfcAnnotationSurface => Some(Self::IfcGeometricRepresentationItem),
8380            Self::IfcAnnotationSurfaceOccurrence => Some(Self::IfcAnnotationOccurrence),
8381            Self::IfcAnnotationSymbolOccurrence => Some(Self::IfcAnnotationOccurrence),
8382            Self::IfcAnnotationTextOccurrence => Some(Self::IfcAnnotationOccurrence),
8383            Self::IfcBezierCurve => Some(Self::IfcBSplineCurve),
8384            Self::IfcBuildingElementComponent => Some(Self::IfcBuildingElement),
8385            Self::IfcChamferEdgeFeature => Some(Self::IfcEdgeFeature),
8386            Self::IfcCondition => Some(Self::IfcGroup),
8387            Self::IfcConditionCriterion => Some(Self::IfcControl),
8388            Self::IfcConnectionPortGeometry => Some(Self::IfcConnectionGeometry),
8389            Self::IfcCraneRailAShapeProfileDef => Some(Self::IfcParameterizedProfileDef),
8390            Self::IfcCraneRailFShapeProfileDef => Some(Self::IfcParameterizedProfileDef),
8391            Self::IfcDefinedSymbol => Some(Self::IfcGeometricRepresentationItem),
8392            Self::IfcDiameterDimension => Some(Self::IfcDimensionCurveDirectedCallout),
8393            Self::IfcDimensionCalloutRelationship => Some(Self::IfcDraughtingCalloutRelationship),
8394            Self::IfcDimensionCurve => Some(Self::IfcAnnotationCurveOccurrence),
8395            Self::IfcDimensionCurveDirectedCallout => Some(Self::IfcDraughtingCallout),
8396            Self::IfcDimensionCurveTerminator => Some(Self::IfcTerminatorSymbol),
8397            Self::IfcDimensionPair => Some(Self::IfcDraughtingCalloutRelationship),
8398            Self::IfcDraughtingCallout => Some(Self::IfcGeometricRepresentationItem),
8399            Self::IfcDraughtingPreDefinedTextFont => Some(Self::IfcPreDefinedTextFont),
8400            Self::IfcEdgeFeature => Some(Self::IfcFeatureElementSubtraction),
8401            Self::IfcElectricDistributionPoint => Some(Self::IfcFlowController),
8402            Self::IfcElectricHeaterType => Some(Self::IfcFlowTerminalType),
8403            Self::IfcElectricalBaseProperties => Some(Self::IfcEnergyProperties),
8404            Self::IfcElectricalCircuit => Some(Self::IfcSystem),
8405            Self::IfcElectricalElement => Some(Self::IfcElement),
8406            Self::IfcEnergyProperties => Some(Self::IfcPropertySetDefinition),
8407            Self::IfcEnvironmentalImpactValue => Some(Self::IfcAppliedValue),
8408            Self::IfcEquipmentElement => Some(Self::IfcElement),
8409            Self::IfcEquipmentStandard => Some(Self::IfcControl),
8410            Self::IfcExtendedMaterialProperties => Some(Self::IfcMaterialProperties),
8411            Self::IfcExternallyDefinedSymbol => Some(Self::IfcExternalReference),
8412            Self::IfcFillAreaStyleTileSymbolWithStyle => Some(Self::IfcGeometricRepresentationItem),
8413            Self::IfcFluidFlowProperties => Some(Self::IfcPropertySetDefinition),
8414            Self::IfcFuelProperties => Some(Self::IfcMaterialProperties),
8415            Self::IfcFurnitureStandard => Some(Self::IfcControl),
8416            Self::IfcGasTerminalType => Some(Self::IfcFlowTerminalType),
8417            Self::IfcGeneralMaterialProperties => Some(Self::IfcMaterialProperties),
8418            Self::IfcGeneralProfileProperties => Some(Self::IfcProfileProperties),
8419            Self::IfcHygroscopicMaterialProperties => Some(Self::IfcMaterialProperties),
8420            Self::IfcLinearDimension => Some(Self::IfcDimensionCurveDirectedCallout),
8421            Self::IfcMechanicalConcreteMaterialProperties => {
8422                Some(Self::IfcMechanicalMaterialProperties)
8423            }
8424            Self::IfcMechanicalMaterialProperties => Some(Self::IfcMaterialProperties),
8425            Self::IfcMechanicalSteelMaterialProperties => {
8426                Some(Self::IfcMechanicalMaterialProperties)
8427            }
8428            Self::IfcMove => Some(Self::IfcTask),
8429            Self::IfcOneDirectionRepeatFactor => Some(Self::IfcGeometricRepresentationItem),
8430            Self::IfcOpticalMaterialProperties => Some(Self::IfcMaterialProperties),
8431            Self::IfcOrderAction => Some(Self::IfcTask),
8432            Self::IfcPreDefinedDimensionSymbol => Some(Self::IfcPreDefinedSymbol),
8433            Self::IfcPreDefinedPointMarkerSymbol => Some(Self::IfcPreDefinedSymbol),
8434            Self::IfcPreDefinedSymbol => Some(Self::IfcPreDefinedItem),
8435            Self::IfcPreDefinedTerminatorSymbol => Some(Self::IfcPreDefinedSymbol),
8436            Self::IfcProductsOfCombustionProperties => Some(Self::IfcMaterialProperties),
8437            Self::IfcProjectOrderRecord => Some(Self::IfcControl),
8438            Self::IfcProjectionCurve => Some(Self::IfcAnnotationCurveOccurrence),
8439            Self::IfcRadiusDimension => Some(Self::IfcDimensionCurveDirectedCallout),
8440            Self::IfcRationalBezierCurve => Some(Self::IfcBezierCurve),
8441            Self::IfcRelAssignsTasks => Some(Self::IfcRelAssignsToControl),
8442            Self::IfcRelAssignsToProjectOrder => Some(Self::IfcRelAssignsToControl),
8443            Self::IfcRelAssociatesAppliedValue => Some(Self::IfcRelAssociates),
8444            Self::IfcRelAssociatesProfileProperties => Some(Self::IfcRelAssociates),
8445            Self::IfcRelConnectsStructuralElement => Some(Self::IfcRelConnects),
8446            Self::IfcRelInteractionRequirements => Some(Self::IfcRelConnects),
8447            Self::IfcRelOccupiesSpaces => Some(Self::IfcRelAssignsToActor),
8448            Self::IfcRelOverridesProperties => Some(Self::IfcRelDefinesByProperties),
8449            Self::IfcRelSchedulesCostItems => Some(Self::IfcRelAssignsToControl),
8450            Self::IfcRibPlateProfileProperties => Some(Self::IfcProfileProperties),
8451            Self::IfcRoundedEdgeFeature => Some(Self::IfcEdgeFeature),
8452            Self::IfcScheduleTimeControl => Some(Self::IfcControl),
8453            Self::IfcServiceLife => Some(Self::IfcControl),
8454            Self::IfcServiceLifeFactor => Some(Self::IfcPropertySetDefinition),
8455            Self::IfcSoundProperties => Some(Self::IfcPropertySetDefinition),
8456            Self::IfcSoundValue => Some(Self::IfcPropertySetDefinition),
8457            Self::IfcSpaceProgram => Some(Self::IfcControl),
8458            Self::IfcSpaceThermalLoadProperties => Some(Self::IfcPropertySetDefinition),
8459            Self::IfcStructuralLinearActionVarying => Some(Self::IfcStructuralLinearAction),
8460            Self::IfcStructuralPlanarActionVarying => Some(Self::IfcStructuralPlanarAction),
8461            Self::IfcStructuralProfileProperties => Some(Self::IfcGeneralProfileProperties),
8462            Self::IfcStructuralSteelProfileProperties => Some(Self::IfcStructuralProfileProperties),
8463            Self::IfcStructuredDimensionCallout => Some(Self::IfcDraughtingCallout),
8464            Self::IfcSymbolStyle => Some(Self::IfcPresentationStyle),
8465            Self::IfcTerminatorSymbol => Some(Self::IfcAnnotationSymbolOccurrence),
8466            Self::IfcThermalMaterialProperties => Some(Self::IfcMaterialProperties),
8467            Self::IfcTimeSeriesSchedule => Some(Self::IfcControl),
8468            Self::IfcTwoDirectionRepeatFactor => Some(Self::IfcOneDirectionRepeatFactor),
8469            Self::IfcWaterProperties => Some(Self::IfcMaterialProperties),
8470            Self::IfcCircularArcSegment2D => Some(Self::IfcCurveSegment2D),
8471            Self::IfcCurveSegment2D => Some(Self::IfcBoundedCurve),
8472            Self::IfcDistanceExpression => Some(Self::IfcGeometricRepresentationItem),
8473            Self::IfcLineSegment2D => Some(Self::IfcCurveSegment2D),
8474            Self::IfcOrientationExpression => Some(Self::IfcGeometricRepresentationItem),
8475            Self::IfcTransitionCurveSegment2D => Some(Self::IfcCurveSegment2D),
8476            Self::IfcAlignment2DHorizontal => Some(Self::IfcGeometricRepresentationItem),
8477            Self::IfcAlignment2DHorizontalSegment => Some(Self::IfcAlignment2DSegment),
8478            Self::IfcAlignment2DSegment => Some(Self::IfcGeometricRepresentationItem),
8479            Self::IfcAlignment2DVerSegCircularArc => Some(Self::IfcAlignment2DVerticalSegment),
8480            Self::IfcAlignment2DVerticalSegment => Some(Self::IfcAlignment2DSegment),
8481            Self::IfcAlignment2DVerSegLine => Some(Self::IfcAlignment2DVerticalSegment),
8482            Self::IfcAlignment2DVerSegParabolicArc => Some(Self::IfcAlignment2DVerticalSegment),
8483            Self::IfcAlignment2DVertical => Some(Self::IfcGeometricRepresentationItem),
8484            Self::IfcAlignmentCurve => Some(Self::IfcBoundedCurve),
8485            _ => None,
8486        }
8487    }
8488
8489    /// Check if this type is a subtype of another
8490    pub fn is_subtype_of(&self, parent: Self) -> bool {
8491        let mut current = Some(self.clone());
8492        while let Some(t) = current {
8493            if t == parent {
8494                return true;
8495            }
8496            current = t.parent();
8497        }
8498        false
8499    }
8500
8501    /// Check if this is an abstract type
8502    #[allow(clippy::match_like_matches_macro)]
8503    pub fn is_abstract(&self) -> bool {
8504        match self {
8505            Self::IfcAddress => true,
8506            Self::IfcAlignmentParameterSegment => true,
8507            Self::IfcBSplineCurve => true,
8508            Self::IfcBSplineSurface => true,
8509            Self::IfcBoundaryCondition => true,
8510            Self::IfcBoundedCurve => true,
8511            Self::IfcBoundedSurface => true,
8512            Self::IfcCartesianPointList => true,
8513            Self::IfcCartesianTransformationOperator => true,
8514            Self::IfcColourSpecification => true,
8515            Self::IfcConic => true,
8516            Self::IfcConnectionGeometry => true,
8517            Self::IfcConstraint => true,
8518            Self::IfcConstructionResource => true,
8519            Self::IfcConstructionResourceType => true,
8520            Self::IfcContext => true,
8521            Self::IfcControl => true,
8522            Self::IfcCoordinateOperation => true,
8523            Self::IfcCoordinateReferenceSystem => true,
8524            Self::IfcCsgPrimitive3D => true,
8525            Self::IfcCurve => true,
8526            Self::IfcDirectrixCurveSweptAreaSolid => true,
8527            Self::IfcDistributionControlElementType => true,
8528            Self::IfcDistributionFlowElementType => true,
8529            Self::IfcElement => true,
8530            Self::IfcElementComponent => true,
8531            Self::IfcElementComponentType => true,
8532            Self::IfcElementType => true,
8533            Self::IfcElementarySurface => true,
8534            Self::IfcEnergyConversionDeviceType => true,
8535            Self::IfcExtendedProperties => true,
8536            Self::IfcExternalInformation => true,
8537            Self::IfcExternalReference => true,
8538            Self::IfcExternalSpatialStructureElement => true,
8539            Self::IfcFacilityPart => true,
8540            Self::IfcFeatureElement => true,
8541            Self::IfcFeatureElementAddition => true,
8542            Self::IfcFeatureElementSubtraction => true,
8543            Self::IfcFlowControllerType => true,
8544            Self::IfcFlowFittingType => true,
8545            Self::IfcFlowMovingDeviceType => true,
8546            Self::IfcFlowSegmentType => true,
8547            Self::IfcFlowStorageDeviceType => true,
8548            Self::IfcFlowTerminalType => true,
8549            Self::IfcFlowTreatmentDeviceType => true,
8550            Self::IfcGeometricRepresentationItem => true,
8551            Self::IfcGeotechnicalAssembly => true,
8552            Self::IfcGeotechnicalElement => true,
8553            Self::IfcIndexedTextureMap => true,
8554            Self::IfcLightSource => true,
8555            Self::IfcManifoldSolidBrep => true,
8556            Self::IfcMaterialDefinition => true,
8557            Self::IfcMaterialUsageDefinition => true,
8558            Self::IfcNamedUnit => true,
8559            Self::IfcObject => true,
8560            Self::IfcObjectDefinition => true,
8561            Self::IfcObjectPlacement => true,
8562            Self::IfcOffsetCurve => true,
8563            Self::IfcParameterizedProfileDef => true,
8564            Self::IfcPhysicalQuantity => true,
8565            Self::IfcPhysicalSimpleQuantity => true,
8566            Self::IfcPlacement => true,
8567            Self::IfcPoint => true,
8568            Self::IfcPort => true,
8569            Self::IfcPositioningElement => true,
8570            Self::IfcPreDefinedColour => true,
8571            Self::IfcPreDefinedCurveFont => true,
8572            Self::IfcPreDefinedItem => true,
8573            Self::IfcPreDefinedProperties => true,
8574            Self::IfcPreDefinedPropertySet => true,
8575            Self::IfcPreDefinedTextFont => true,
8576            Self::IfcPresentationItem => true,
8577            Self::IfcPresentationStyle => true,
8578            Self::IfcProcess => true,
8579            Self::IfcProduct => true,
8580            Self::IfcProductRepresentation => true,
8581            Self::IfcProperty => true,
8582            Self::IfcPropertyAbstraction => true,
8583            Self::IfcPropertyDefinition => true,
8584            Self::IfcPropertySetDefinition => true,
8585            Self::IfcPropertyTemplate => true,
8586            Self::IfcPropertyTemplateDefinition => true,
8587            Self::IfcQuantitySet => true,
8588            Self::IfcReinforcingElement => true,
8589            Self::IfcReinforcingElementType => true,
8590            Self::IfcRelAssigns => true,
8591            Self::IfcRelAssociates => true,
8592            Self::IfcRelConnects => true,
8593            Self::IfcRelDecomposes => true,
8594            Self::IfcRelDefines => true,
8595            Self::IfcRelationship => true,
8596            Self::IfcRepresentation => true,
8597            Self::IfcRepresentationContext => true,
8598            Self::IfcRepresentationItem => true,
8599            Self::IfcResource => true,
8600            Self::IfcResourceLevelRelationship => true,
8601            Self::IfcRoot => true,
8602            Self::IfcSchedulingTime => true,
8603            Self::IfcSectionedSolid => true,
8604            Self::IfcSegment => true,
8605            Self::IfcShapeModel => true,
8606            Self::IfcSimpleProperty => true,
8607            Self::IfcSolidModel => true,
8608            Self::IfcSpatialElement => true,
8609            Self::IfcSpatialElementType => true,
8610            Self::IfcSpatialStructureElement => true,
8611            Self::IfcSpatialStructureElementType => true,
8612            Self::IfcSpiral => true,
8613            Self::IfcStructuralAction => true,
8614            Self::IfcStructuralActivity => true,
8615            Self::IfcStructuralConnection => true,
8616            Self::IfcStructuralConnectionCondition => true,
8617            Self::IfcStructuralItem => true,
8618            Self::IfcStructuralLoad => true,
8619            Self::IfcStructuralLoadOrResult => true,
8620            Self::IfcStructuralLoadStatic => true,
8621            Self::IfcStructuralMember => true,
8622            Self::IfcStructuralReaction => true,
8623            Self::IfcStyleModel => true,
8624            Self::IfcSurface => true,
8625            Self::IfcSurfaceTexture => true,
8626            Self::IfcSweptAreaSolid => true,
8627            Self::IfcSweptSurface => true,
8628            Self::IfcTessellatedFaceSet => true,
8629            Self::IfcTessellatedItem => true,
8630            Self::IfcTextureCoordinate => true,
8631            Self::IfcTimeSeries => true,
8632            Self::IfcTopologicalRepresentationItem => true,
8633            Self::IfcTransportationDevice => true,
8634            Self::IfcTransportationDeviceType => true,
8635            Self::IfcTypeProcess => true,
8636            Self::IfcTypeResource => true,
8637            Self::IfcWorkControl => true,
8638            Self::IfcBuildingElement => true,
8639            Self::IfcBuildingElementType => true,
8640            Self::IfcAnnotationOccurrence => true,
8641            Self::IfcBuildingElementComponent => true,
8642            Self::IfcEdgeFeature => true,
8643            Self::IfcPreDefinedSymbol => true,
8644            Self::IfcCurveSegment2D => true,
8645            Self::IfcAlignment2DSegment => true,
8646            Self::IfcAlignment2DVerticalSegment => true,
8647            _ => false,
8648        }
8649    }
8650
8651    /// This entity's attributes, in STEP declaration order.
8652    ///
8653    /// Supertype attributes come FIRST, which is what makes the position here
8654    /// the same position DecodedEntity::get indexes. An entity's own
8655    /// attribute list alone would be wrong about every index on every subtype.
8656    ///
8657    /// These names are this schema's (IFC4X3_DEV_923b0514). An entity whose
8658    /// attribute list grew between IFC releases has a different length, and
8659    /// therefore possibly different indices, in a file that declares an older
8660    /// schema. Check the file's FILE_SCHEMA before treating an index from here
8661    /// as authoritative for it.
8662    pub fn attribute_names(&self) -> &'static [&'static str] {
8663        match self {
8664            Self::IfcActionRequest => &[
8665                "GlobalId",
8666                "OwnerHistory",
8667                "Name",
8668                "Description",
8669                "ObjectType",
8670                "Identification",
8671                "PredefinedType",
8672                "Status",
8673                "LongDescription",
8674            ],
8675            Self::IfcActor => &[
8676                "GlobalId",
8677                "OwnerHistory",
8678                "Name",
8679                "Description",
8680                "ObjectType",
8681                "TheActor",
8682            ],
8683            Self::IfcActorRole => &["Role", "UserDefinedRole", "Description"],
8684            Self::IfcActuator => &[
8685                "GlobalId",
8686                "OwnerHistory",
8687                "Name",
8688                "Description",
8689                "ObjectType",
8690                "ObjectPlacement",
8691                "Representation",
8692                "Tag",
8693                "PredefinedType",
8694            ],
8695            Self::IfcActuatorType => &[
8696                "GlobalId",
8697                "OwnerHistory",
8698                "Name",
8699                "Description",
8700                "ApplicableOccurrence",
8701                "HasPropertySets",
8702                "RepresentationMaps",
8703                "Tag",
8704                "ElementType",
8705                "PredefinedType",
8706            ],
8707            Self::IfcAddress => &["Purpose", "Description", "UserDefinedPurpose"],
8708            Self::IfcAdvancedBrep => &["Outer"],
8709            Self::IfcAdvancedBrepWithVoids => &["Outer", "Voids"],
8710            Self::IfcAdvancedFace => &["Bounds", "FaceSurface", "SameSense"],
8711            Self::IfcAirTerminal => &[
8712                "GlobalId",
8713                "OwnerHistory",
8714                "Name",
8715                "Description",
8716                "ObjectType",
8717                "ObjectPlacement",
8718                "Representation",
8719                "Tag",
8720                "PredefinedType",
8721            ],
8722            Self::IfcAirTerminalBox => &[
8723                "GlobalId",
8724                "OwnerHistory",
8725                "Name",
8726                "Description",
8727                "ObjectType",
8728                "ObjectPlacement",
8729                "Representation",
8730                "Tag",
8731                "PredefinedType",
8732            ],
8733            Self::IfcAirTerminalBoxType => &[
8734                "GlobalId",
8735                "OwnerHistory",
8736                "Name",
8737                "Description",
8738                "ApplicableOccurrence",
8739                "HasPropertySets",
8740                "RepresentationMaps",
8741                "Tag",
8742                "ElementType",
8743                "PredefinedType",
8744            ],
8745            Self::IfcAirTerminalType => &[
8746                "GlobalId",
8747                "OwnerHistory",
8748                "Name",
8749                "Description",
8750                "ApplicableOccurrence",
8751                "HasPropertySets",
8752                "RepresentationMaps",
8753                "Tag",
8754                "ElementType",
8755                "PredefinedType",
8756            ],
8757            Self::IfcAirToAirHeatRecovery => &[
8758                "GlobalId",
8759                "OwnerHistory",
8760                "Name",
8761                "Description",
8762                "ObjectType",
8763                "ObjectPlacement",
8764                "Representation",
8765                "Tag",
8766                "PredefinedType",
8767            ],
8768            Self::IfcAirToAirHeatRecoveryType => &[
8769                "GlobalId",
8770                "OwnerHistory",
8771                "Name",
8772                "Description",
8773                "ApplicableOccurrence",
8774                "HasPropertySets",
8775                "RepresentationMaps",
8776                "Tag",
8777                "ElementType",
8778                "PredefinedType",
8779            ],
8780            Self::IfcAlarm => &[
8781                "GlobalId",
8782                "OwnerHistory",
8783                "Name",
8784                "Description",
8785                "ObjectType",
8786                "ObjectPlacement",
8787                "Representation",
8788                "Tag",
8789                "PredefinedType",
8790            ],
8791            Self::IfcAlarmType => &[
8792                "GlobalId",
8793                "OwnerHistory",
8794                "Name",
8795                "Description",
8796                "ApplicableOccurrence",
8797                "HasPropertySets",
8798                "RepresentationMaps",
8799                "Tag",
8800                "ElementType",
8801                "PredefinedType",
8802            ],
8803            Self::IfcAlignment => &[
8804                "GlobalId",
8805                "OwnerHistory",
8806                "Name",
8807                "Description",
8808                "ObjectType",
8809                "ObjectPlacement",
8810                "Representation",
8811                "PredefinedType",
8812            ],
8813            Self::IfcAlignmentCant => &[
8814                "GlobalId",
8815                "OwnerHistory",
8816                "Name",
8817                "Description",
8818                "ObjectType",
8819                "ObjectPlacement",
8820                "Representation",
8821                "RailHeadDistance",
8822            ],
8823            Self::IfcAlignmentCantSegment => &[
8824                "StartTag",
8825                "EndTag",
8826                "StartDistAlong",
8827                "HorizontalLength",
8828                "StartCantLeft",
8829                "EndCantLeft",
8830                "StartCantRight",
8831                "EndCantRight",
8832                "PredefinedType",
8833            ],
8834            Self::IfcAlignmentHorizontal => &[
8835                "GlobalId",
8836                "OwnerHistory",
8837                "Name",
8838                "Description",
8839                "ObjectType",
8840                "ObjectPlacement",
8841                "Representation",
8842            ],
8843            Self::IfcAlignmentHorizontalSegment => &[
8844                "StartTag",
8845                "EndTag",
8846                "StartPoint",
8847                "StartDirection",
8848                "StartRadiusOfCurvature",
8849                "EndRadiusOfCurvature",
8850                "SegmentLength",
8851                "GravityCenterLineHeight",
8852                "PredefinedType",
8853            ],
8854            Self::IfcAlignmentParameterSegment => &["StartTag", "EndTag"],
8855            Self::IfcAlignmentSegment => &[
8856                "GlobalId",
8857                "OwnerHistory",
8858                "Name",
8859                "Description",
8860                "ObjectType",
8861                "ObjectPlacement",
8862                "Representation",
8863                "DesignParameters",
8864            ],
8865            Self::IfcAlignmentVertical => &[
8866                "GlobalId",
8867                "OwnerHistory",
8868                "Name",
8869                "Description",
8870                "ObjectType",
8871                "ObjectPlacement",
8872                "Representation",
8873            ],
8874            Self::IfcAlignmentVerticalSegment => &[
8875                "StartTag",
8876                "EndTag",
8877                "StartDistAlong",
8878                "HorizontalLength",
8879                "StartHeight",
8880                "StartGradient",
8881                "EndGradient",
8882                "RadiusOfCurvature",
8883                "PredefinedType",
8884            ],
8885            Self::IfcAnnotation => &[
8886                "GlobalId",
8887                "OwnerHistory",
8888                "Name",
8889                "Description",
8890                "ObjectType",
8891                "ObjectPlacement",
8892                "Representation",
8893                "PredefinedType",
8894            ],
8895            Self::IfcAnnotationFillArea => &["OuterBoundary", "InnerBoundaries"],
8896            Self::IfcApplication => &[
8897                "ApplicationDeveloper",
8898                "Version",
8899                "ApplicationFullName",
8900                "ApplicationIdentifier",
8901            ],
8902            Self::IfcAppliedValue => &[
8903                "Name",
8904                "Description",
8905                "AppliedValue",
8906                "UnitBasis",
8907                "ApplicableDate",
8908                "FixedUntilDate",
8909                "Category",
8910                "Condition",
8911                "ArithmeticOperator",
8912                "Components",
8913            ],
8914            Self::IfcApproval => &[
8915                "Identifier",
8916                "Name",
8917                "Description",
8918                "TimeOfApproval",
8919                "Status",
8920                "Level",
8921                "Qualifier",
8922                "RequestingApproval",
8923                "GivingApproval",
8924            ],
8925            Self::IfcApprovalRelationship => &[
8926                "Name",
8927                "Description",
8928                "RelatingApproval",
8929                "RelatedApprovals",
8930            ],
8931            Self::IfcArbitraryClosedProfileDef => &["ProfileType", "ProfileName", "OuterCurve"],
8932            Self::IfcArbitraryOpenProfileDef => &["ProfileType", "ProfileName", "Curve"],
8933            Self::IfcArbitraryProfileDefWithVoids => {
8934                &["ProfileType", "ProfileName", "OuterCurve", "InnerCurves"]
8935            }
8936            Self::IfcAsset => &[
8937                "GlobalId",
8938                "OwnerHistory",
8939                "Name",
8940                "Description",
8941                "ObjectType",
8942                "Identification",
8943                "OriginalValue",
8944                "CurrentValue",
8945                "TotalReplacementCost",
8946                "Owner",
8947                "User",
8948                "ResponsiblePerson",
8949                "IncorporationDate",
8950                "DepreciatedValue",
8951            ],
8952            Self::IfcAsymmetricIShapeProfileDef => &[
8953                "ProfileType",
8954                "ProfileName",
8955                "Position",
8956                "BottomFlangeWidth",
8957                "OverallDepth",
8958                "WebThickness",
8959                "BottomFlangeThickness",
8960                "BottomFlangeFilletRadius",
8961                "TopFlangeWidth",
8962                "TopFlangeThickness",
8963                "TopFlangeFilletRadius",
8964                "BottomFlangeEdgeRadius",
8965                "BottomFlangeSlope",
8966                "TopFlangeEdgeRadius",
8967                "TopFlangeSlope",
8968            ],
8969            Self::IfcAudioVisualAppliance => &[
8970                "GlobalId",
8971                "OwnerHistory",
8972                "Name",
8973                "Description",
8974                "ObjectType",
8975                "ObjectPlacement",
8976                "Representation",
8977                "Tag",
8978                "PredefinedType",
8979            ],
8980            Self::IfcAudioVisualApplianceType => &[
8981                "GlobalId",
8982                "OwnerHistory",
8983                "Name",
8984                "Description",
8985                "ApplicableOccurrence",
8986                "HasPropertySets",
8987                "RepresentationMaps",
8988                "Tag",
8989                "ElementType",
8990                "PredefinedType",
8991            ],
8992            Self::IfcAxis1Placement => &["Location", "Axis"],
8993            Self::IfcAxis2Placement2D => &["Location", "RefDirection"],
8994            Self::IfcAxis2Placement3D => &["Location", "Axis", "RefDirection"],
8995            Self::IfcAxis2PlacementLinear => &["Location", "Axis", "RefDirection"],
8996            Self::IfcBSplineCurve => &[
8997                "Degree",
8998                "ControlPointsList",
8999                "CurveForm",
9000                "ClosedCurve",
9001                "SelfIntersect",
9002            ],
9003            Self::IfcBSplineCurveWithKnots => &[
9004                "Degree",
9005                "ControlPointsList",
9006                "CurveForm",
9007                "ClosedCurve",
9008                "SelfIntersect",
9009                "KnotMultiplicities",
9010                "Knots",
9011                "KnotSpec",
9012            ],
9013            Self::IfcBSplineSurface => &[
9014                "UDegree",
9015                "VDegree",
9016                "ControlPointsList",
9017                "SurfaceForm",
9018                "UClosed",
9019                "VClosed",
9020                "SelfIntersect",
9021            ],
9022            Self::IfcBSplineSurfaceWithKnots => &[
9023                "UDegree",
9024                "VDegree",
9025                "ControlPointsList",
9026                "SurfaceForm",
9027                "UClosed",
9028                "VClosed",
9029                "SelfIntersect",
9030                "UMultiplicities",
9031                "VMultiplicities",
9032                "UKnots",
9033                "VKnots",
9034                "KnotSpec",
9035            ],
9036            Self::IfcBeam => &[
9037                "GlobalId",
9038                "OwnerHistory",
9039                "Name",
9040                "Description",
9041                "ObjectType",
9042                "ObjectPlacement",
9043                "Representation",
9044                "Tag",
9045                "PredefinedType",
9046            ],
9047            Self::IfcBeamType => &[
9048                "GlobalId",
9049                "OwnerHistory",
9050                "Name",
9051                "Description",
9052                "ApplicableOccurrence",
9053                "HasPropertySets",
9054                "RepresentationMaps",
9055                "Tag",
9056                "ElementType",
9057                "PredefinedType",
9058            ],
9059            Self::IfcBearing => &[
9060                "GlobalId",
9061                "OwnerHistory",
9062                "Name",
9063                "Description",
9064                "ObjectType",
9065                "ObjectPlacement",
9066                "Representation",
9067                "Tag",
9068                "PredefinedType",
9069            ],
9070            Self::IfcBearingType => &[
9071                "GlobalId",
9072                "OwnerHistory",
9073                "Name",
9074                "Description",
9075                "ApplicableOccurrence",
9076                "HasPropertySets",
9077                "RepresentationMaps",
9078                "Tag",
9079                "ElementType",
9080                "PredefinedType",
9081            ],
9082            Self::IfcBlobTexture => &[
9083                "RepeatS",
9084                "RepeatT",
9085                "Mode",
9086                "TextureTransform",
9087                "Parameter",
9088                "RasterFormat",
9089                "RasterCode",
9090            ],
9091            Self::IfcBlock => &["Position", "XLength", "YLength", "ZLength"],
9092            Self::IfcBoiler => &[
9093                "GlobalId",
9094                "OwnerHistory",
9095                "Name",
9096                "Description",
9097                "ObjectType",
9098                "ObjectPlacement",
9099                "Representation",
9100                "Tag",
9101                "PredefinedType",
9102            ],
9103            Self::IfcBoilerType => &[
9104                "GlobalId",
9105                "OwnerHistory",
9106                "Name",
9107                "Description",
9108                "ApplicableOccurrence",
9109                "HasPropertySets",
9110                "RepresentationMaps",
9111                "Tag",
9112                "ElementType",
9113                "PredefinedType",
9114            ],
9115            Self::IfcBooleanClippingResult => &["Operator", "FirstOperand", "SecondOperand"],
9116            Self::IfcBooleanResult => &["Operator", "FirstOperand", "SecondOperand"],
9117            Self::IfcBorehole => &[
9118                "GlobalId",
9119                "OwnerHistory",
9120                "Name",
9121                "Description",
9122                "ObjectType",
9123                "ObjectPlacement",
9124                "Representation",
9125                "Tag",
9126            ],
9127            Self::IfcBoundaryCondition => &["Name"],
9128            Self::IfcBoundaryCurve => &["Segments", "SelfIntersect"],
9129            Self::IfcBoundaryEdgeCondition => &[
9130                "Name",
9131                "TranslationalStiffnessByLengthX",
9132                "TranslationalStiffnessByLengthY",
9133                "TranslationalStiffnessByLengthZ",
9134                "RotationalStiffnessByLengthX",
9135                "RotationalStiffnessByLengthY",
9136                "RotationalStiffnessByLengthZ",
9137            ],
9138            Self::IfcBoundaryFaceCondition => &[
9139                "Name",
9140                "TranslationalStiffnessByAreaX",
9141                "TranslationalStiffnessByAreaY",
9142                "TranslationalStiffnessByAreaZ",
9143            ],
9144            Self::IfcBoundaryNodeCondition => &[
9145                "Name",
9146                "TranslationalStiffnessX",
9147                "TranslationalStiffnessY",
9148                "TranslationalStiffnessZ",
9149                "RotationalStiffnessX",
9150                "RotationalStiffnessY",
9151                "RotationalStiffnessZ",
9152            ],
9153            Self::IfcBoundaryNodeConditionWarping => &[
9154                "Name",
9155                "TranslationalStiffnessX",
9156                "TranslationalStiffnessY",
9157                "TranslationalStiffnessZ",
9158                "RotationalStiffnessX",
9159                "RotationalStiffnessY",
9160                "RotationalStiffnessZ",
9161                "WarpingStiffness",
9162            ],
9163            Self::IfcBoundedCurve => &[],
9164            Self::IfcBoundedSurface => &[],
9165            Self::IfcBoundingBox => &["Corner", "XDim", "YDim", "ZDim"],
9166            Self::IfcBoxedHalfSpace => &["BaseSurface", "AgreementFlag", "Enclosure"],
9167            Self::IfcBridge => &[
9168                "GlobalId",
9169                "OwnerHistory",
9170                "Name",
9171                "Description",
9172                "ObjectType",
9173                "ObjectPlacement",
9174                "Representation",
9175                "LongName",
9176                "CompositionType",
9177                "PredefinedType",
9178            ],
9179            Self::IfcBridgePart => &[
9180                "GlobalId",
9181                "OwnerHistory",
9182                "Name",
9183                "Description",
9184                "ObjectType",
9185                "ObjectPlacement",
9186                "Representation",
9187                "LongName",
9188                "CompositionType",
9189                "UsageType",
9190                "PredefinedType",
9191            ],
9192            Self::IfcBuilding => &[
9193                "GlobalId",
9194                "OwnerHistory",
9195                "Name",
9196                "Description",
9197                "ObjectType",
9198                "ObjectPlacement",
9199                "Representation",
9200                "LongName",
9201                "CompositionType",
9202                "ElevationOfRefHeight",
9203                "ElevationOfTerrain",
9204                "BuildingAddress",
9205            ],
9206            Self::IfcBuildingElementPart => &[
9207                "GlobalId",
9208                "OwnerHistory",
9209                "Name",
9210                "Description",
9211                "ObjectType",
9212                "ObjectPlacement",
9213                "Representation",
9214                "Tag",
9215                "PredefinedType",
9216            ],
9217            Self::IfcBuildingElementPartType => &[
9218                "GlobalId",
9219                "OwnerHistory",
9220                "Name",
9221                "Description",
9222                "ApplicableOccurrence",
9223                "HasPropertySets",
9224                "RepresentationMaps",
9225                "Tag",
9226                "ElementType",
9227                "PredefinedType",
9228            ],
9229            Self::IfcBuildingElementProxy => &[
9230                "GlobalId",
9231                "OwnerHistory",
9232                "Name",
9233                "Description",
9234                "ObjectType",
9235                "ObjectPlacement",
9236                "Representation",
9237                "Tag",
9238                "PredefinedType",
9239            ],
9240            Self::IfcBuildingElementProxyType => &[
9241                "GlobalId",
9242                "OwnerHistory",
9243                "Name",
9244                "Description",
9245                "ApplicableOccurrence",
9246                "HasPropertySets",
9247                "RepresentationMaps",
9248                "Tag",
9249                "ElementType",
9250                "PredefinedType",
9251            ],
9252            Self::IfcBuildingStorey => &[
9253                "GlobalId",
9254                "OwnerHistory",
9255                "Name",
9256                "Description",
9257                "ObjectType",
9258                "ObjectPlacement",
9259                "Representation",
9260                "LongName",
9261                "CompositionType",
9262                "Elevation",
9263            ],
9264            Self::IfcBuildingSystem => &[
9265                "GlobalId",
9266                "OwnerHistory",
9267                "Name",
9268                "Description",
9269                "ObjectType",
9270                "PredefinedType",
9271                "LongName",
9272            ],
9273            Self::IfcBuiltElement => &[
9274                "GlobalId",
9275                "OwnerHistory",
9276                "Name",
9277                "Description",
9278                "ObjectType",
9279                "ObjectPlacement",
9280                "Representation",
9281                "Tag",
9282            ],
9283            Self::IfcBuiltElementType => &[
9284                "GlobalId",
9285                "OwnerHistory",
9286                "Name",
9287                "Description",
9288                "ApplicableOccurrence",
9289                "HasPropertySets",
9290                "RepresentationMaps",
9291                "Tag",
9292                "ElementType",
9293            ],
9294            Self::IfcBuiltSystem => &[
9295                "GlobalId",
9296                "OwnerHistory",
9297                "Name",
9298                "Description",
9299                "ObjectType",
9300                "PredefinedType",
9301                "LongName",
9302            ],
9303            Self::IfcBurner => &[
9304                "GlobalId",
9305                "OwnerHistory",
9306                "Name",
9307                "Description",
9308                "ObjectType",
9309                "ObjectPlacement",
9310                "Representation",
9311                "Tag",
9312                "PredefinedType",
9313            ],
9314            Self::IfcBurnerType => &[
9315                "GlobalId",
9316                "OwnerHistory",
9317                "Name",
9318                "Description",
9319                "ApplicableOccurrence",
9320                "HasPropertySets",
9321                "RepresentationMaps",
9322                "Tag",
9323                "ElementType",
9324                "PredefinedType",
9325            ],
9326            Self::IfcCShapeProfileDef => &[
9327                "ProfileType",
9328                "ProfileName",
9329                "Position",
9330                "Depth",
9331                "Width",
9332                "WallThickness",
9333                "Girth",
9334                "InternalFilletRadius",
9335            ],
9336            Self::IfcCableCarrierFitting => &[
9337                "GlobalId",
9338                "OwnerHistory",
9339                "Name",
9340                "Description",
9341                "ObjectType",
9342                "ObjectPlacement",
9343                "Representation",
9344                "Tag",
9345                "PredefinedType",
9346            ],
9347            Self::IfcCableCarrierFittingType => &[
9348                "GlobalId",
9349                "OwnerHistory",
9350                "Name",
9351                "Description",
9352                "ApplicableOccurrence",
9353                "HasPropertySets",
9354                "RepresentationMaps",
9355                "Tag",
9356                "ElementType",
9357                "PredefinedType",
9358            ],
9359            Self::IfcCableCarrierSegment => &[
9360                "GlobalId",
9361                "OwnerHistory",
9362                "Name",
9363                "Description",
9364                "ObjectType",
9365                "ObjectPlacement",
9366                "Representation",
9367                "Tag",
9368                "PredefinedType",
9369            ],
9370            Self::IfcCableCarrierSegmentType => &[
9371                "GlobalId",
9372                "OwnerHistory",
9373                "Name",
9374                "Description",
9375                "ApplicableOccurrence",
9376                "HasPropertySets",
9377                "RepresentationMaps",
9378                "Tag",
9379                "ElementType",
9380                "PredefinedType",
9381            ],
9382            Self::IfcCableFitting => &[
9383                "GlobalId",
9384                "OwnerHistory",
9385                "Name",
9386                "Description",
9387                "ObjectType",
9388                "ObjectPlacement",
9389                "Representation",
9390                "Tag",
9391                "PredefinedType",
9392            ],
9393            Self::IfcCableFittingType => &[
9394                "GlobalId",
9395                "OwnerHistory",
9396                "Name",
9397                "Description",
9398                "ApplicableOccurrence",
9399                "HasPropertySets",
9400                "RepresentationMaps",
9401                "Tag",
9402                "ElementType",
9403                "PredefinedType",
9404            ],
9405            Self::IfcCableSegment => &[
9406                "GlobalId",
9407                "OwnerHistory",
9408                "Name",
9409                "Description",
9410                "ObjectType",
9411                "ObjectPlacement",
9412                "Representation",
9413                "Tag",
9414                "PredefinedType",
9415            ],
9416            Self::IfcCableSegmentType => &[
9417                "GlobalId",
9418                "OwnerHistory",
9419                "Name",
9420                "Description",
9421                "ApplicableOccurrence",
9422                "HasPropertySets",
9423                "RepresentationMaps",
9424                "Tag",
9425                "ElementType",
9426                "PredefinedType",
9427            ],
9428            Self::IfcCaissonFoundation => &[
9429                "GlobalId",
9430                "OwnerHistory",
9431                "Name",
9432                "Description",
9433                "ObjectType",
9434                "ObjectPlacement",
9435                "Representation",
9436                "Tag",
9437                "PredefinedType",
9438            ],
9439            Self::IfcCaissonFoundationType => &[
9440                "GlobalId",
9441                "OwnerHistory",
9442                "Name",
9443                "Description",
9444                "ApplicableOccurrence",
9445                "HasPropertySets",
9446                "RepresentationMaps",
9447                "Tag",
9448                "ElementType",
9449                "PredefinedType",
9450            ],
9451            Self::IfcCartesianPoint => &["Coordinates"],
9452            Self::IfcCartesianPointList => &[],
9453            Self::IfcCartesianPointList2D => &["CoordList", "TagList"],
9454            Self::IfcCartesianPointList3D => &["CoordList", "TagList"],
9455            Self::IfcCartesianTransformationOperator => &["Axis1", "Axis2", "LocalOrigin", "Scale"],
9456            Self::IfcCartesianTransformationOperator2D => {
9457                &["Axis1", "Axis2", "LocalOrigin", "Scale"]
9458            }
9459            Self::IfcCartesianTransformationOperator2DnonUniform => {
9460                &["Axis1", "Axis2", "LocalOrigin", "Scale", "Scale2"]
9461            }
9462            Self::IfcCartesianTransformationOperator3D => {
9463                &["Axis1", "Axis2", "LocalOrigin", "Scale", "Axis3"]
9464            }
9465            Self::IfcCartesianTransformationOperator3DnonUniform => &[
9466                "Axis1",
9467                "Axis2",
9468                "LocalOrigin",
9469                "Scale",
9470                "Axis3",
9471                "Scale2",
9472                "Scale3",
9473            ],
9474            Self::IfcCenterLineProfileDef => &["ProfileType", "ProfileName", "Curve", "Thickness"],
9475            Self::IfcChiller => &[
9476                "GlobalId",
9477                "OwnerHistory",
9478                "Name",
9479                "Description",
9480                "ObjectType",
9481                "ObjectPlacement",
9482                "Representation",
9483                "Tag",
9484                "PredefinedType",
9485            ],
9486            Self::IfcChillerType => &[
9487                "GlobalId",
9488                "OwnerHistory",
9489                "Name",
9490                "Description",
9491                "ApplicableOccurrence",
9492                "HasPropertySets",
9493                "RepresentationMaps",
9494                "Tag",
9495                "ElementType",
9496                "PredefinedType",
9497            ],
9498            Self::IfcChimney => &[
9499                "GlobalId",
9500                "OwnerHistory",
9501                "Name",
9502                "Description",
9503                "ObjectType",
9504                "ObjectPlacement",
9505                "Representation",
9506                "Tag",
9507                "PredefinedType",
9508            ],
9509            Self::IfcChimneyType => &[
9510                "GlobalId",
9511                "OwnerHistory",
9512                "Name",
9513                "Description",
9514                "ApplicableOccurrence",
9515                "HasPropertySets",
9516                "RepresentationMaps",
9517                "Tag",
9518                "ElementType",
9519                "PredefinedType",
9520            ],
9521            Self::IfcCircle => &["Position", "Radius"],
9522            Self::IfcCircleHollowProfileDef => &[
9523                "ProfileType",
9524                "ProfileName",
9525                "Position",
9526                "Radius",
9527                "WallThickness",
9528            ],
9529            Self::IfcCircleProfileDef => &["ProfileType", "ProfileName", "Position", "Radius"],
9530            Self::IfcCivilElement => &[
9531                "GlobalId",
9532                "OwnerHistory",
9533                "Name",
9534                "Description",
9535                "ObjectType",
9536                "ObjectPlacement",
9537                "Representation",
9538                "Tag",
9539            ],
9540            Self::IfcCivilElementType => &[
9541                "GlobalId",
9542                "OwnerHistory",
9543                "Name",
9544                "Description",
9545                "ApplicableOccurrence",
9546                "HasPropertySets",
9547                "RepresentationMaps",
9548                "Tag",
9549                "ElementType",
9550            ],
9551            Self::IfcClassification => &[
9552                "Source",
9553                "Edition",
9554                "EditionDate",
9555                "Name",
9556                "Description",
9557                "Specification",
9558                "ReferenceTokens",
9559            ],
9560            Self::IfcClassificationReference => &[
9561                "Location",
9562                "Identification",
9563                "Name",
9564                "ReferencedSource",
9565                "Description",
9566                "Sort",
9567            ],
9568            Self::IfcClosedShell => &["CfsFaces"],
9569            Self::IfcClothoid => &["Position", "ClothoidConstant"],
9570            Self::IfcCoil => &[
9571                "GlobalId",
9572                "OwnerHistory",
9573                "Name",
9574                "Description",
9575                "ObjectType",
9576                "ObjectPlacement",
9577                "Representation",
9578                "Tag",
9579                "PredefinedType",
9580            ],
9581            Self::IfcCoilType => &[
9582                "GlobalId",
9583                "OwnerHistory",
9584                "Name",
9585                "Description",
9586                "ApplicableOccurrence",
9587                "HasPropertySets",
9588                "RepresentationMaps",
9589                "Tag",
9590                "ElementType",
9591                "PredefinedType",
9592            ],
9593            Self::IfcColourRgb => &["Name", "Red", "Green", "Blue"],
9594            Self::IfcColourRgbList => &["ColourList"],
9595            Self::IfcColourSpecification => &["Name"],
9596            Self::IfcColumn => &[
9597                "GlobalId",
9598                "OwnerHistory",
9599                "Name",
9600                "Description",
9601                "ObjectType",
9602                "ObjectPlacement",
9603                "Representation",
9604                "Tag",
9605                "PredefinedType",
9606            ],
9607            Self::IfcColumnType => &[
9608                "GlobalId",
9609                "OwnerHistory",
9610                "Name",
9611                "Description",
9612                "ApplicableOccurrence",
9613                "HasPropertySets",
9614                "RepresentationMaps",
9615                "Tag",
9616                "ElementType",
9617                "PredefinedType",
9618            ],
9619            Self::IfcCommunicationsAppliance => &[
9620                "GlobalId",
9621                "OwnerHistory",
9622                "Name",
9623                "Description",
9624                "ObjectType",
9625                "ObjectPlacement",
9626                "Representation",
9627                "Tag",
9628                "PredefinedType",
9629            ],
9630            Self::IfcCommunicationsApplianceType => &[
9631                "GlobalId",
9632                "OwnerHistory",
9633                "Name",
9634                "Description",
9635                "ApplicableOccurrence",
9636                "HasPropertySets",
9637                "RepresentationMaps",
9638                "Tag",
9639                "ElementType",
9640                "PredefinedType",
9641            ],
9642            Self::IfcComplexProperty => &["Name", "Specification", "UsageName", "HasProperties"],
9643            Self::IfcComplexPropertyTemplate => &[
9644                "GlobalId",
9645                "OwnerHistory",
9646                "Name",
9647                "Description",
9648                "UsageName",
9649                "TemplateType",
9650                "HasPropertyTemplates",
9651            ],
9652            Self::IfcCompositeCurve => &["Segments", "SelfIntersect"],
9653            Self::IfcCompositeCurveOnSurface => &["Segments", "SelfIntersect"],
9654            Self::IfcCompositeCurveSegment => &["Transition", "SameSense", "ParentCurve"],
9655            Self::IfcCompositeProfileDef => &["ProfileType", "ProfileName", "Profiles", "Label"],
9656            Self::IfcCompressor => &[
9657                "GlobalId",
9658                "OwnerHistory",
9659                "Name",
9660                "Description",
9661                "ObjectType",
9662                "ObjectPlacement",
9663                "Representation",
9664                "Tag",
9665                "PredefinedType",
9666            ],
9667            Self::IfcCompressorType => &[
9668                "GlobalId",
9669                "OwnerHistory",
9670                "Name",
9671                "Description",
9672                "ApplicableOccurrence",
9673                "HasPropertySets",
9674                "RepresentationMaps",
9675                "Tag",
9676                "ElementType",
9677                "PredefinedType",
9678            ],
9679            Self::IfcCondenser => &[
9680                "GlobalId",
9681                "OwnerHistory",
9682                "Name",
9683                "Description",
9684                "ObjectType",
9685                "ObjectPlacement",
9686                "Representation",
9687                "Tag",
9688                "PredefinedType",
9689            ],
9690            Self::IfcCondenserType => &[
9691                "GlobalId",
9692                "OwnerHistory",
9693                "Name",
9694                "Description",
9695                "ApplicableOccurrence",
9696                "HasPropertySets",
9697                "RepresentationMaps",
9698                "Tag",
9699                "ElementType",
9700                "PredefinedType",
9701            ],
9702            Self::IfcConic => &["Position"],
9703            Self::IfcConnectedFaceSet => &["CfsFaces"],
9704            Self::IfcConnectionCurveGeometry => {
9705                &["CurveOnRelatingElement", "CurveOnRelatedElement"]
9706            }
9707            Self::IfcConnectionGeometry => &[],
9708            Self::IfcConnectionPointEccentricity => &[
9709                "PointOnRelatingElement",
9710                "PointOnRelatedElement",
9711                "EccentricityInX",
9712                "EccentricityInY",
9713                "EccentricityInZ",
9714            ],
9715            Self::IfcConnectionPointGeometry => {
9716                &["PointOnRelatingElement", "PointOnRelatedElement"]
9717            }
9718            Self::IfcConnectionSurfaceGeometry => {
9719                &["SurfaceOnRelatingElement", "SurfaceOnRelatedElement"]
9720            }
9721            Self::IfcConnectionVolumeGeometry => {
9722                &["VolumeOnRelatingElement", "VolumeOnRelatedElement"]
9723            }
9724            Self::IfcConstraint => &[
9725                "Name",
9726                "Description",
9727                "ConstraintGrade",
9728                "ConstraintSource",
9729                "CreatingActor",
9730                "CreationTime",
9731                "UserDefinedGrade",
9732            ],
9733            Self::IfcConstructionEquipmentResource => &[
9734                "GlobalId",
9735                "OwnerHistory",
9736                "Name",
9737                "Description",
9738                "ObjectType",
9739                "Identification",
9740                "LongDescription",
9741                "Usage",
9742                "BaseCosts",
9743                "BaseQuantity",
9744                "PredefinedType",
9745            ],
9746            Self::IfcConstructionEquipmentResourceType => &[
9747                "GlobalId",
9748                "OwnerHistory",
9749                "Name",
9750                "Description",
9751                "ApplicableOccurrence",
9752                "HasPropertySets",
9753                "Identification",
9754                "LongDescription",
9755                "ResourceType",
9756                "BaseCosts",
9757                "BaseQuantity",
9758                "PredefinedType",
9759            ],
9760            Self::IfcConstructionMaterialResource => &[
9761                "GlobalId",
9762                "OwnerHistory",
9763                "Name",
9764                "Description",
9765                "ObjectType",
9766                "Identification",
9767                "LongDescription",
9768                "Usage",
9769                "BaseCosts",
9770                "BaseQuantity",
9771                "PredefinedType",
9772            ],
9773            Self::IfcConstructionMaterialResourceType => &[
9774                "GlobalId",
9775                "OwnerHistory",
9776                "Name",
9777                "Description",
9778                "ApplicableOccurrence",
9779                "HasPropertySets",
9780                "Identification",
9781                "LongDescription",
9782                "ResourceType",
9783                "BaseCosts",
9784                "BaseQuantity",
9785                "PredefinedType",
9786            ],
9787            Self::IfcConstructionProductResource => &[
9788                "GlobalId",
9789                "OwnerHistory",
9790                "Name",
9791                "Description",
9792                "ObjectType",
9793                "Identification",
9794                "LongDescription",
9795                "Usage",
9796                "BaseCosts",
9797                "BaseQuantity",
9798                "PredefinedType",
9799            ],
9800            Self::IfcConstructionProductResourceType => &[
9801                "GlobalId",
9802                "OwnerHistory",
9803                "Name",
9804                "Description",
9805                "ApplicableOccurrence",
9806                "HasPropertySets",
9807                "Identification",
9808                "LongDescription",
9809                "ResourceType",
9810                "BaseCosts",
9811                "BaseQuantity",
9812                "PredefinedType",
9813            ],
9814            Self::IfcConstructionResource => &[
9815                "GlobalId",
9816                "OwnerHistory",
9817                "Name",
9818                "Description",
9819                "ObjectType",
9820                "Identification",
9821                "LongDescription",
9822                "Usage",
9823                "BaseCosts",
9824                "BaseQuantity",
9825            ],
9826            Self::IfcConstructionResourceType => &[
9827                "GlobalId",
9828                "OwnerHistory",
9829                "Name",
9830                "Description",
9831                "ApplicableOccurrence",
9832                "HasPropertySets",
9833                "Identification",
9834                "LongDescription",
9835                "ResourceType",
9836                "BaseCosts",
9837                "BaseQuantity",
9838            ],
9839            Self::IfcContext => &[
9840                "GlobalId",
9841                "OwnerHistory",
9842                "Name",
9843                "Description",
9844                "ObjectType",
9845                "LongName",
9846                "Phase",
9847                "RepresentationContexts",
9848                "UnitsInContext",
9849            ],
9850            Self::IfcContextDependentUnit => &["Dimensions", "UnitType", "Name"],
9851            Self::IfcControl => &[
9852                "GlobalId",
9853                "OwnerHistory",
9854                "Name",
9855                "Description",
9856                "ObjectType",
9857                "Identification",
9858            ],
9859            Self::IfcController => &[
9860                "GlobalId",
9861                "OwnerHistory",
9862                "Name",
9863                "Description",
9864                "ObjectType",
9865                "ObjectPlacement",
9866                "Representation",
9867                "Tag",
9868                "PredefinedType",
9869            ],
9870            Self::IfcControllerType => &[
9871                "GlobalId",
9872                "OwnerHistory",
9873                "Name",
9874                "Description",
9875                "ApplicableOccurrence",
9876                "HasPropertySets",
9877                "RepresentationMaps",
9878                "Tag",
9879                "ElementType",
9880                "PredefinedType",
9881            ],
9882            Self::IfcConversionBasedUnit => &["Dimensions", "UnitType", "Name", "ConversionFactor"],
9883            Self::IfcConversionBasedUnitWithOffset => &[
9884                "Dimensions",
9885                "UnitType",
9886                "Name",
9887                "ConversionFactor",
9888                "ConversionOffset",
9889            ],
9890            Self::IfcConveyorSegment => &[
9891                "GlobalId",
9892                "OwnerHistory",
9893                "Name",
9894                "Description",
9895                "ObjectType",
9896                "ObjectPlacement",
9897                "Representation",
9898                "Tag",
9899                "PredefinedType",
9900            ],
9901            Self::IfcConveyorSegmentType => &[
9902                "GlobalId",
9903                "OwnerHistory",
9904                "Name",
9905                "Description",
9906                "ApplicableOccurrence",
9907                "HasPropertySets",
9908                "RepresentationMaps",
9909                "Tag",
9910                "ElementType",
9911                "PredefinedType",
9912            ],
9913            Self::IfcCooledBeam => &[
9914                "GlobalId",
9915                "OwnerHistory",
9916                "Name",
9917                "Description",
9918                "ObjectType",
9919                "ObjectPlacement",
9920                "Representation",
9921                "Tag",
9922                "PredefinedType",
9923            ],
9924            Self::IfcCooledBeamType => &[
9925                "GlobalId",
9926                "OwnerHistory",
9927                "Name",
9928                "Description",
9929                "ApplicableOccurrence",
9930                "HasPropertySets",
9931                "RepresentationMaps",
9932                "Tag",
9933                "ElementType",
9934                "PredefinedType",
9935            ],
9936            Self::IfcCoolingTower => &[
9937                "GlobalId",
9938                "OwnerHistory",
9939                "Name",
9940                "Description",
9941                "ObjectType",
9942                "ObjectPlacement",
9943                "Representation",
9944                "Tag",
9945                "PredefinedType",
9946            ],
9947            Self::IfcCoolingTowerType => &[
9948                "GlobalId",
9949                "OwnerHistory",
9950                "Name",
9951                "Description",
9952                "ApplicableOccurrence",
9953                "HasPropertySets",
9954                "RepresentationMaps",
9955                "Tag",
9956                "ElementType",
9957                "PredefinedType",
9958            ],
9959            Self::IfcCoordinateOperation => &["SourceCRS", "TargetCRS"],
9960            Self::IfcCoordinateReferenceSystem => &["Name", "Description", "GeodeticDatum"],
9961            Self::IfcCosineSpiral => &["Position", "CosineTerm", "ConstantTerm"],
9962            Self::IfcCostItem => &[
9963                "GlobalId",
9964                "OwnerHistory",
9965                "Name",
9966                "Description",
9967                "ObjectType",
9968                "Identification",
9969                "PredefinedType",
9970                "CostValues",
9971                "CostQuantities",
9972            ],
9973            Self::IfcCostSchedule => &[
9974                "GlobalId",
9975                "OwnerHistory",
9976                "Name",
9977                "Description",
9978                "ObjectType",
9979                "Identification",
9980                "PredefinedType",
9981                "Status",
9982                "SubmittedOn",
9983                "UpdateDate",
9984            ],
9985            Self::IfcCostValue => &[
9986                "Name",
9987                "Description",
9988                "AppliedValue",
9989                "UnitBasis",
9990                "ApplicableDate",
9991                "FixedUntilDate",
9992                "Category",
9993                "Condition",
9994                "ArithmeticOperator",
9995                "Components",
9996            ],
9997            Self::IfcCourse => &[
9998                "GlobalId",
9999                "OwnerHistory",
10000                "Name",
10001                "Description",
10002                "ObjectType",
10003                "ObjectPlacement",
10004                "Representation",
10005                "Tag",
10006                "PredefinedType",
10007            ],
10008            Self::IfcCourseType => &[
10009                "GlobalId",
10010                "OwnerHistory",
10011                "Name",
10012                "Description",
10013                "ApplicableOccurrence",
10014                "HasPropertySets",
10015                "RepresentationMaps",
10016                "Tag",
10017                "ElementType",
10018                "PredefinedType",
10019            ],
10020            Self::IfcCovering => &[
10021                "GlobalId",
10022                "OwnerHistory",
10023                "Name",
10024                "Description",
10025                "ObjectType",
10026                "ObjectPlacement",
10027                "Representation",
10028                "Tag",
10029                "PredefinedType",
10030            ],
10031            Self::IfcCoveringType => &[
10032                "GlobalId",
10033                "OwnerHistory",
10034                "Name",
10035                "Description",
10036                "ApplicableOccurrence",
10037                "HasPropertySets",
10038                "RepresentationMaps",
10039                "Tag",
10040                "ElementType",
10041                "PredefinedType",
10042            ],
10043            Self::IfcCrewResource => &[
10044                "GlobalId",
10045                "OwnerHistory",
10046                "Name",
10047                "Description",
10048                "ObjectType",
10049                "Identification",
10050                "LongDescription",
10051                "Usage",
10052                "BaseCosts",
10053                "BaseQuantity",
10054                "PredefinedType",
10055            ],
10056            Self::IfcCrewResourceType => &[
10057                "GlobalId",
10058                "OwnerHistory",
10059                "Name",
10060                "Description",
10061                "ApplicableOccurrence",
10062                "HasPropertySets",
10063                "Identification",
10064                "LongDescription",
10065                "ResourceType",
10066                "BaseCosts",
10067                "BaseQuantity",
10068                "PredefinedType",
10069            ],
10070            Self::IfcCsgPrimitive3D => &["Position"],
10071            Self::IfcCsgSolid => &["TreeRootExpression"],
10072            Self::IfcCurrencyRelationship => &[
10073                "Name",
10074                "Description",
10075                "RelatingMonetaryUnit",
10076                "RelatedMonetaryUnit",
10077                "ExchangeRate",
10078                "RateDateTime",
10079                "RateSource",
10080            ],
10081            Self::IfcCurtainWall => &[
10082                "GlobalId",
10083                "OwnerHistory",
10084                "Name",
10085                "Description",
10086                "ObjectType",
10087                "ObjectPlacement",
10088                "Representation",
10089                "Tag",
10090                "PredefinedType",
10091            ],
10092            Self::IfcCurtainWallType => &[
10093                "GlobalId",
10094                "OwnerHistory",
10095                "Name",
10096                "Description",
10097                "ApplicableOccurrence",
10098                "HasPropertySets",
10099                "RepresentationMaps",
10100                "Tag",
10101                "ElementType",
10102                "PredefinedType",
10103            ],
10104            Self::IfcCurve => &[],
10105            Self::IfcCurveBoundedPlane => &["BasisSurface", "OuterBoundary", "InnerBoundaries"],
10106            Self::IfcCurveBoundedSurface => &["BasisSurface", "Boundaries", "ImplicitOuter"],
10107            Self::IfcCurveSegment => &[
10108                "Transition",
10109                "Placement",
10110                "SegmentStart",
10111                "SegmentLength",
10112                "ParentCurve",
10113            ],
10114            Self::IfcCurveStyle => &[
10115                "Name",
10116                "CurveFont",
10117                "CurveWidth",
10118                "CurveColour",
10119                "ModelOrDraughting",
10120            ],
10121            Self::IfcCurveStyleFont => &["Name", "PatternList"],
10122            Self::IfcCurveStyleFontAndScaling => &["Name", "CurveStyleFont", "CurveFontScaling"],
10123            Self::IfcCurveStyleFontPattern => &["VisibleSegmentLength", "InvisibleSegmentLength"],
10124            Self::IfcCylindricalSurface => &["Position", "Radius"],
10125            Self::IfcDamper => &[
10126                "GlobalId",
10127                "OwnerHistory",
10128                "Name",
10129                "Description",
10130                "ObjectType",
10131                "ObjectPlacement",
10132                "Representation",
10133                "Tag",
10134                "PredefinedType",
10135            ],
10136            Self::IfcDamperType => &[
10137                "GlobalId",
10138                "OwnerHistory",
10139                "Name",
10140                "Description",
10141                "ApplicableOccurrence",
10142                "HasPropertySets",
10143                "RepresentationMaps",
10144                "Tag",
10145                "ElementType",
10146                "PredefinedType",
10147            ],
10148            Self::IfcDeepFoundation => &[
10149                "GlobalId",
10150                "OwnerHistory",
10151                "Name",
10152                "Description",
10153                "ObjectType",
10154                "ObjectPlacement",
10155                "Representation",
10156                "Tag",
10157            ],
10158            Self::IfcDeepFoundationType => &[
10159                "GlobalId",
10160                "OwnerHistory",
10161                "Name",
10162                "Description",
10163                "ApplicableOccurrence",
10164                "HasPropertySets",
10165                "RepresentationMaps",
10166                "Tag",
10167                "ElementType",
10168            ],
10169            Self::IfcDerivedProfileDef => &[
10170                "ProfileType",
10171                "ProfileName",
10172                "ParentProfile",
10173                "Operator",
10174                "Label",
10175            ],
10176            Self::IfcDerivedUnit => &["Elements", "UnitType", "UserDefinedType", "Name"],
10177            Self::IfcDerivedUnitElement => &["Unit", "Exponent"],
10178            Self::IfcDimensionalExponents => &[
10179                "LengthExponent",
10180                "MassExponent",
10181                "TimeExponent",
10182                "ElectricCurrentExponent",
10183                "ThermodynamicTemperatureExponent",
10184                "AmountOfSubstanceExponent",
10185                "LuminousIntensityExponent",
10186            ],
10187            Self::IfcDirection => &["DirectionRatios"],
10188            Self::IfcDirectrixCurveSweptAreaSolid => &[
10189                "SweptArea",
10190                "Position",
10191                "Directrix",
10192                "StartParam",
10193                "EndParam",
10194            ],
10195            Self::IfcDirectrixDerivedReferenceSweptAreaSolid => &[
10196                "SweptArea",
10197                "Position",
10198                "Directrix",
10199                "StartParam",
10200                "EndParam",
10201                "FixedReference",
10202            ],
10203            Self::IfcDiscreteAccessory => &[
10204                "GlobalId",
10205                "OwnerHistory",
10206                "Name",
10207                "Description",
10208                "ObjectType",
10209                "ObjectPlacement",
10210                "Representation",
10211                "Tag",
10212                "PredefinedType",
10213            ],
10214            Self::IfcDiscreteAccessoryType => &[
10215                "GlobalId",
10216                "OwnerHistory",
10217                "Name",
10218                "Description",
10219                "ApplicableOccurrence",
10220                "HasPropertySets",
10221                "RepresentationMaps",
10222                "Tag",
10223                "ElementType",
10224                "PredefinedType",
10225            ],
10226            Self::IfcDistributionBoard => &[
10227                "GlobalId",
10228                "OwnerHistory",
10229                "Name",
10230                "Description",
10231                "ObjectType",
10232                "ObjectPlacement",
10233                "Representation",
10234                "Tag",
10235                "PredefinedType",
10236            ],
10237            Self::IfcDistributionBoardType => &[
10238                "GlobalId",
10239                "OwnerHistory",
10240                "Name",
10241                "Description",
10242                "ApplicableOccurrence",
10243                "HasPropertySets",
10244                "RepresentationMaps",
10245                "Tag",
10246                "ElementType",
10247                "PredefinedType",
10248            ],
10249            Self::IfcDistributionChamberElement => &[
10250                "GlobalId",
10251                "OwnerHistory",
10252                "Name",
10253                "Description",
10254                "ObjectType",
10255                "ObjectPlacement",
10256                "Representation",
10257                "Tag",
10258                "PredefinedType",
10259            ],
10260            Self::IfcDistributionChamberElementType => &[
10261                "GlobalId",
10262                "OwnerHistory",
10263                "Name",
10264                "Description",
10265                "ApplicableOccurrence",
10266                "HasPropertySets",
10267                "RepresentationMaps",
10268                "Tag",
10269                "ElementType",
10270                "PredefinedType",
10271            ],
10272            Self::IfcDistributionCircuit => &[
10273                "GlobalId",
10274                "OwnerHistory",
10275                "Name",
10276                "Description",
10277                "ObjectType",
10278                "LongName",
10279                "PredefinedType",
10280            ],
10281            Self::IfcDistributionControlElement => &[
10282                "GlobalId",
10283                "OwnerHistory",
10284                "Name",
10285                "Description",
10286                "ObjectType",
10287                "ObjectPlacement",
10288                "Representation",
10289                "Tag",
10290            ],
10291            Self::IfcDistributionControlElementType => &[
10292                "GlobalId",
10293                "OwnerHistory",
10294                "Name",
10295                "Description",
10296                "ApplicableOccurrence",
10297                "HasPropertySets",
10298                "RepresentationMaps",
10299                "Tag",
10300                "ElementType",
10301            ],
10302            Self::IfcDistributionElement => &[
10303                "GlobalId",
10304                "OwnerHistory",
10305                "Name",
10306                "Description",
10307                "ObjectType",
10308                "ObjectPlacement",
10309                "Representation",
10310                "Tag",
10311            ],
10312            Self::IfcDistributionElementType => &[
10313                "GlobalId",
10314                "OwnerHistory",
10315                "Name",
10316                "Description",
10317                "ApplicableOccurrence",
10318                "HasPropertySets",
10319                "RepresentationMaps",
10320                "Tag",
10321                "ElementType",
10322            ],
10323            Self::IfcDistributionFlowElement => &[
10324                "GlobalId",
10325                "OwnerHistory",
10326                "Name",
10327                "Description",
10328                "ObjectType",
10329                "ObjectPlacement",
10330                "Representation",
10331                "Tag",
10332            ],
10333            Self::IfcDistributionFlowElementType => &[
10334                "GlobalId",
10335                "OwnerHistory",
10336                "Name",
10337                "Description",
10338                "ApplicableOccurrence",
10339                "HasPropertySets",
10340                "RepresentationMaps",
10341                "Tag",
10342                "ElementType",
10343            ],
10344            Self::IfcDistributionPort => &[
10345                "GlobalId",
10346                "OwnerHistory",
10347                "Name",
10348                "Description",
10349                "ObjectType",
10350                "ObjectPlacement",
10351                "Representation",
10352                "FlowDirection",
10353                "PredefinedType",
10354                "SystemType",
10355            ],
10356            Self::IfcDistributionSystem => &[
10357                "GlobalId",
10358                "OwnerHistory",
10359                "Name",
10360                "Description",
10361                "ObjectType",
10362                "LongName",
10363                "PredefinedType",
10364            ],
10365            Self::IfcDocumentInformation => &[
10366                "Identification",
10367                "Name",
10368                "Description",
10369                "Location",
10370                "Purpose",
10371                "IntendedUse",
10372                "Scope",
10373                "Revision",
10374                "DocumentOwner",
10375                "Editors",
10376                "CreationTime",
10377                "LastRevisionTime",
10378                "ElectronicFormat",
10379                "ValidFrom",
10380                "ValidUntil",
10381                "Confidentiality",
10382                "Status",
10383            ],
10384            Self::IfcDocumentInformationRelationship => &[
10385                "Name",
10386                "Description",
10387                "RelatingDocument",
10388                "RelatedDocuments",
10389                "RelationshipType",
10390            ],
10391            Self::IfcDocumentReference => &[
10392                "Location",
10393                "Identification",
10394                "Name",
10395                "Description",
10396                "ReferencedDocument",
10397            ],
10398            Self::IfcDoor => &[
10399                "GlobalId",
10400                "OwnerHistory",
10401                "Name",
10402                "Description",
10403                "ObjectType",
10404                "ObjectPlacement",
10405                "Representation",
10406                "Tag",
10407                "OverallHeight",
10408                "OverallWidth",
10409                "PredefinedType",
10410                "OperationType",
10411                "UserDefinedOperationType",
10412            ],
10413            Self::IfcDoorLiningProperties => &[
10414                "GlobalId",
10415                "OwnerHistory",
10416                "Name",
10417                "Description",
10418                "LiningDepth",
10419                "LiningThickness",
10420                "ThresholdDepth",
10421                "ThresholdThickness",
10422                "TransomThickness",
10423                "TransomOffset",
10424                "LiningOffset",
10425                "ThresholdOffset",
10426                "CasingThickness",
10427                "CasingDepth",
10428                "ShapeAspectStyle",
10429                "LiningToPanelOffsetX",
10430                "LiningToPanelOffsetY",
10431            ],
10432            Self::IfcDoorPanelProperties => &[
10433                "GlobalId",
10434                "OwnerHistory",
10435                "Name",
10436                "Description",
10437                "PanelDepth",
10438                "PanelOperation",
10439                "PanelWidth",
10440                "PanelPosition",
10441                "ShapeAspectStyle",
10442            ],
10443            Self::IfcDoorType => &[
10444                "GlobalId",
10445                "OwnerHistory",
10446                "Name",
10447                "Description",
10448                "ApplicableOccurrence",
10449                "HasPropertySets",
10450                "RepresentationMaps",
10451                "Tag",
10452                "ElementType",
10453                "PredefinedType",
10454                "OperationType",
10455                "ParameterTakesPrecedence",
10456                "UserDefinedOperationType",
10457            ],
10458            Self::IfcDraughtingPreDefinedColour => &["Name"],
10459            Self::IfcDraughtingPreDefinedCurveFont => &["Name"],
10460            Self::IfcDuctFitting => &[
10461                "GlobalId",
10462                "OwnerHistory",
10463                "Name",
10464                "Description",
10465                "ObjectType",
10466                "ObjectPlacement",
10467                "Representation",
10468                "Tag",
10469                "PredefinedType",
10470            ],
10471            Self::IfcDuctFittingType => &[
10472                "GlobalId",
10473                "OwnerHistory",
10474                "Name",
10475                "Description",
10476                "ApplicableOccurrence",
10477                "HasPropertySets",
10478                "RepresentationMaps",
10479                "Tag",
10480                "ElementType",
10481                "PredefinedType",
10482            ],
10483            Self::IfcDuctSegment => &[
10484                "GlobalId",
10485                "OwnerHistory",
10486                "Name",
10487                "Description",
10488                "ObjectType",
10489                "ObjectPlacement",
10490                "Representation",
10491                "Tag",
10492                "PredefinedType",
10493            ],
10494            Self::IfcDuctSegmentType => &[
10495                "GlobalId",
10496                "OwnerHistory",
10497                "Name",
10498                "Description",
10499                "ApplicableOccurrence",
10500                "HasPropertySets",
10501                "RepresentationMaps",
10502                "Tag",
10503                "ElementType",
10504                "PredefinedType",
10505            ],
10506            Self::IfcDuctSilencer => &[
10507                "GlobalId",
10508                "OwnerHistory",
10509                "Name",
10510                "Description",
10511                "ObjectType",
10512                "ObjectPlacement",
10513                "Representation",
10514                "Tag",
10515                "PredefinedType",
10516            ],
10517            Self::IfcDuctSilencerType => &[
10518                "GlobalId",
10519                "OwnerHistory",
10520                "Name",
10521                "Description",
10522                "ApplicableOccurrence",
10523                "HasPropertySets",
10524                "RepresentationMaps",
10525                "Tag",
10526                "ElementType",
10527                "PredefinedType",
10528            ],
10529            Self::IfcEarthworksCut => &[
10530                "GlobalId",
10531                "OwnerHistory",
10532                "Name",
10533                "Description",
10534                "ObjectType",
10535                "ObjectPlacement",
10536                "Representation",
10537                "Tag",
10538                "PredefinedType",
10539            ],
10540            Self::IfcEarthworksElement => &[
10541                "GlobalId",
10542                "OwnerHistory",
10543                "Name",
10544                "Description",
10545                "ObjectType",
10546                "ObjectPlacement",
10547                "Representation",
10548                "Tag",
10549            ],
10550            Self::IfcEarthworksFill => &[
10551                "GlobalId",
10552                "OwnerHistory",
10553                "Name",
10554                "Description",
10555                "ObjectType",
10556                "ObjectPlacement",
10557                "Representation",
10558                "Tag",
10559                "PredefinedType",
10560            ],
10561            Self::IfcEdge => &["EdgeStart", "EdgeEnd"],
10562            Self::IfcEdgeCurve => &["EdgeStart", "EdgeEnd", "EdgeGeometry", "SameSense"],
10563            Self::IfcEdgeLoop => &["EdgeList"],
10564            Self::IfcElectricAppliance => &[
10565                "GlobalId",
10566                "OwnerHistory",
10567                "Name",
10568                "Description",
10569                "ObjectType",
10570                "ObjectPlacement",
10571                "Representation",
10572                "Tag",
10573                "PredefinedType",
10574            ],
10575            Self::IfcElectricApplianceType => &[
10576                "GlobalId",
10577                "OwnerHistory",
10578                "Name",
10579                "Description",
10580                "ApplicableOccurrence",
10581                "HasPropertySets",
10582                "RepresentationMaps",
10583                "Tag",
10584                "ElementType",
10585                "PredefinedType",
10586            ],
10587            Self::IfcElectricDistributionBoard => &[
10588                "GlobalId",
10589                "OwnerHistory",
10590                "Name",
10591                "Description",
10592                "ObjectType",
10593                "ObjectPlacement",
10594                "Representation",
10595                "Tag",
10596                "PredefinedType",
10597            ],
10598            Self::IfcElectricDistributionBoardType => &[
10599                "GlobalId",
10600                "OwnerHistory",
10601                "Name",
10602                "Description",
10603                "ApplicableOccurrence",
10604                "HasPropertySets",
10605                "RepresentationMaps",
10606                "Tag",
10607                "ElementType",
10608                "PredefinedType",
10609            ],
10610            Self::IfcElectricFlowStorageDevice => &[
10611                "GlobalId",
10612                "OwnerHistory",
10613                "Name",
10614                "Description",
10615                "ObjectType",
10616                "ObjectPlacement",
10617                "Representation",
10618                "Tag",
10619                "PredefinedType",
10620            ],
10621            Self::IfcElectricFlowStorageDeviceType => &[
10622                "GlobalId",
10623                "OwnerHistory",
10624                "Name",
10625                "Description",
10626                "ApplicableOccurrence",
10627                "HasPropertySets",
10628                "RepresentationMaps",
10629                "Tag",
10630                "ElementType",
10631                "PredefinedType",
10632            ],
10633            Self::IfcElectricFlowTreatmentDevice => &[
10634                "GlobalId",
10635                "OwnerHistory",
10636                "Name",
10637                "Description",
10638                "ObjectType",
10639                "ObjectPlacement",
10640                "Representation",
10641                "Tag",
10642                "PredefinedType",
10643            ],
10644            Self::IfcElectricFlowTreatmentDeviceType => &[
10645                "GlobalId",
10646                "OwnerHistory",
10647                "Name",
10648                "Description",
10649                "ApplicableOccurrence",
10650                "HasPropertySets",
10651                "RepresentationMaps",
10652                "Tag",
10653                "ElementType",
10654                "PredefinedType",
10655            ],
10656            Self::IfcElectricGenerator => &[
10657                "GlobalId",
10658                "OwnerHistory",
10659                "Name",
10660                "Description",
10661                "ObjectType",
10662                "ObjectPlacement",
10663                "Representation",
10664                "Tag",
10665                "PredefinedType",
10666            ],
10667            Self::IfcElectricGeneratorType => &[
10668                "GlobalId",
10669                "OwnerHistory",
10670                "Name",
10671                "Description",
10672                "ApplicableOccurrence",
10673                "HasPropertySets",
10674                "RepresentationMaps",
10675                "Tag",
10676                "ElementType",
10677                "PredefinedType",
10678            ],
10679            Self::IfcElectricMotor => &[
10680                "GlobalId",
10681                "OwnerHistory",
10682                "Name",
10683                "Description",
10684                "ObjectType",
10685                "ObjectPlacement",
10686                "Representation",
10687                "Tag",
10688                "PredefinedType",
10689            ],
10690            Self::IfcElectricMotorType => &[
10691                "GlobalId",
10692                "OwnerHistory",
10693                "Name",
10694                "Description",
10695                "ApplicableOccurrence",
10696                "HasPropertySets",
10697                "RepresentationMaps",
10698                "Tag",
10699                "ElementType",
10700                "PredefinedType",
10701            ],
10702            Self::IfcElectricTimeControl => &[
10703                "GlobalId",
10704                "OwnerHistory",
10705                "Name",
10706                "Description",
10707                "ObjectType",
10708                "ObjectPlacement",
10709                "Representation",
10710                "Tag",
10711                "PredefinedType",
10712            ],
10713            Self::IfcElectricTimeControlType => &[
10714                "GlobalId",
10715                "OwnerHistory",
10716                "Name",
10717                "Description",
10718                "ApplicableOccurrence",
10719                "HasPropertySets",
10720                "RepresentationMaps",
10721                "Tag",
10722                "ElementType",
10723                "PredefinedType",
10724            ],
10725            Self::IfcElement => &[
10726                "GlobalId",
10727                "OwnerHistory",
10728                "Name",
10729                "Description",
10730                "ObjectType",
10731                "ObjectPlacement",
10732                "Representation",
10733                "Tag",
10734            ],
10735            Self::IfcElementAssembly => &[
10736                "GlobalId",
10737                "OwnerHistory",
10738                "Name",
10739                "Description",
10740                "ObjectType",
10741                "ObjectPlacement",
10742                "Representation",
10743                "Tag",
10744                "AssemblyPlace",
10745                "PredefinedType",
10746            ],
10747            Self::IfcElementAssemblyType => &[
10748                "GlobalId",
10749                "OwnerHistory",
10750                "Name",
10751                "Description",
10752                "ApplicableOccurrence",
10753                "HasPropertySets",
10754                "RepresentationMaps",
10755                "Tag",
10756                "ElementType",
10757                "PredefinedType",
10758            ],
10759            Self::IfcElementComponent => &[
10760                "GlobalId",
10761                "OwnerHistory",
10762                "Name",
10763                "Description",
10764                "ObjectType",
10765                "ObjectPlacement",
10766                "Representation",
10767                "Tag",
10768            ],
10769            Self::IfcElementComponentType => &[
10770                "GlobalId",
10771                "OwnerHistory",
10772                "Name",
10773                "Description",
10774                "ApplicableOccurrence",
10775                "HasPropertySets",
10776                "RepresentationMaps",
10777                "Tag",
10778                "ElementType",
10779            ],
10780            Self::IfcElementQuantity => &[
10781                "GlobalId",
10782                "OwnerHistory",
10783                "Name",
10784                "Description",
10785                "MethodOfMeasurement",
10786                "Quantities",
10787            ],
10788            Self::IfcElementType => &[
10789                "GlobalId",
10790                "OwnerHistory",
10791                "Name",
10792                "Description",
10793                "ApplicableOccurrence",
10794                "HasPropertySets",
10795                "RepresentationMaps",
10796                "Tag",
10797                "ElementType",
10798            ],
10799            Self::IfcElementarySurface => &["Position"],
10800            Self::IfcEllipse => &["Position", "SemiAxis1", "SemiAxis2"],
10801            Self::IfcEllipseProfileDef => &[
10802                "ProfileType",
10803                "ProfileName",
10804                "Position",
10805                "SemiAxis1",
10806                "SemiAxis2",
10807            ],
10808            Self::IfcEnergyConversionDevice => &[
10809                "GlobalId",
10810                "OwnerHistory",
10811                "Name",
10812                "Description",
10813                "ObjectType",
10814                "ObjectPlacement",
10815                "Representation",
10816                "Tag",
10817            ],
10818            Self::IfcEnergyConversionDeviceType => &[
10819                "GlobalId",
10820                "OwnerHistory",
10821                "Name",
10822                "Description",
10823                "ApplicableOccurrence",
10824                "HasPropertySets",
10825                "RepresentationMaps",
10826                "Tag",
10827                "ElementType",
10828            ],
10829            Self::IfcEngine => &[
10830                "GlobalId",
10831                "OwnerHistory",
10832                "Name",
10833                "Description",
10834                "ObjectType",
10835                "ObjectPlacement",
10836                "Representation",
10837                "Tag",
10838                "PredefinedType",
10839            ],
10840            Self::IfcEngineType => &[
10841                "GlobalId",
10842                "OwnerHistory",
10843                "Name",
10844                "Description",
10845                "ApplicableOccurrence",
10846                "HasPropertySets",
10847                "RepresentationMaps",
10848                "Tag",
10849                "ElementType",
10850                "PredefinedType",
10851            ],
10852            Self::IfcEvaporativeCooler => &[
10853                "GlobalId",
10854                "OwnerHistory",
10855                "Name",
10856                "Description",
10857                "ObjectType",
10858                "ObjectPlacement",
10859                "Representation",
10860                "Tag",
10861                "PredefinedType",
10862            ],
10863            Self::IfcEvaporativeCoolerType => &[
10864                "GlobalId",
10865                "OwnerHistory",
10866                "Name",
10867                "Description",
10868                "ApplicableOccurrence",
10869                "HasPropertySets",
10870                "RepresentationMaps",
10871                "Tag",
10872                "ElementType",
10873                "PredefinedType",
10874            ],
10875            Self::IfcEvaporator => &[
10876                "GlobalId",
10877                "OwnerHistory",
10878                "Name",
10879                "Description",
10880                "ObjectType",
10881                "ObjectPlacement",
10882                "Representation",
10883                "Tag",
10884                "PredefinedType",
10885            ],
10886            Self::IfcEvaporatorType => &[
10887                "GlobalId",
10888                "OwnerHistory",
10889                "Name",
10890                "Description",
10891                "ApplicableOccurrence",
10892                "HasPropertySets",
10893                "RepresentationMaps",
10894                "Tag",
10895                "ElementType",
10896                "PredefinedType",
10897            ],
10898            Self::IfcEvent => &[
10899                "GlobalId",
10900                "OwnerHistory",
10901                "Name",
10902                "Description",
10903                "ObjectType",
10904                "Identification",
10905                "LongDescription",
10906                "PredefinedType",
10907                "EventTriggerType",
10908                "UserDefinedEventTriggerType",
10909                "EventOccurenceTime",
10910            ],
10911            Self::IfcEventTime => &[
10912                "Name",
10913                "DataOrigin",
10914                "UserDefinedDataOrigin",
10915                "ActualDate",
10916                "EarlyDate",
10917                "LateDate",
10918                "ScheduleDate",
10919            ],
10920            Self::IfcEventType => &[
10921                "GlobalId",
10922                "OwnerHistory",
10923                "Name",
10924                "Description",
10925                "ApplicableOccurrence",
10926                "HasPropertySets",
10927                "Identification",
10928                "LongDescription",
10929                "ProcessType",
10930                "PredefinedType",
10931                "EventTriggerType",
10932                "UserDefinedEventTriggerType",
10933            ],
10934            Self::IfcExtendedProperties => &["Name", "Description", "Properties"],
10935            Self::IfcExternalInformation => &[],
10936            Self::IfcExternalReference => &["Location", "Identification", "Name"],
10937            Self::IfcExternalReferenceRelationship => &[
10938                "Name",
10939                "Description",
10940                "RelatingReference",
10941                "RelatedResourceObjects",
10942            ],
10943            Self::IfcExternalSpatialElement => &[
10944                "GlobalId",
10945                "OwnerHistory",
10946                "Name",
10947                "Description",
10948                "ObjectType",
10949                "ObjectPlacement",
10950                "Representation",
10951                "LongName",
10952                "PredefinedType",
10953            ],
10954            Self::IfcExternalSpatialStructureElement => &[
10955                "GlobalId",
10956                "OwnerHistory",
10957                "Name",
10958                "Description",
10959                "ObjectType",
10960                "ObjectPlacement",
10961                "Representation",
10962                "LongName",
10963            ],
10964            Self::IfcExternallyDefinedHatchStyle => &["Location", "Identification", "Name"],
10965            Self::IfcExternallyDefinedSurfaceStyle => &["Location", "Identification", "Name"],
10966            Self::IfcExternallyDefinedTextFont => &["Location", "Identification", "Name"],
10967            Self::IfcExtrudedAreaSolid => &["SweptArea", "Position", "ExtrudedDirection", "Depth"],
10968            Self::IfcExtrudedAreaSolidTapered => &[
10969                "SweptArea",
10970                "Position",
10971                "ExtrudedDirection",
10972                "Depth",
10973                "EndSweptArea",
10974            ],
10975            Self::IfcFace => &["Bounds"],
10976            Self::IfcFaceBasedSurfaceModel => &["FbsmFaces"],
10977            Self::IfcFaceBound => &["Bound", "Orientation"],
10978            Self::IfcFaceOuterBound => &["Bound", "Orientation"],
10979            Self::IfcFaceSurface => &["Bounds", "FaceSurface", "SameSense"],
10980            Self::IfcFacetedBrep => &["Outer"],
10981            Self::IfcFacetedBrepWithVoids => &["Outer", "Voids"],
10982            Self::IfcFacility => &[
10983                "GlobalId",
10984                "OwnerHistory",
10985                "Name",
10986                "Description",
10987                "ObjectType",
10988                "ObjectPlacement",
10989                "Representation",
10990                "LongName",
10991                "CompositionType",
10992            ],
10993            Self::IfcFacilityPart => &[
10994                "GlobalId",
10995                "OwnerHistory",
10996                "Name",
10997                "Description",
10998                "ObjectType",
10999                "ObjectPlacement",
11000                "Representation",
11001                "LongName",
11002                "CompositionType",
11003                "UsageType",
11004            ],
11005            Self::IfcFacilityPartCommon => &[
11006                "GlobalId",
11007                "OwnerHistory",
11008                "Name",
11009                "Description",
11010                "ObjectType",
11011                "ObjectPlacement",
11012                "Representation",
11013                "LongName",
11014                "CompositionType",
11015                "UsageType",
11016                "PredefinedType",
11017            ],
11018            Self::IfcFailureConnectionCondition => &[
11019                "Name",
11020                "TensionFailureX",
11021                "TensionFailureY",
11022                "TensionFailureZ",
11023                "CompressionFailureX",
11024                "CompressionFailureY",
11025                "CompressionFailureZ",
11026            ],
11027            Self::IfcFan => &[
11028                "GlobalId",
11029                "OwnerHistory",
11030                "Name",
11031                "Description",
11032                "ObjectType",
11033                "ObjectPlacement",
11034                "Representation",
11035                "Tag",
11036                "PredefinedType",
11037            ],
11038            Self::IfcFanType => &[
11039                "GlobalId",
11040                "OwnerHistory",
11041                "Name",
11042                "Description",
11043                "ApplicableOccurrence",
11044                "HasPropertySets",
11045                "RepresentationMaps",
11046                "Tag",
11047                "ElementType",
11048                "PredefinedType",
11049            ],
11050            Self::IfcFastener => &[
11051                "GlobalId",
11052                "OwnerHistory",
11053                "Name",
11054                "Description",
11055                "ObjectType",
11056                "ObjectPlacement",
11057                "Representation",
11058                "Tag",
11059                "PredefinedType",
11060            ],
11061            Self::IfcFastenerType => &[
11062                "GlobalId",
11063                "OwnerHistory",
11064                "Name",
11065                "Description",
11066                "ApplicableOccurrence",
11067                "HasPropertySets",
11068                "RepresentationMaps",
11069                "Tag",
11070                "ElementType",
11071                "PredefinedType",
11072            ],
11073            Self::IfcFeatureElement => &[
11074                "GlobalId",
11075                "OwnerHistory",
11076                "Name",
11077                "Description",
11078                "ObjectType",
11079                "ObjectPlacement",
11080                "Representation",
11081                "Tag",
11082            ],
11083            Self::IfcFeatureElementAddition => &[
11084                "GlobalId",
11085                "OwnerHistory",
11086                "Name",
11087                "Description",
11088                "ObjectType",
11089                "ObjectPlacement",
11090                "Representation",
11091                "Tag",
11092            ],
11093            Self::IfcFeatureElementSubtraction => &[
11094                "GlobalId",
11095                "OwnerHistory",
11096                "Name",
11097                "Description",
11098                "ObjectType",
11099                "ObjectPlacement",
11100                "Representation",
11101                "Tag",
11102            ],
11103            Self::IfcFillAreaStyle => &["Name", "FillStyles", "ModelOrDraughting"],
11104            Self::IfcFillAreaStyleHatching => &[
11105                "HatchLineAppearance",
11106                "StartOfNextHatchLine",
11107                "PointOfReferenceHatchLine",
11108                "PatternStart",
11109                "HatchLineAngle",
11110            ],
11111            Self::IfcFillAreaStyleTiles => &["TilingPattern", "Tiles", "TilingScale"],
11112            Self::IfcFilter => &[
11113                "GlobalId",
11114                "OwnerHistory",
11115                "Name",
11116                "Description",
11117                "ObjectType",
11118                "ObjectPlacement",
11119                "Representation",
11120                "Tag",
11121                "PredefinedType",
11122            ],
11123            Self::IfcFilterType => &[
11124                "GlobalId",
11125                "OwnerHistory",
11126                "Name",
11127                "Description",
11128                "ApplicableOccurrence",
11129                "HasPropertySets",
11130                "RepresentationMaps",
11131                "Tag",
11132                "ElementType",
11133                "PredefinedType",
11134            ],
11135            Self::IfcFireSuppressionTerminal => &[
11136                "GlobalId",
11137                "OwnerHistory",
11138                "Name",
11139                "Description",
11140                "ObjectType",
11141                "ObjectPlacement",
11142                "Representation",
11143                "Tag",
11144                "PredefinedType",
11145            ],
11146            Self::IfcFireSuppressionTerminalType => &[
11147                "GlobalId",
11148                "OwnerHistory",
11149                "Name",
11150                "Description",
11151                "ApplicableOccurrence",
11152                "HasPropertySets",
11153                "RepresentationMaps",
11154                "Tag",
11155                "ElementType",
11156                "PredefinedType",
11157            ],
11158            Self::IfcFixedReferenceSweptAreaSolid => &[
11159                "SweptArea",
11160                "Position",
11161                "Directrix",
11162                "StartParam",
11163                "EndParam",
11164                "FixedReference",
11165            ],
11166            Self::IfcFlowController => &[
11167                "GlobalId",
11168                "OwnerHistory",
11169                "Name",
11170                "Description",
11171                "ObjectType",
11172                "ObjectPlacement",
11173                "Representation",
11174                "Tag",
11175            ],
11176            Self::IfcFlowControllerType => &[
11177                "GlobalId",
11178                "OwnerHistory",
11179                "Name",
11180                "Description",
11181                "ApplicableOccurrence",
11182                "HasPropertySets",
11183                "RepresentationMaps",
11184                "Tag",
11185                "ElementType",
11186            ],
11187            Self::IfcFlowFitting => &[
11188                "GlobalId",
11189                "OwnerHistory",
11190                "Name",
11191                "Description",
11192                "ObjectType",
11193                "ObjectPlacement",
11194                "Representation",
11195                "Tag",
11196            ],
11197            Self::IfcFlowFittingType => &[
11198                "GlobalId",
11199                "OwnerHistory",
11200                "Name",
11201                "Description",
11202                "ApplicableOccurrence",
11203                "HasPropertySets",
11204                "RepresentationMaps",
11205                "Tag",
11206                "ElementType",
11207            ],
11208            Self::IfcFlowInstrument => &[
11209                "GlobalId",
11210                "OwnerHistory",
11211                "Name",
11212                "Description",
11213                "ObjectType",
11214                "ObjectPlacement",
11215                "Representation",
11216                "Tag",
11217                "PredefinedType",
11218            ],
11219            Self::IfcFlowInstrumentType => &[
11220                "GlobalId",
11221                "OwnerHistory",
11222                "Name",
11223                "Description",
11224                "ApplicableOccurrence",
11225                "HasPropertySets",
11226                "RepresentationMaps",
11227                "Tag",
11228                "ElementType",
11229                "PredefinedType",
11230            ],
11231            Self::IfcFlowMeter => &[
11232                "GlobalId",
11233                "OwnerHistory",
11234                "Name",
11235                "Description",
11236                "ObjectType",
11237                "ObjectPlacement",
11238                "Representation",
11239                "Tag",
11240                "PredefinedType",
11241            ],
11242            Self::IfcFlowMeterType => &[
11243                "GlobalId",
11244                "OwnerHistory",
11245                "Name",
11246                "Description",
11247                "ApplicableOccurrence",
11248                "HasPropertySets",
11249                "RepresentationMaps",
11250                "Tag",
11251                "ElementType",
11252                "PredefinedType",
11253            ],
11254            Self::IfcFlowMovingDevice => &[
11255                "GlobalId",
11256                "OwnerHistory",
11257                "Name",
11258                "Description",
11259                "ObjectType",
11260                "ObjectPlacement",
11261                "Representation",
11262                "Tag",
11263            ],
11264            Self::IfcFlowMovingDeviceType => &[
11265                "GlobalId",
11266                "OwnerHistory",
11267                "Name",
11268                "Description",
11269                "ApplicableOccurrence",
11270                "HasPropertySets",
11271                "RepresentationMaps",
11272                "Tag",
11273                "ElementType",
11274            ],
11275            Self::IfcFlowSegment => &[
11276                "GlobalId",
11277                "OwnerHistory",
11278                "Name",
11279                "Description",
11280                "ObjectType",
11281                "ObjectPlacement",
11282                "Representation",
11283                "Tag",
11284            ],
11285            Self::IfcFlowSegmentType => &[
11286                "GlobalId",
11287                "OwnerHistory",
11288                "Name",
11289                "Description",
11290                "ApplicableOccurrence",
11291                "HasPropertySets",
11292                "RepresentationMaps",
11293                "Tag",
11294                "ElementType",
11295            ],
11296            Self::IfcFlowStorageDevice => &[
11297                "GlobalId",
11298                "OwnerHistory",
11299                "Name",
11300                "Description",
11301                "ObjectType",
11302                "ObjectPlacement",
11303                "Representation",
11304                "Tag",
11305            ],
11306            Self::IfcFlowStorageDeviceType => &[
11307                "GlobalId",
11308                "OwnerHistory",
11309                "Name",
11310                "Description",
11311                "ApplicableOccurrence",
11312                "HasPropertySets",
11313                "RepresentationMaps",
11314                "Tag",
11315                "ElementType",
11316            ],
11317            Self::IfcFlowTerminal => &[
11318                "GlobalId",
11319                "OwnerHistory",
11320                "Name",
11321                "Description",
11322                "ObjectType",
11323                "ObjectPlacement",
11324                "Representation",
11325                "Tag",
11326            ],
11327            Self::IfcFlowTerminalType => &[
11328                "GlobalId",
11329                "OwnerHistory",
11330                "Name",
11331                "Description",
11332                "ApplicableOccurrence",
11333                "HasPropertySets",
11334                "RepresentationMaps",
11335                "Tag",
11336                "ElementType",
11337            ],
11338            Self::IfcFlowTreatmentDevice => &[
11339                "GlobalId",
11340                "OwnerHistory",
11341                "Name",
11342                "Description",
11343                "ObjectType",
11344                "ObjectPlacement",
11345                "Representation",
11346                "Tag",
11347            ],
11348            Self::IfcFlowTreatmentDeviceType => &[
11349                "GlobalId",
11350                "OwnerHistory",
11351                "Name",
11352                "Description",
11353                "ApplicableOccurrence",
11354                "HasPropertySets",
11355                "RepresentationMaps",
11356                "Tag",
11357                "ElementType",
11358            ],
11359            Self::IfcFooting => &[
11360                "GlobalId",
11361                "OwnerHistory",
11362                "Name",
11363                "Description",
11364                "ObjectType",
11365                "ObjectPlacement",
11366                "Representation",
11367                "Tag",
11368                "PredefinedType",
11369            ],
11370            Self::IfcFootingType => &[
11371                "GlobalId",
11372                "OwnerHistory",
11373                "Name",
11374                "Description",
11375                "ApplicableOccurrence",
11376                "HasPropertySets",
11377                "RepresentationMaps",
11378                "Tag",
11379                "ElementType",
11380                "PredefinedType",
11381            ],
11382            Self::IfcFurnishingElement => &[
11383                "GlobalId",
11384                "OwnerHistory",
11385                "Name",
11386                "Description",
11387                "ObjectType",
11388                "ObjectPlacement",
11389                "Representation",
11390                "Tag",
11391            ],
11392            Self::IfcFurnishingElementType => &[
11393                "GlobalId",
11394                "OwnerHistory",
11395                "Name",
11396                "Description",
11397                "ApplicableOccurrence",
11398                "HasPropertySets",
11399                "RepresentationMaps",
11400                "Tag",
11401                "ElementType",
11402            ],
11403            Self::IfcFurniture => &[
11404                "GlobalId",
11405                "OwnerHistory",
11406                "Name",
11407                "Description",
11408                "ObjectType",
11409                "ObjectPlacement",
11410                "Representation",
11411                "Tag",
11412                "PredefinedType",
11413            ],
11414            Self::IfcFurnitureType => &[
11415                "GlobalId",
11416                "OwnerHistory",
11417                "Name",
11418                "Description",
11419                "ApplicableOccurrence",
11420                "HasPropertySets",
11421                "RepresentationMaps",
11422                "Tag",
11423                "ElementType",
11424                "AssemblyPlace",
11425                "PredefinedType",
11426            ],
11427            Self::IfcGeographicCRS => &[
11428                "Name",
11429                "Description",
11430                "GeodeticDatum",
11431                "PrimeMeridian",
11432                "AngleUnit",
11433                "HeightUnit",
11434            ],
11435            Self::IfcGeographicElement => &[
11436                "GlobalId",
11437                "OwnerHistory",
11438                "Name",
11439                "Description",
11440                "ObjectType",
11441                "ObjectPlacement",
11442                "Representation",
11443                "Tag",
11444                "PredefinedType",
11445            ],
11446            Self::IfcGeographicElementType => &[
11447                "GlobalId",
11448                "OwnerHistory",
11449                "Name",
11450                "Description",
11451                "ApplicableOccurrence",
11452                "HasPropertySets",
11453                "RepresentationMaps",
11454                "Tag",
11455                "ElementType",
11456                "PredefinedType",
11457            ],
11458            Self::IfcGeometricCurveSet => &["Elements"],
11459            Self::IfcGeometricRepresentationContext => &[
11460                "ContextIdentifier",
11461                "ContextType",
11462                "CoordinateSpaceDimension",
11463                "Precision",
11464                "WorldCoordinateSystem",
11465                "TrueNorth",
11466            ],
11467            Self::IfcGeometricRepresentationItem => &[],
11468            Self::IfcGeometricRepresentationSubContext => &[
11469                "ContextIdentifier",
11470                "ContextType",
11471                "CoordinateSpaceDimension",
11472                "Precision",
11473                "WorldCoordinateSystem",
11474                "TrueNorth",
11475                "ParentContext",
11476                "TargetScale",
11477                "TargetView",
11478                "UserDefinedTargetView",
11479            ],
11480            Self::IfcGeometricSet => &["Elements"],
11481            Self::IfcGeomodel => &[
11482                "GlobalId",
11483                "OwnerHistory",
11484                "Name",
11485                "Description",
11486                "ObjectType",
11487                "ObjectPlacement",
11488                "Representation",
11489                "Tag",
11490            ],
11491            Self::IfcGeoslice => &[
11492                "GlobalId",
11493                "OwnerHistory",
11494                "Name",
11495                "Description",
11496                "ObjectType",
11497                "ObjectPlacement",
11498                "Representation",
11499                "Tag",
11500            ],
11501            Self::IfcGeotechnicalAssembly => &[
11502                "GlobalId",
11503                "OwnerHistory",
11504                "Name",
11505                "Description",
11506                "ObjectType",
11507                "ObjectPlacement",
11508                "Representation",
11509                "Tag",
11510            ],
11511            Self::IfcGeotechnicalElement => &[
11512                "GlobalId",
11513                "OwnerHistory",
11514                "Name",
11515                "Description",
11516                "ObjectType",
11517                "ObjectPlacement",
11518                "Representation",
11519                "Tag",
11520            ],
11521            Self::IfcGeotechnicalStratum => &[
11522                "GlobalId",
11523                "OwnerHistory",
11524                "Name",
11525                "Description",
11526                "ObjectType",
11527                "ObjectPlacement",
11528                "Representation",
11529                "Tag",
11530                "PredefinedType",
11531            ],
11532            Self::IfcGradientCurve => &["Segments", "SelfIntersect", "BaseCurve", "EndPoint"],
11533            Self::IfcGrid => &[
11534                "GlobalId",
11535                "OwnerHistory",
11536                "Name",
11537                "Description",
11538                "ObjectType",
11539                "ObjectPlacement",
11540                "Representation",
11541                "UAxes",
11542                "VAxes",
11543                "WAxes",
11544                "PredefinedType",
11545            ],
11546            Self::IfcGridAxis => &["AxisTag", "AxisCurve", "SameSense"],
11547            Self::IfcGridPlacement => &[
11548                "PlacementRelTo",
11549                "PlacementLocation",
11550                "PlacementRefDirection",
11551            ],
11552            Self::IfcGroup => &[
11553                "GlobalId",
11554                "OwnerHistory",
11555                "Name",
11556                "Description",
11557                "ObjectType",
11558            ],
11559            Self::IfcHalfSpaceSolid => &["BaseSurface", "AgreementFlag"],
11560            Self::IfcHeatExchanger => &[
11561                "GlobalId",
11562                "OwnerHistory",
11563                "Name",
11564                "Description",
11565                "ObjectType",
11566                "ObjectPlacement",
11567                "Representation",
11568                "Tag",
11569                "PredefinedType",
11570            ],
11571            Self::IfcHeatExchangerType => &[
11572                "GlobalId",
11573                "OwnerHistory",
11574                "Name",
11575                "Description",
11576                "ApplicableOccurrence",
11577                "HasPropertySets",
11578                "RepresentationMaps",
11579                "Tag",
11580                "ElementType",
11581                "PredefinedType",
11582            ],
11583            Self::IfcHumidifier => &[
11584                "GlobalId",
11585                "OwnerHistory",
11586                "Name",
11587                "Description",
11588                "ObjectType",
11589                "ObjectPlacement",
11590                "Representation",
11591                "Tag",
11592                "PredefinedType",
11593            ],
11594            Self::IfcHumidifierType => &[
11595                "GlobalId",
11596                "OwnerHistory",
11597                "Name",
11598                "Description",
11599                "ApplicableOccurrence",
11600                "HasPropertySets",
11601                "RepresentationMaps",
11602                "Tag",
11603                "ElementType",
11604                "PredefinedType",
11605            ],
11606            Self::IfcIShapeProfileDef => &[
11607                "ProfileType",
11608                "ProfileName",
11609                "Position",
11610                "OverallWidth",
11611                "OverallDepth",
11612                "WebThickness",
11613                "FlangeThickness",
11614                "FilletRadius",
11615                "FlangeEdgeRadius",
11616                "FlangeSlope",
11617            ],
11618            Self::IfcImageTexture => &[
11619                "RepeatS",
11620                "RepeatT",
11621                "Mode",
11622                "TextureTransform",
11623                "Parameter",
11624                "URLReference",
11625            ],
11626            Self::IfcImpactProtectionDevice => &[
11627                "GlobalId",
11628                "OwnerHistory",
11629                "Name",
11630                "Description",
11631                "ObjectType",
11632                "ObjectPlacement",
11633                "Representation",
11634                "Tag",
11635                "PredefinedType",
11636            ],
11637            Self::IfcImpactProtectionDeviceType => &[
11638                "GlobalId",
11639                "OwnerHistory",
11640                "Name",
11641                "Description",
11642                "ApplicableOccurrence",
11643                "HasPropertySets",
11644                "RepresentationMaps",
11645                "Tag",
11646                "ElementType",
11647                "PredefinedType",
11648            ],
11649            Self::IfcIndexedColourMap => &["MappedTo", "Opacity", "Colours", "ColourIndex"],
11650            Self::IfcIndexedPolyCurve => &["Points", "Segments", "SelfIntersect"],
11651            Self::IfcIndexedPolygonalFace => &["CoordIndex"],
11652            Self::IfcIndexedPolygonalFaceWithVoids => &["CoordIndex", "InnerCoordIndices"],
11653            Self::IfcIndexedPolygonalTextureMap => {
11654                &["Maps", "MappedTo", "TexCoords", "TexCoordIndices"]
11655            }
11656            Self::IfcIndexedTextureMap => &["Maps", "MappedTo", "TexCoords"],
11657            Self::IfcIndexedTriangleTextureMap => {
11658                &["Maps", "MappedTo", "TexCoords", "TexCoordIndex"]
11659            }
11660            Self::IfcInterceptor => &[
11661                "GlobalId",
11662                "OwnerHistory",
11663                "Name",
11664                "Description",
11665                "ObjectType",
11666                "ObjectPlacement",
11667                "Representation",
11668                "Tag",
11669                "PredefinedType",
11670            ],
11671            Self::IfcInterceptorType => &[
11672                "GlobalId",
11673                "OwnerHistory",
11674                "Name",
11675                "Description",
11676                "ApplicableOccurrence",
11677                "HasPropertySets",
11678                "RepresentationMaps",
11679                "Tag",
11680                "ElementType",
11681                "PredefinedType",
11682            ],
11683            Self::IfcIntersectionCurve => {
11684                &["Curve3D", "AssociatedGeometry", "MasterRepresentation"]
11685            }
11686            Self::IfcInventory => &[
11687                "GlobalId",
11688                "OwnerHistory",
11689                "Name",
11690                "Description",
11691                "ObjectType",
11692                "PredefinedType",
11693                "Jurisdiction",
11694                "ResponsiblePersons",
11695                "LastUpdateDate",
11696                "CurrentValue",
11697                "OriginalValue",
11698            ],
11699            Self::IfcIrregularTimeSeries => &[
11700                "Name",
11701                "Description",
11702                "StartTime",
11703                "EndTime",
11704                "TimeSeriesDataType",
11705                "DataOrigin",
11706                "UserDefinedDataOrigin",
11707                "Unit",
11708                "Values",
11709            ],
11710            Self::IfcIrregularTimeSeriesValue => &["TimeStamp", "ListValues"],
11711            Self::IfcJunctionBox => &[
11712                "GlobalId",
11713                "OwnerHistory",
11714                "Name",
11715                "Description",
11716                "ObjectType",
11717                "ObjectPlacement",
11718                "Representation",
11719                "Tag",
11720                "PredefinedType",
11721            ],
11722            Self::IfcJunctionBoxType => &[
11723                "GlobalId",
11724                "OwnerHistory",
11725                "Name",
11726                "Description",
11727                "ApplicableOccurrence",
11728                "HasPropertySets",
11729                "RepresentationMaps",
11730                "Tag",
11731                "ElementType",
11732                "PredefinedType",
11733            ],
11734            Self::IfcKerb => &[
11735                "GlobalId",
11736                "OwnerHistory",
11737                "Name",
11738                "Description",
11739                "ObjectType",
11740                "ObjectPlacement",
11741                "Representation",
11742                "Tag",
11743                "PredefinedType",
11744            ],
11745            Self::IfcKerbType => &[
11746                "GlobalId",
11747                "OwnerHistory",
11748                "Name",
11749                "Description",
11750                "ApplicableOccurrence",
11751                "HasPropertySets",
11752                "RepresentationMaps",
11753                "Tag",
11754                "ElementType",
11755                "PredefinedType",
11756            ],
11757            Self::IfcLShapeProfileDef => &[
11758                "ProfileType",
11759                "ProfileName",
11760                "Position",
11761                "Depth",
11762                "Width",
11763                "Thickness",
11764                "FilletRadius",
11765                "EdgeRadius",
11766                "LegSlope",
11767            ],
11768            Self::IfcLaborResource => &[
11769                "GlobalId",
11770                "OwnerHistory",
11771                "Name",
11772                "Description",
11773                "ObjectType",
11774                "Identification",
11775                "LongDescription",
11776                "Usage",
11777                "BaseCosts",
11778                "BaseQuantity",
11779                "PredefinedType",
11780            ],
11781            Self::IfcLaborResourceType => &[
11782                "GlobalId",
11783                "OwnerHistory",
11784                "Name",
11785                "Description",
11786                "ApplicableOccurrence",
11787                "HasPropertySets",
11788                "Identification",
11789                "LongDescription",
11790                "ResourceType",
11791                "BaseCosts",
11792                "BaseQuantity",
11793                "PredefinedType",
11794            ],
11795            Self::IfcLagTime => &[
11796                "Name",
11797                "DataOrigin",
11798                "UserDefinedDataOrigin",
11799                "LagValue",
11800                "DurationType",
11801            ],
11802            Self::IfcLamp => &[
11803                "GlobalId",
11804                "OwnerHistory",
11805                "Name",
11806                "Description",
11807                "ObjectType",
11808                "ObjectPlacement",
11809                "Representation",
11810                "Tag",
11811                "PredefinedType",
11812            ],
11813            Self::IfcLampType => &[
11814                "GlobalId",
11815                "OwnerHistory",
11816                "Name",
11817                "Description",
11818                "ApplicableOccurrence",
11819                "HasPropertySets",
11820                "RepresentationMaps",
11821                "Tag",
11822                "ElementType",
11823                "PredefinedType",
11824            ],
11825            Self::IfcLibraryInformation => &[
11826                "Name",
11827                "Version",
11828                "Publisher",
11829                "VersionDate",
11830                "Location",
11831                "Description",
11832            ],
11833            Self::IfcLibraryReference => &[
11834                "Location",
11835                "Identification",
11836                "Name",
11837                "Description",
11838                "Language",
11839                "ReferencedLibrary",
11840            ],
11841            Self::IfcLightDistributionData => {
11842                &["MainPlaneAngle", "SecondaryPlaneAngle", "LuminousIntensity"]
11843            }
11844            Self::IfcLightFixture => &[
11845                "GlobalId",
11846                "OwnerHistory",
11847                "Name",
11848                "Description",
11849                "ObjectType",
11850                "ObjectPlacement",
11851                "Representation",
11852                "Tag",
11853                "PredefinedType",
11854            ],
11855            Self::IfcLightFixtureType => &[
11856                "GlobalId",
11857                "OwnerHistory",
11858                "Name",
11859                "Description",
11860                "ApplicableOccurrence",
11861                "HasPropertySets",
11862                "RepresentationMaps",
11863                "Tag",
11864                "ElementType",
11865                "PredefinedType",
11866            ],
11867            Self::IfcLightIntensityDistribution => &["LightDistributionCurve", "DistributionData"],
11868            Self::IfcLightSource => &["Name", "LightColour", "AmbientIntensity", "Intensity"],
11869            Self::IfcLightSourceAmbient => {
11870                &["Name", "LightColour", "AmbientIntensity", "Intensity"]
11871            }
11872            Self::IfcLightSourceDirectional => &[
11873                "Name",
11874                "LightColour",
11875                "AmbientIntensity",
11876                "Intensity",
11877                "Orientation",
11878            ],
11879            Self::IfcLightSourceGoniometric => &[
11880                "Name",
11881                "LightColour",
11882                "AmbientIntensity",
11883                "Intensity",
11884                "Position",
11885                "ColourAppearance",
11886                "ColourTemperature",
11887                "LuminousFlux",
11888                "LightEmissionSource",
11889                "LightDistributionDataSource",
11890            ],
11891            Self::IfcLightSourcePositional => &[
11892                "Name",
11893                "LightColour",
11894                "AmbientIntensity",
11895                "Intensity",
11896                "Position",
11897                "Radius",
11898                "ConstantAttenuation",
11899                "DistanceAttenuation",
11900                "QuadricAttenuation",
11901            ],
11902            Self::IfcLightSourceSpot => &[
11903                "Name",
11904                "LightColour",
11905                "AmbientIntensity",
11906                "Intensity",
11907                "Position",
11908                "Radius",
11909                "ConstantAttenuation",
11910                "DistanceAttenuation",
11911                "QuadricAttenuation",
11912                "Orientation",
11913                "ConcentrationExponent",
11914                "SpreadAngle",
11915                "BeamWidthAngle",
11916            ],
11917            Self::IfcLine => &["Pnt", "Dir"],
11918            Self::IfcLinearElement => &[
11919                "GlobalId",
11920                "OwnerHistory",
11921                "Name",
11922                "Description",
11923                "ObjectType",
11924                "ObjectPlacement",
11925                "Representation",
11926            ],
11927            Self::IfcLinearPlacement => {
11928                &["PlacementRelTo", "RelativePlacement", "CartesianPosition"]
11929            }
11930            Self::IfcLinearPositioningElement => &[
11931                "GlobalId",
11932                "OwnerHistory",
11933                "Name",
11934                "Description",
11935                "ObjectType",
11936                "ObjectPlacement",
11937                "Representation",
11938            ],
11939            Self::IfcLiquidTerminal => &[
11940                "GlobalId",
11941                "OwnerHistory",
11942                "Name",
11943                "Description",
11944                "ObjectType",
11945                "ObjectPlacement",
11946                "Representation",
11947                "Tag",
11948                "PredefinedType",
11949            ],
11950            Self::IfcLiquidTerminalType => &[
11951                "GlobalId",
11952                "OwnerHistory",
11953                "Name",
11954                "Description",
11955                "ApplicableOccurrence",
11956                "HasPropertySets",
11957                "RepresentationMaps",
11958                "Tag",
11959                "ElementType",
11960                "PredefinedType",
11961            ],
11962            Self::IfcLocalPlacement => &["PlacementRelTo", "RelativePlacement"],
11963            Self::IfcLoop => &[],
11964            Self::IfcManifoldSolidBrep => &["Outer"],
11965            Self::IfcMapConversion => &[
11966                "SourceCRS",
11967                "TargetCRS",
11968                "Eastings",
11969                "Northings",
11970                "OrthogonalHeight",
11971                "XAxisAbscissa",
11972                "XAxisOrdinate",
11973                "Scale",
11974            ],
11975            Self::IfcMapConversionScaled => &[
11976                "SourceCRS",
11977                "TargetCRS",
11978                "Eastings",
11979                "Northings",
11980                "OrthogonalHeight",
11981                "XAxisAbscissa",
11982                "XAxisOrdinate",
11983                "Scale",
11984                "FactorX",
11985                "FactorY",
11986                "FactorZ",
11987            ],
11988            Self::IfcMappedItem => &["MappingSource", "MappingTarget"],
11989            Self::IfcMarineFacility => &[
11990                "GlobalId",
11991                "OwnerHistory",
11992                "Name",
11993                "Description",
11994                "ObjectType",
11995                "ObjectPlacement",
11996                "Representation",
11997                "LongName",
11998                "CompositionType",
11999                "PredefinedType",
12000            ],
12001            Self::IfcMarinePart => &[
12002                "GlobalId",
12003                "OwnerHistory",
12004                "Name",
12005                "Description",
12006                "ObjectType",
12007                "ObjectPlacement",
12008                "Representation",
12009                "LongName",
12010                "CompositionType",
12011                "UsageType",
12012                "PredefinedType",
12013            ],
12014            Self::IfcMaterial => &["Name", "Description", "Category"],
12015            Self::IfcMaterialClassificationRelationship => {
12016                &["MaterialClassifications", "ClassifiedMaterial"]
12017            }
12018            Self::IfcMaterialConstituent => {
12019                &["Name", "Description", "Material", "Fraction", "Category"]
12020            }
12021            Self::IfcMaterialConstituentSet => &["Name", "Description", "MaterialConstituents"],
12022            Self::IfcMaterialDefinition => &[],
12023            Self::IfcMaterialDefinitionRepresentation => &[
12024                "Name",
12025                "Description",
12026                "Representations",
12027                "RepresentedMaterial",
12028            ],
12029            Self::IfcMaterialLayer => &[
12030                "Material",
12031                "LayerThickness",
12032                "IsVentilated",
12033                "Name",
12034                "Description",
12035                "Category",
12036                "Priority",
12037            ],
12038            Self::IfcMaterialLayerSet => &["MaterialLayers", "LayerSetName", "Description"],
12039            Self::IfcMaterialLayerSetUsage => &[
12040                "ForLayerSet",
12041                "LayerSetDirection",
12042                "DirectionSense",
12043                "OffsetFromReferenceLine",
12044                "ReferenceExtent",
12045            ],
12046            Self::IfcMaterialLayerWithOffsets => &[
12047                "Material",
12048                "LayerThickness",
12049                "IsVentilated",
12050                "Name",
12051                "Description",
12052                "Category",
12053                "Priority",
12054                "OffsetDirection",
12055                "OffsetValues",
12056            ],
12057            Self::IfcMaterialList => &["Materials"],
12058            Self::IfcMaterialProfile => &[
12059                "Name",
12060                "Description",
12061                "Material",
12062                "Profile",
12063                "Priority",
12064                "Category",
12065            ],
12066            Self::IfcMaterialProfileSet => &[
12067                "Name",
12068                "Description",
12069                "MaterialProfiles",
12070                "CompositeProfile",
12071            ],
12072            Self::IfcMaterialProfileSetUsage => {
12073                &["ForProfileSet", "CardinalPoint", "ReferenceExtent"]
12074            }
12075            Self::IfcMaterialProfileSetUsageTapering => &[
12076                "ForProfileSet",
12077                "CardinalPoint",
12078                "ReferenceExtent",
12079                "ForProfileEndSet",
12080                "CardinalEndPoint",
12081            ],
12082            Self::IfcMaterialProfileWithOffsets => &[
12083                "Name",
12084                "Description",
12085                "Material",
12086                "Profile",
12087                "Priority",
12088                "Category",
12089                "OffsetValues",
12090            ],
12091            Self::IfcMaterialProperties => &["Name", "Description", "Properties", "Material"],
12092            Self::IfcMaterialRelationship => &[
12093                "Name",
12094                "Description",
12095                "RelatingMaterial",
12096                "RelatedMaterials",
12097                "MaterialExpression",
12098            ],
12099            Self::IfcMaterialUsageDefinition => &[],
12100            Self::IfcMeasureWithUnit => &["ValueComponent", "UnitComponent"],
12101            Self::IfcMechanicalFastener => &[
12102                "GlobalId",
12103                "OwnerHistory",
12104                "Name",
12105                "Description",
12106                "ObjectType",
12107                "ObjectPlacement",
12108                "Representation",
12109                "Tag",
12110                "NominalDiameter",
12111                "NominalLength",
12112                "PredefinedType",
12113            ],
12114            Self::IfcMechanicalFastenerType => &[
12115                "GlobalId",
12116                "OwnerHistory",
12117                "Name",
12118                "Description",
12119                "ApplicableOccurrence",
12120                "HasPropertySets",
12121                "RepresentationMaps",
12122                "Tag",
12123                "ElementType",
12124                "PredefinedType",
12125                "NominalDiameter",
12126                "NominalLength",
12127            ],
12128            Self::IfcMedicalDevice => &[
12129                "GlobalId",
12130                "OwnerHistory",
12131                "Name",
12132                "Description",
12133                "ObjectType",
12134                "ObjectPlacement",
12135                "Representation",
12136                "Tag",
12137                "PredefinedType",
12138            ],
12139            Self::IfcMedicalDeviceType => &[
12140                "GlobalId",
12141                "OwnerHistory",
12142                "Name",
12143                "Description",
12144                "ApplicableOccurrence",
12145                "HasPropertySets",
12146                "RepresentationMaps",
12147                "Tag",
12148                "ElementType",
12149                "PredefinedType",
12150            ],
12151            Self::IfcMember => &[
12152                "GlobalId",
12153                "OwnerHistory",
12154                "Name",
12155                "Description",
12156                "ObjectType",
12157                "ObjectPlacement",
12158                "Representation",
12159                "Tag",
12160                "PredefinedType",
12161            ],
12162            Self::IfcMemberType => &[
12163                "GlobalId",
12164                "OwnerHistory",
12165                "Name",
12166                "Description",
12167                "ApplicableOccurrence",
12168                "HasPropertySets",
12169                "RepresentationMaps",
12170                "Tag",
12171                "ElementType",
12172                "PredefinedType",
12173            ],
12174            Self::IfcMetric => &[
12175                "Name",
12176                "Description",
12177                "ConstraintGrade",
12178                "ConstraintSource",
12179                "CreatingActor",
12180                "CreationTime",
12181                "UserDefinedGrade",
12182                "Benchmark",
12183                "ValueSource",
12184                "DataValue",
12185                "ReferencePath",
12186            ],
12187            Self::IfcMirroredProfileDef => &[
12188                "ProfileType",
12189                "ProfileName",
12190                "ParentProfile",
12191                "Operator",
12192                "Label",
12193            ],
12194            Self::IfcMobileTelecommunicationsAppliance => &[
12195                "GlobalId",
12196                "OwnerHistory",
12197                "Name",
12198                "Description",
12199                "ObjectType",
12200                "ObjectPlacement",
12201                "Representation",
12202                "Tag",
12203                "PredefinedType",
12204            ],
12205            Self::IfcMobileTelecommunicationsApplianceType => &[
12206                "GlobalId",
12207                "OwnerHistory",
12208                "Name",
12209                "Description",
12210                "ApplicableOccurrence",
12211                "HasPropertySets",
12212                "RepresentationMaps",
12213                "Tag",
12214                "ElementType",
12215                "PredefinedType",
12216            ],
12217            Self::IfcMonetaryUnit => &["Currency"],
12218            Self::IfcMooringDevice => &[
12219                "GlobalId",
12220                "OwnerHistory",
12221                "Name",
12222                "Description",
12223                "ObjectType",
12224                "ObjectPlacement",
12225                "Representation",
12226                "Tag",
12227                "PredefinedType",
12228            ],
12229            Self::IfcMooringDeviceType => &[
12230                "GlobalId",
12231                "OwnerHistory",
12232                "Name",
12233                "Description",
12234                "ApplicableOccurrence",
12235                "HasPropertySets",
12236                "RepresentationMaps",
12237                "Tag",
12238                "ElementType",
12239                "PredefinedType",
12240            ],
12241            Self::IfcMotorConnection => &[
12242                "GlobalId",
12243                "OwnerHistory",
12244                "Name",
12245                "Description",
12246                "ObjectType",
12247                "ObjectPlacement",
12248                "Representation",
12249                "Tag",
12250                "PredefinedType",
12251            ],
12252            Self::IfcMotorConnectionType => &[
12253                "GlobalId",
12254                "OwnerHistory",
12255                "Name",
12256                "Description",
12257                "ApplicableOccurrence",
12258                "HasPropertySets",
12259                "RepresentationMaps",
12260                "Tag",
12261                "ElementType",
12262                "PredefinedType",
12263            ],
12264            Self::IfcNamedUnit => &["Dimensions", "UnitType"],
12265            Self::IfcNavigationElement => &[
12266                "GlobalId",
12267                "OwnerHistory",
12268                "Name",
12269                "Description",
12270                "ObjectType",
12271                "ObjectPlacement",
12272                "Representation",
12273                "Tag",
12274                "PredefinedType",
12275            ],
12276            Self::IfcNavigationElementType => &[
12277                "GlobalId",
12278                "OwnerHistory",
12279                "Name",
12280                "Description",
12281                "ApplicableOccurrence",
12282                "HasPropertySets",
12283                "RepresentationMaps",
12284                "Tag",
12285                "ElementType",
12286                "PredefinedType",
12287            ],
12288            Self::IfcObject => &[
12289                "GlobalId",
12290                "OwnerHistory",
12291                "Name",
12292                "Description",
12293                "ObjectType",
12294            ],
12295            Self::IfcObjectDefinition => &["GlobalId", "OwnerHistory", "Name", "Description"],
12296            Self::IfcObjectPlacement => &["PlacementRelTo"],
12297            Self::IfcObjective => &[
12298                "Name",
12299                "Description",
12300                "ConstraintGrade",
12301                "ConstraintSource",
12302                "CreatingActor",
12303                "CreationTime",
12304                "UserDefinedGrade",
12305                "BenchmarkValues",
12306                "LogicalAggregator",
12307                "ObjectiveQualifier",
12308                "UserDefinedQualifier",
12309            ],
12310            Self::IfcOccupant => &[
12311                "GlobalId",
12312                "OwnerHistory",
12313                "Name",
12314                "Description",
12315                "ObjectType",
12316                "TheActor",
12317                "PredefinedType",
12318            ],
12319            Self::IfcOffsetCurve => &["BasisCurve"],
12320            Self::IfcOffsetCurve2D => &["BasisCurve", "Distance", "SelfIntersect"],
12321            Self::IfcOffsetCurve3D => &["BasisCurve", "Distance", "SelfIntersect", "RefDirection"],
12322            Self::IfcOffsetCurveByDistances => &["BasisCurve", "OffsetValues", "Tag"],
12323            Self::IfcOpenCrossProfileDef => &[
12324                "ProfileType",
12325                "ProfileName",
12326                "HorizontalWidths",
12327                "Widths",
12328                "Slopes",
12329                "Tags",
12330                "OffsetPoint",
12331            ],
12332            Self::IfcOpenShell => &["CfsFaces"],
12333            Self::IfcOpeningElement => &[
12334                "GlobalId",
12335                "OwnerHistory",
12336                "Name",
12337                "Description",
12338                "ObjectType",
12339                "ObjectPlacement",
12340                "Representation",
12341                "Tag",
12342                "PredefinedType",
12343            ],
12344            Self::IfcOrganization => &[
12345                "Identification",
12346                "Name",
12347                "Description",
12348                "Roles",
12349                "Addresses",
12350            ],
12351            Self::IfcOrganizationRelationship => &[
12352                "Name",
12353                "Description",
12354                "RelatingOrganization",
12355                "RelatedOrganizations",
12356            ],
12357            Self::IfcOrientedEdge => &["EdgeStart", "EdgeEnd", "EdgeElement", "Orientation"],
12358            Self::IfcOuterBoundaryCurve => &["Segments", "SelfIntersect"],
12359            Self::IfcOutlet => &[
12360                "GlobalId",
12361                "OwnerHistory",
12362                "Name",
12363                "Description",
12364                "ObjectType",
12365                "ObjectPlacement",
12366                "Representation",
12367                "Tag",
12368                "PredefinedType",
12369            ],
12370            Self::IfcOutletType => &[
12371                "GlobalId",
12372                "OwnerHistory",
12373                "Name",
12374                "Description",
12375                "ApplicableOccurrence",
12376                "HasPropertySets",
12377                "RepresentationMaps",
12378                "Tag",
12379                "ElementType",
12380                "PredefinedType",
12381            ],
12382            Self::IfcOwnerHistory => &[
12383                "OwningUser",
12384                "OwningApplication",
12385                "State",
12386                "ChangeAction",
12387                "LastModifiedDate",
12388                "LastModifyingUser",
12389                "LastModifyingApplication",
12390                "CreationDate",
12391            ],
12392            Self::IfcParameterizedProfileDef => &["ProfileType", "ProfileName", "Position"],
12393            Self::IfcPath => &["EdgeList"],
12394            Self::IfcPavement => &[
12395                "GlobalId",
12396                "OwnerHistory",
12397                "Name",
12398                "Description",
12399                "ObjectType",
12400                "ObjectPlacement",
12401                "Representation",
12402                "Tag",
12403                "PredefinedType",
12404            ],
12405            Self::IfcPavementType => &[
12406                "GlobalId",
12407                "OwnerHistory",
12408                "Name",
12409                "Description",
12410                "ApplicableOccurrence",
12411                "HasPropertySets",
12412                "RepresentationMaps",
12413                "Tag",
12414                "ElementType",
12415                "PredefinedType",
12416            ],
12417            Self::IfcPcurve => &["BasisSurface", "ReferenceCurve"],
12418            Self::IfcPerformanceHistory => &[
12419                "GlobalId",
12420                "OwnerHistory",
12421                "Name",
12422                "Description",
12423                "ObjectType",
12424                "Identification",
12425                "LifeCyclePhase",
12426                "PredefinedType",
12427            ],
12428            Self::IfcPermeableCoveringProperties => &[
12429                "GlobalId",
12430                "OwnerHistory",
12431                "Name",
12432                "Description",
12433                "OperationType",
12434                "PanelPosition",
12435                "FrameDepth",
12436                "FrameThickness",
12437                "ShapeAspectStyle",
12438            ],
12439            Self::IfcPermit => &[
12440                "GlobalId",
12441                "OwnerHistory",
12442                "Name",
12443                "Description",
12444                "ObjectType",
12445                "Identification",
12446                "PredefinedType",
12447                "Status",
12448                "LongDescription",
12449            ],
12450            Self::IfcPerson => &[
12451                "Identification",
12452                "FamilyName",
12453                "GivenName",
12454                "MiddleNames",
12455                "PrefixTitles",
12456                "SuffixTitles",
12457                "Roles",
12458                "Addresses",
12459            ],
12460            Self::IfcPersonAndOrganization => &["ThePerson", "TheOrganization", "Roles"],
12461            Self::IfcPhysicalComplexQuantity => &[
12462                "Name",
12463                "Description",
12464                "HasQuantities",
12465                "Discrimination",
12466                "Quality",
12467                "Usage",
12468            ],
12469            Self::IfcPhysicalQuantity => &["Name", "Description"],
12470            Self::IfcPhysicalSimpleQuantity => &["Name", "Description", "Unit"],
12471            Self::IfcPile => &[
12472                "GlobalId",
12473                "OwnerHistory",
12474                "Name",
12475                "Description",
12476                "ObjectType",
12477                "ObjectPlacement",
12478                "Representation",
12479                "Tag",
12480                "PredefinedType",
12481                "ConstructionType",
12482            ],
12483            Self::IfcPileType => &[
12484                "GlobalId",
12485                "OwnerHistory",
12486                "Name",
12487                "Description",
12488                "ApplicableOccurrence",
12489                "HasPropertySets",
12490                "RepresentationMaps",
12491                "Tag",
12492                "ElementType",
12493                "PredefinedType",
12494            ],
12495            Self::IfcPipeFitting => &[
12496                "GlobalId",
12497                "OwnerHistory",
12498                "Name",
12499                "Description",
12500                "ObjectType",
12501                "ObjectPlacement",
12502                "Representation",
12503                "Tag",
12504                "PredefinedType",
12505            ],
12506            Self::IfcPipeFittingType => &[
12507                "GlobalId",
12508                "OwnerHistory",
12509                "Name",
12510                "Description",
12511                "ApplicableOccurrence",
12512                "HasPropertySets",
12513                "RepresentationMaps",
12514                "Tag",
12515                "ElementType",
12516                "PredefinedType",
12517            ],
12518            Self::IfcPipeSegment => &[
12519                "GlobalId",
12520                "OwnerHistory",
12521                "Name",
12522                "Description",
12523                "ObjectType",
12524                "ObjectPlacement",
12525                "Representation",
12526                "Tag",
12527                "PredefinedType",
12528            ],
12529            Self::IfcPipeSegmentType => &[
12530                "GlobalId",
12531                "OwnerHistory",
12532                "Name",
12533                "Description",
12534                "ApplicableOccurrence",
12535                "HasPropertySets",
12536                "RepresentationMaps",
12537                "Tag",
12538                "ElementType",
12539                "PredefinedType",
12540            ],
12541            Self::IfcPixelTexture => &[
12542                "RepeatS",
12543                "RepeatT",
12544                "Mode",
12545                "TextureTransform",
12546                "Parameter",
12547                "Width",
12548                "Height",
12549                "ColourComponents",
12550                "Pixel",
12551            ],
12552            Self::IfcPlacement => &["Location"],
12553            Self::IfcPlanarBox => &["SizeInX", "SizeInY", "Placement"],
12554            Self::IfcPlanarExtent => &["SizeInX", "SizeInY"],
12555            Self::IfcPlane => &["Position"],
12556            Self::IfcPlate => &[
12557                "GlobalId",
12558                "OwnerHistory",
12559                "Name",
12560                "Description",
12561                "ObjectType",
12562                "ObjectPlacement",
12563                "Representation",
12564                "Tag",
12565                "PredefinedType",
12566            ],
12567            Self::IfcPlateType => &[
12568                "GlobalId",
12569                "OwnerHistory",
12570                "Name",
12571                "Description",
12572                "ApplicableOccurrence",
12573                "HasPropertySets",
12574                "RepresentationMaps",
12575                "Tag",
12576                "ElementType",
12577                "PredefinedType",
12578            ],
12579            Self::IfcPoint => &[],
12580            Self::IfcPointByDistanceExpression => &[
12581                "DistanceAlong",
12582                "OffsetLateral",
12583                "OffsetVertical",
12584                "OffsetLongitudinal",
12585                "BasisCurve",
12586            ],
12587            Self::IfcPointOnCurve => &["BasisCurve", "PointParameter"],
12588            Self::IfcPointOnSurface => &["BasisSurface", "PointParameterU", "PointParameterV"],
12589            Self::IfcPolyLoop => &["Polygon"],
12590            Self::IfcPolygonalBoundedHalfSpace => &[
12591                "BaseSurface",
12592                "AgreementFlag",
12593                "Position",
12594                "PolygonalBoundary",
12595            ],
12596            Self::IfcPolygonalFaceSet => &["Coordinates", "Closed", "Faces", "PnIndex"],
12597            Self::IfcPolyline => &["Points"],
12598            Self::IfcPolynomialCurve => &[
12599                "Position",
12600                "CoefficientsX",
12601                "CoefficientsY",
12602                "CoefficientsZ",
12603            ],
12604            Self::IfcPort => &[
12605                "GlobalId",
12606                "OwnerHistory",
12607                "Name",
12608                "Description",
12609                "ObjectType",
12610                "ObjectPlacement",
12611                "Representation",
12612            ],
12613            Self::IfcPositioningElement => &[
12614                "GlobalId",
12615                "OwnerHistory",
12616                "Name",
12617                "Description",
12618                "ObjectType",
12619                "ObjectPlacement",
12620                "Representation",
12621            ],
12622            Self::IfcPostalAddress => &[
12623                "Purpose",
12624                "Description",
12625                "UserDefinedPurpose",
12626                "InternalLocation",
12627                "AddressLines",
12628                "PostalBox",
12629                "Town",
12630                "Region",
12631                "PostalCode",
12632                "Country",
12633            ],
12634            Self::IfcPreDefinedColour => &["Name"],
12635            Self::IfcPreDefinedCurveFont => &["Name"],
12636            Self::IfcPreDefinedItem => &["Name"],
12637            Self::IfcPreDefinedProperties => &[],
12638            Self::IfcPreDefinedPropertySet => &["GlobalId", "OwnerHistory", "Name", "Description"],
12639            Self::IfcPreDefinedTextFont => &["Name"],
12640            Self::IfcPresentationItem => &[],
12641            Self::IfcPresentationLayerAssignment => {
12642                &["Name", "Description", "AssignedItems", "Identifier"]
12643            }
12644            Self::IfcPresentationLayerWithStyle => &[
12645                "Name",
12646                "Description",
12647                "AssignedItems",
12648                "Identifier",
12649                "LayerOn",
12650                "LayerFrozen",
12651                "LayerBlocked",
12652                "LayerStyles",
12653            ],
12654            Self::IfcPresentationStyle => &["Name"],
12655            Self::IfcProcedure => &[
12656                "GlobalId",
12657                "OwnerHistory",
12658                "Name",
12659                "Description",
12660                "ObjectType",
12661                "Identification",
12662                "LongDescription",
12663                "PredefinedType",
12664            ],
12665            Self::IfcProcedureType => &[
12666                "GlobalId",
12667                "OwnerHistory",
12668                "Name",
12669                "Description",
12670                "ApplicableOccurrence",
12671                "HasPropertySets",
12672                "Identification",
12673                "LongDescription",
12674                "ProcessType",
12675                "PredefinedType",
12676            ],
12677            Self::IfcProcess => &[
12678                "GlobalId",
12679                "OwnerHistory",
12680                "Name",
12681                "Description",
12682                "ObjectType",
12683                "Identification",
12684                "LongDescription",
12685            ],
12686            Self::IfcProduct => &[
12687                "GlobalId",
12688                "OwnerHistory",
12689                "Name",
12690                "Description",
12691                "ObjectType",
12692                "ObjectPlacement",
12693                "Representation",
12694            ],
12695            Self::IfcProductDefinitionShape => &["Name", "Description", "Representations"],
12696            Self::IfcProductRepresentation => &["Name", "Description", "Representations"],
12697            Self::IfcProfileDef => &["ProfileType", "ProfileName"],
12698            Self::IfcProfileProperties => {
12699                &["Name", "Description", "Properties", "ProfileDefinition"]
12700            }
12701            Self::IfcProject => &[
12702                "GlobalId",
12703                "OwnerHistory",
12704                "Name",
12705                "Description",
12706                "ObjectType",
12707                "LongName",
12708                "Phase",
12709                "RepresentationContexts",
12710                "UnitsInContext",
12711            ],
12712            Self::IfcProjectLibrary => &[
12713                "GlobalId",
12714                "OwnerHistory",
12715                "Name",
12716                "Description",
12717                "ObjectType",
12718                "LongName",
12719                "Phase",
12720                "RepresentationContexts",
12721                "UnitsInContext",
12722            ],
12723            Self::IfcProjectOrder => &[
12724                "GlobalId",
12725                "OwnerHistory",
12726                "Name",
12727                "Description",
12728                "ObjectType",
12729                "Identification",
12730                "PredefinedType",
12731                "Status",
12732                "LongDescription",
12733            ],
12734            Self::IfcProjectedCRS => &[
12735                "Name",
12736                "Description",
12737                "GeodeticDatum",
12738                "VerticalDatum",
12739                "MapProjection",
12740                "MapZone",
12741                "MapUnit",
12742            ],
12743            Self::IfcProjectionElement => &[
12744                "GlobalId",
12745                "OwnerHistory",
12746                "Name",
12747                "Description",
12748                "ObjectType",
12749                "ObjectPlacement",
12750                "Representation",
12751                "Tag",
12752                "PredefinedType",
12753            ],
12754            Self::IfcProperty => &["Name", "Specification"],
12755            Self::IfcPropertyAbstraction => &[],
12756            Self::IfcPropertyBoundedValue => &[
12757                "Name",
12758                "Specification",
12759                "UpperBoundValue",
12760                "LowerBoundValue",
12761                "Unit",
12762                "SetPointValue",
12763            ],
12764            Self::IfcPropertyDefinition => &["GlobalId", "OwnerHistory", "Name", "Description"],
12765            Self::IfcPropertyDependencyRelationship => &[
12766                "Name",
12767                "Description",
12768                "DependingProperty",
12769                "DependantProperty",
12770                "Expression",
12771            ],
12772            Self::IfcPropertyEnumeratedValue => &[
12773                "Name",
12774                "Specification",
12775                "EnumerationValues",
12776                "EnumerationReference",
12777            ],
12778            Self::IfcPropertyEnumeration => &["Name", "EnumerationValues", "Unit"],
12779            Self::IfcPropertyListValue => &["Name", "Specification", "ListValues", "Unit"],
12780            Self::IfcPropertyReferenceValue => {
12781                &["Name", "Specification", "UsageName", "PropertyReference"]
12782            }
12783            Self::IfcPropertySet => &[
12784                "GlobalId",
12785                "OwnerHistory",
12786                "Name",
12787                "Description",
12788                "HasProperties",
12789            ],
12790            Self::IfcPropertySetDefinition => &["GlobalId", "OwnerHistory", "Name", "Description"],
12791            Self::IfcPropertySetTemplate => &[
12792                "GlobalId",
12793                "OwnerHistory",
12794                "Name",
12795                "Description",
12796                "TemplateType",
12797                "ApplicableEntity",
12798                "HasPropertyTemplates",
12799            ],
12800            Self::IfcPropertySingleValue => &["Name", "Specification", "NominalValue", "Unit"],
12801            Self::IfcPropertyTableValue => &[
12802                "Name",
12803                "Specification",
12804                "DefiningValues",
12805                "DefinedValues",
12806                "Expression",
12807                "DefiningUnit",
12808                "DefinedUnit",
12809                "CurveInterpolation",
12810            ],
12811            Self::IfcPropertyTemplate => &["GlobalId", "OwnerHistory", "Name", "Description"],
12812            Self::IfcPropertyTemplateDefinition => {
12813                &["GlobalId", "OwnerHistory", "Name", "Description"]
12814            }
12815            Self::IfcProtectiveDevice => &[
12816                "GlobalId",
12817                "OwnerHistory",
12818                "Name",
12819                "Description",
12820                "ObjectType",
12821                "ObjectPlacement",
12822                "Representation",
12823                "Tag",
12824                "PredefinedType",
12825            ],
12826            Self::IfcProtectiveDeviceTrippingUnit => &[
12827                "GlobalId",
12828                "OwnerHistory",
12829                "Name",
12830                "Description",
12831                "ObjectType",
12832                "ObjectPlacement",
12833                "Representation",
12834                "Tag",
12835                "PredefinedType",
12836            ],
12837            Self::IfcProtectiveDeviceTrippingUnitType => &[
12838                "GlobalId",
12839                "OwnerHistory",
12840                "Name",
12841                "Description",
12842                "ApplicableOccurrence",
12843                "HasPropertySets",
12844                "RepresentationMaps",
12845                "Tag",
12846                "ElementType",
12847                "PredefinedType",
12848            ],
12849            Self::IfcProtectiveDeviceType => &[
12850                "GlobalId",
12851                "OwnerHistory",
12852                "Name",
12853                "Description",
12854                "ApplicableOccurrence",
12855                "HasPropertySets",
12856                "RepresentationMaps",
12857                "Tag",
12858                "ElementType",
12859                "PredefinedType",
12860            ],
12861            Self::IfcPump => &[
12862                "GlobalId",
12863                "OwnerHistory",
12864                "Name",
12865                "Description",
12866                "ObjectType",
12867                "ObjectPlacement",
12868                "Representation",
12869                "Tag",
12870                "PredefinedType",
12871            ],
12872            Self::IfcPumpType => &[
12873                "GlobalId",
12874                "OwnerHistory",
12875                "Name",
12876                "Description",
12877                "ApplicableOccurrence",
12878                "HasPropertySets",
12879                "RepresentationMaps",
12880                "Tag",
12881                "ElementType",
12882                "PredefinedType",
12883            ],
12884            Self::IfcQuantityArea => &["Name", "Description", "Unit", "AreaValue", "Formula"],
12885            Self::IfcQuantityCount => &["Name", "Description", "Unit", "CountValue", "Formula"],
12886            Self::IfcQuantityLength => &["Name", "Description", "Unit", "LengthValue", "Formula"],
12887            Self::IfcQuantityNumber => &["Name", "Description", "Unit", "NumberValue", "Formula"],
12888            Self::IfcQuantitySet => &["GlobalId", "OwnerHistory", "Name", "Description"],
12889            Self::IfcQuantityTime => &["Name", "Description", "Unit", "TimeValue", "Formula"],
12890            Self::IfcQuantityVolume => &["Name", "Description", "Unit", "VolumeValue", "Formula"],
12891            Self::IfcQuantityWeight => &["Name", "Description", "Unit", "WeightValue", "Formula"],
12892            Self::IfcRail => &[
12893                "GlobalId",
12894                "OwnerHistory",
12895                "Name",
12896                "Description",
12897                "ObjectType",
12898                "ObjectPlacement",
12899                "Representation",
12900                "Tag",
12901                "PredefinedType",
12902            ],
12903            Self::IfcRailType => &[
12904                "GlobalId",
12905                "OwnerHistory",
12906                "Name",
12907                "Description",
12908                "ApplicableOccurrence",
12909                "HasPropertySets",
12910                "RepresentationMaps",
12911                "Tag",
12912                "ElementType",
12913                "PredefinedType",
12914            ],
12915            Self::IfcRailing => &[
12916                "GlobalId",
12917                "OwnerHistory",
12918                "Name",
12919                "Description",
12920                "ObjectType",
12921                "ObjectPlacement",
12922                "Representation",
12923                "Tag",
12924                "PredefinedType",
12925            ],
12926            Self::IfcRailingType => &[
12927                "GlobalId",
12928                "OwnerHistory",
12929                "Name",
12930                "Description",
12931                "ApplicableOccurrence",
12932                "HasPropertySets",
12933                "RepresentationMaps",
12934                "Tag",
12935                "ElementType",
12936                "PredefinedType",
12937            ],
12938            Self::IfcRailway => &[
12939                "GlobalId",
12940                "OwnerHistory",
12941                "Name",
12942                "Description",
12943                "ObjectType",
12944                "ObjectPlacement",
12945                "Representation",
12946                "LongName",
12947                "CompositionType",
12948                "PredefinedType",
12949            ],
12950            Self::IfcRailwayPart => &[
12951                "GlobalId",
12952                "OwnerHistory",
12953                "Name",
12954                "Description",
12955                "ObjectType",
12956                "ObjectPlacement",
12957                "Representation",
12958                "LongName",
12959                "CompositionType",
12960                "UsageType",
12961                "PredefinedType",
12962            ],
12963            Self::IfcRamp => &[
12964                "GlobalId",
12965                "OwnerHistory",
12966                "Name",
12967                "Description",
12968                "ObjectType",
12969                "ObjectPlacement",
12970                "Representation",
12971                "Tag",
12972                "PredefinedType",
12973            ],
12974            Self::IfcRampFlight => &[
12975                "GlobalId",
12976                "OwnerHistory",
12977                "Name",
12978                "Description",
12979                "ObjectType",
12980                "ObjectPlacement",
12981                "Representation",
12982                "Tag",
12983                "PredefinedType",
12984            ],
12985            Self::IfcRampFlightType => &[
12986                "GlobalId",
12987                "OwnerHistory",
12988                "Name",
12989                "Description",
12990                "ApplicableOccurrence",
12991                "HasPropertySets",
12992                "RepresentationMaps",
12993                "Tag",
12994                "ElementType",
12995                "PredefinedType",
12996            ],
12997            Self::IfcRampType => &[
12998                "GlobalId",
12999                "OwnerHistory",
13000                "Name",
13001                "Description",
13002                "ApplicableOccurrence",
13003                "HasPropertySets",
13004                "RepresentationMaps",
13005                "Tag",
13006                "ElementType",
13007                "PredefinedType",
13008            ],
13009            Self::IfcRationalBSplineCurveWithKnots => &[
13010                "Degree",
13011                "ControlPointsList",
13012                "CurveForm",
13013                "ClosedCurve",
13014                "SelfIntersect",
13015                "KnotMultiplicities",
13016                "Knots",
13017                "KnotSpec",
13018                "WeightsData",
13019            ],
13020            Self::IfcRationalBSplineSurfaceWithKnots => &[
13021                "UDegree",
13022                "VDegree",
13023                "ControlPointsList",
13024                "SurfaceForm",
13025                "UClosed",
13026                "VClosed",
13027                "SelfIntersect",
13028                "UMultiplicities",
13029                "VMultiplicities",
13030                "UKnots",
13031                "VKnots",
13032                "KnotSpec",
13033                "WeightsData",
13034            ],
13035            Self::IfcRectangleHollowProfileDef => &[
13036                "ProfileType",
13037                "ProfileName",
13038                "Position",
13039                "XDim",
13040                "YDim",
13041                "WallThickness",
13042                "InnerFilletRadius",
13043                "OuterFilletRadius",
13044            ],
13045            Self::IfcRectangleProfileDef => {
13046                &["ProfileType", "ProfileName", "Position", "XDim", "YDim"]
13047            }
13048            Self::IfcRectangularPyramid => &["Position", "XLength", "YLength", "Height"],
13049            Self::IfcRectangularTrimmedSurface => {
13050                &["BasisSurface", "U1", "V1", "U2", "V2", "Usense", "Vsense"]
13051            }
13052            Self::IfcRecurrencePattern => &[
13053                "RecurrenceType",
13054                "DayComponent",
13055                "WeekdayComponent",
13056                "MonthComponent",
13057                "Position",
13058                "Interval",
13059                "Occurrences",
13060                "TimePeriods",
13061            ],
13062            Self::IfcReference => &[
13063                "TypeIdentifier",
13064                "AttributeIdentifier",
13065                "InstanceName",
13066                "ListPositions",
13067                "InnerReference",
13068            ],
13069            Self::IfcReferent => &[
13070                "GlobalId",
13071                "OwnerHistory",
13072                "Name",
13073                "Description",
13074                "ObjectType",
13075                "ObjectPlacement",
13076                "Representation",
13077                "PredefinedType",
13078            ],
13079            Self::IfcRegularTimeSeries => &[
13080                "Name",
13081                "Description",
13082                "StartTime",
13083                "EndTime",
13084                "TimeSeriesDataType",
13085                "DataOrigin",
13086                "UserDefinedDataOrigin",
13087                "Unit",
13088                "TimeStep",
13089                "Values",
13090            ],
13091            Self::IfcReinforcedSoil => &[
13092                "GlobalId",
13093                "OwnerHistory",
13094                "Name",
13095                "Description",
13096                "ObjectType",
13097                "ObjectPlacement",
13098                "Representation",
13099                "Tag",
13100                "PredefinedType",
13101            ],
13102            Self::IfcReinforcementBarProperties => &[
13103                "TotalCrossSectionArea",
13104                "SteelGrade",
13105                "BarSurface",
13106                "EffectiveDepth",
13107                "NominalBarDiameter",
13108                "BarCount",
13109            ],
13110            Self::IfcReinforcementDefinitionProperties => &[
13111                "GlobalId",
13112                "OwnerHistory",
13113                "Name",
13114                "Description",
13115                "DefinitionType",
13116                "ReinforcementSectionDefinitions",
13117            ],
13118            Self::IfcReinforcingBar => &[
13119                "GlobalId",
13120                "OwnerHistory",
13121                "Name",
13122                "Description",
13123                "ObjectType",
13124                "ObjectPlacement",
13125                "Representation",
13126                "Tag",
13127                "SteelGrade",
13128                "NominalDiameter",
13129                "CrossSectionArea",
13130                "BarLength",
13131                "PredefinedType",
13132                "BarSurface",
13133            ],
13134            Self::IfcReinforcingBarType => &[
13135                "GlobalId",
13136                "OwnerHistory",
13137                "Name",
13138                "Description",
13139                "ApplicableOccurrence",
13140                "HasPropertySets",
13141                "RepresentationMaps",
13142                "Tag",
13143                "ElementType",
13144                "PredefinedType",
13145                "NominalDiameter",
13146                "CrossSectionArea",
13147                "BarLength",
13148                "BarSurface",
13149                "BendingShapeCode",
13150                "BendingParameters",
13151            ],
13152            Self::IfcReinforcingElement => &[
13153                "GlobalId",
13154                "OwnerHistory",
13155                "Name",
13156                "Description",
13157                "ObjectType",
13158                "ObjectPlacement",
13159                "Representation",
13160                "Tag",
13161                "SteelGrade",
13162            ],
13163            Self::IfcReinforcingElementType => &[
13164                "GlobalId",
13165                "OwnerHistory",
13166                "Name",
13167                "Description",
13168                "ApplicableOccurrence",
13169                "HasPropertySets",
13170                "RepresentationMaps",
13171                "Tag",
13172                "ElementType",
13173            ],
13174            Self::IfcReinforcingMesh => &[
13175                "GlobalId",
13176                "OwnerHistory",
13177                "Name",
13178                "Description",
13179                "ObjectType",
13180                "ObjectPlacement",
13181                "Representation",
13182                "Tag",
13183                "SteelGrade",
13184                "MeshLength",
13185                "MeshWidth",
13186                "LongitudinalBarNominalDiameter",
13187                "TransverseBarNominalDiameter",
13188                "LongitudinalBarCrossSectionArea",
13189                "TransverseBarCrossSectionArea",
13190                "LongitudinalBarSpacing",
13191                "TransverseBarSpacing",
13192                "PredefinedType",
13193            ],
13194            Self::IfcReinforcingMeshType => &[
13195                "GlobalId",
13196                "OwnerHistory",
13197                "Name",
13198                "Description",
13199                "ApplicableOccurrence",
13200                "HasPropertySets",
13201                "RepresentationMaps",
13202                "Tag",
13203                "ElementType",
13204                "PredefinedType",
13205                "MeshLength",
13206                "MeshWidth",
13207                "LongitudinalBarNominalDiameter",
13208                "TransverseBarNominalDiameter",
13209                "LongitudinalBarCrossSectionArea",
13210                "TransverseBarCrossSectionArea",
13211                "LongitudinalBarSpacing",
13212                "TransverseBarSpacing",
13213                "BendingShapeCode",
13214                "BendingParameters",
13215            ],
13216            Self::IfcRelAdheresToElement => &[
13217                "GlobalId",
13218                "OwnerHistory",
13219                "Name",
13220                "Description",
13221                "RelatingElement",
13222                "RelatedSurfaceFeatures",
13223            ],
13224            Self::IfcRelAggregates => &[
13225                "GlobalId",
13226                "OwnerHistory",
13227                "Name",
13228                "Description",
13229                "RelatingObject",
13230                "RelatedObjects",
13231            ],
13232            Self::IfcRelAssigns => &[
13233                "GlobalId",
13234                "OwnerHistory",
13235                "Name",
13236                "Description",
13237                "RelatedObjects",
13238                "RelatedObjectsType",
13239            ],
13240            Self::IfcRelAssignsToActor => &[
13241                "GlobalId",
13242                "OwnerHistory",
13243                "Name",
13244                "Description",
13245                "RelatedObjects",
13246                "RelatedObjectsType",
13247                "RelatingActor",
13248                "ActingRole",
13249            ],
13250            Self::IfcRelAssignsToControl => &[
13251                "GlobalId",
13252                "OwnerHistory",
13253                "Name",
13254                "Description",
13255                "RelatedObjects",
13256                "RelatedObjectsType",
13257                "RelatingControl",
13258            ],
13259            Self::IfcRelAssignsToGroup => &[
13260                "GlobalId",
13261                "OwnerHistory",
13262                "Name",
13263                "Description",
13264                "RelatedObjects",
13265                "RelatedObjectsType",
13266                "RelatingGroup",
13267            ],
13268            Self::IfcRelAssignsToGroupByFactor => &[
13269                "GlobalId",
13270                "OwnerHistory",
13271                "Name",
13272                "Description",
13273                "RelatedObjects",
13274                "RelatedObjectsType",
13275                "RelatingGroup",
13276                "Factor",
13277            ],
13278            Self::IfcRelAssignsToProcess => &[
13279                "GlobalId",
13280                "OwnerHistory",
13281                "Name",
13282                "Description",
13283                "RelatedObjects",
13284                "RelatedObjectsType",
13285                "RelatingProcess",
13286                "QuantityInProcess",
13287            ],
13288            Self::IfcRelAssignsToProduct => &[
13289                "GlobalId",
13290                "OwnerHistory",
13291                "Name",
13292                "Description",
13293                "RelatedObjects",
13294                "RelatedObjectsType",
13295                "RelatingProduct",
13296            ],
13297            Self::IfcRelAssignsToResource => &[
13298                "GlobalId",
13299                "OwnerHistory",
13300                "Name",
13301                "Description",
13302                "RelatedObjects",
13303                "RelatedObjectsType",
13304                "RelatingResource",
13305            ],
13306            Self::IfcRelAssociates => &[
13307                "GlobalId",
13308                "OwnerHistory",
13309                "Name",
13310                "Description",
13311                "RelatedObjects",
13312            ],
13313            Self::IfcRelAssociatesApproval => &[
13314                "GlobalId",
13315                "OwnerHistory",
13316                "Name",
13317                "Description",
13318                "RelatedObjects",
13319                "RelatingApproval",
13320            ],
13321            Self::IfcRelAssociatesClassification => &[
13322                "GlobalId",
13323                "OwnerHistory",
13324                "Name",
13325                "Description",
13326                "RelatedObjects",
13327                "RelatingClassification",
13328            ],
13329            Self::IfcRelAssociatesConstraint => &[
13330                "GlobalId",
13331                "OwnerHistory",
13332                "Name",
13333                "Description",
13334                "RelatedObjects",
13335                "Intent",
13336                "RelatingConstraint",
13337            ],
13338            Self::IfcRelAssociatesDocument => &[
13339                "GlobalId",
13340                "OwnerHistory",
13341                "Name",
13342                "Description",
13343                "RelatedObjects",
13344                "RelatingDocument",
13345            ],
13346            Self::IfcRelAssociatesLibrary => &[
13347                "GlobalId",
13348                "OwnerHistory",
13349                "Name",
13350                "Description",
13351                "RelatedObjects",
13352                "RelatingLibrary",
13353            ],
13354            Self::IfcRelAssociatesMaterial => &[
13355                "GlobalId",
13356                "OwnerHistory",
13357                "Name",
13358                "Description",
13359                "RelatedObjects",
13360                "RelatingMaterial",
13361            ],
13362            Self::IfcRelAssociatesProfileDef => &[
13363                "GlobalId",
13364                "OwnerHistory",
13365                "Name",
13366                "Description",
13367                "RelatedObjects",
13368                "RelatingProfileDef",
13369            ],
13370            Self::IfcRelConnects => &["GlobalId", "OwnerHistory", "Name", "Description"],
13371            Self::IfcRelConnectsElements => &[
13372                "GlobalId",
13373                "OwnerHistory",
13374                "Name",
13375                "Description",
13376                "ConnectionGeometry",
13377                "RelatingElement",
13378                "RelatedElement",
13379            ],
13380            Self::IfcRelConnectsPathElements => &[
13381                "GlobalId",
13382                "OwnerHistory",
13383                "Name",
13384                "Description",
13385                "ConnectionGeometry",
13386                "RelatingElement",
13387                "RelatedElement",
13388                "RelatingPriorities",
13389                "RelatedPriorities",
13390                "RelatedConnectionType",
13391                "RelatingConnectionType",
13392            ],
13393            Self::IfcRelConnectsPortToElement => &[
13394                "GlobalId",
13395                "OwnerHistory",
13396                "Name",
13397                "Description",
13398                "RelatingPort",
13399                "RelatedElement",
13400            ],
13401            Self::IfcRelConnectsPorts => &[
13402                "GlobalId",
13403                "OwnerHistory",
13404                "Name",
13405                "Description",
13406                "RelatingPort",
13407                "RelatedPort",
13408                "RealizingElement",
13409            ],
13410            Self::IfcRelConnectsStructuralActivity => &[
13411                "GlobalId",
13412                "OwnerHistory",
13413                "Name",
13414                "Description",
13415                "RelatingElement",
13416                "RelatedStructuralActivity",
13417            ],
13418            Self::IfcRelConnectsStructuralMember => &[
13419                "GlobalId",
13420                "OwnerHistory",
13421                "Name",
13422                "Description",
13423                "RelatingStructuralMember",
13424                "RelatedStructuralConnection",
13425                "AppliedCondition",
13426                "AdditionalConditions",
13427                "SupportedLength",
13428                "ConditionCoordinateSystem",
13429            ],
13430            Self::IfcRelConnectsWithEccentricity => &[
13431                "GlobalId",
13432                "OwnerHistory",
13433                "Name",
13434                "Description",
13435                "RelatingStructuralMember",
13436                "RelatedStructuralConnection",
13437                "AppliedCondition",
13438                "AdditionalConditions",
13439                "SupportedLength",
13440                "ConditionCoordinateSystem",
13441                "ConnectionConstraint",
13442            ],
13443            Self::IfcRelConnectsWithRealizingElements => &[
13444                "GlobalId",
13445                "OwnerHistory",
13446                "Name",
13447                "Description",
13448                "ConnectionGeometry",
13449                "RelatingElement",
13450                "RelatedElement",
13451                "RealizingElements",
13452                "ConnectionType",
13453            ],
13454            Self::IfcRelContainedInSpatialStructure => &[
13455                "GlobalId",
13456                "OwnerHistory",
13457                "Name",
13458                "Description",
13459                "RelatedElements",
13460                "RelatingStructure",
13461            ],
13462            Self::IfcRelCoversBldgElements => &[
13463                "GlobalId",
13464                "OwnerHistory",
13465                "Name",
13466                "Description",
13467                "RelatingBuildingElement",
13468                "RelatedCoverings",
13469            ],
13470            Self::IfcRelCoversSpaces => &[
13471                "GlobalId",
13472                "OwnerHistory",
13473                "Name",
13474                "Description",
13475                "RelatingSpace",
13476                "RelatedCoverings",
13477            ],
13478            Self::IfcRelDeclares => &[
13479                "GlobalId",
13480                "OwnerHistory",
13481                "Name",
13482                "Description",
13483                "RelatingContext",
13484                "RelatedDefinitions",
13485            ],
13486            Self::IfcRelDecomposes => &["GlobalId", "OwnerHistory", "Name", "Description"],
13487            Self::IfcRelDefines => &["GlobalId", "OwnerHistory", "Name", "Description"],
13488            Self::IfcRelDefinesByObject => &[
13489                "GlobalId",
13490                "OwnerHistory",
13491                "Name",
13492                "Description",
13493                "RelatedObjects",
13494                "RelatingObject",
13495            ],
13496            Self::IfcRelDefinesByProperties => &[
13497                "GlobalId",
13498                "OwnerHistory",
13499                "Name",
13500                "Description",
13501                "RelatedObjects",
13502                "RelatingPropertyDefinition",
13503            ],
13504            Self::IfcRelDefinesByTemplate => &[
13505                "GlobalId",
13506                "OwnerHistory",
13507                "Name",
13508                "Description",
13509                "RelatedPropertySets",
13510                "RelatingTemplate",
13511            ],
13512            Self::IfcRelDefinesByType => &[
13513                "GlobalId",
13514                "OwnerHistory",
13515                "Name",
13516                "Description",
13517                "RelatedObjects",
13518                "RelatingType",
13519            ],
13520            Self::IfcRelFillsElement => &[
13521                "GlobalId",
13522                "OwnerHistory",
13523                "Name",
13524                "Description",
13525                "RelatingOpeningElement",
13526                "RelatedBuildingElement",
13527            ],
13528            Self::IfcRelFlowControlElements => &[
13529                "GlobalId",
13530                "OwnerHistory",
13531                "Name",
13532                "Description",
13533                "RelatedControlElements",
13534                "RelatingFlowElement",
13535            ],
13536            Self::IfcRelInterferesElements => &[
13537                "GlobalId",
13538                "OwnerHistory",
13539                "Name",
13540                "Description",
13541                "RelatingElement",
13542                "RelatedElement",
13543                "InterferenceGeometry",
13544                "InterferenceType",
13545                "ImpliedOrder",
13546                "InterferenceSpace",
13547            ],
13548            Self::IfcRelNests => &[
13549                "GlobalId",
13550                "OwnerHistory",
13551                "Name",
13552                "Description",
13553                "RelatingObject",
13554                "RelatedObjects",
13555            ],
13556            Self::IfcRelPositions => &[
13557                "GlobalId",
13558                "OwnerHistory",
13559                "Name",
13560                "Description",
13561                "RelatingPositioningElement",
13562                "RelatedProducts",
13563            ],
13564            Self::IfcRelProjectsElement => &[
13565                "GlobalId",
13566                "OwnerHistory",
13567                "Name",
13568                "Description",
13569                "RelatingElement",
13570                "RelatedFeatureElement",
13571            ],
13572            Self::IfcRelReferencedInSpatialStructure => &[
13573                "GlobalId",
13574                "OwnerHistory",
13575                "Name",
13576                "Description",
13577                "RelatedElements",
13578                "RelatingStructure",
13579            ],
13580            Self::IfcRelSequence => &[
13581                "GlobalId",
13582                "OwnerHistory",
13583                "Name",
13584                "Description",
13585                "RelatingProcess",
13586                "RelatedProcess",
13587                "TimeLag",
13588                "SequenceType",
13589                "UserDefinedSequenceType",
13590            ],
13591            Self::IfcRelServicesBuildings => &[
13592                "GlobalId",
13593                "OwnerHistory",
13594                "Name",
13595                "Description",
13596                "RelatingSystem",
13597                "RelatedBuildings",
13598            ],
13599            Self::IfcRelSpaceBoundary => &[
13600                "GlobalId",
13601                "OwnerHistory",
13602                "Name",
13603                "Description",
13604                "RelatingSpace",
13605                "RelatedBuildingElement",
13606                "ConnectionGeometry",
13607                "PhysicalOrVirtualBoundary",
13608                "InternalOrExternalBoundary",
13609            ],
13610            Self::IfcRelSpaceBoundary1stLevel => &[
13611                "GlobalId",
13612                "OwnerHistory",
13613                "Name",
13614                "Description",
13615                "RelatingSpace",
13616                "RelatedBuildingElement",
13617                "ConnectionGeometry",
13618                "PhysicalOrVirtualBoundary",
13619                "InternalOrExternalBoundary",
13620                "ParentBoundary",
13621            ],
13622            Self::IfcRelSpaceBoundary2ndLevel => &[
13623                "GlobalId",
13624                "OwnerHistory",
13625                "Name",
13626                "Description",
13627                "RelatingSpace",
13628                "RelatedBuildingElement",
13629                "ConnectionGeometry",
13630                "PhysicalOrVirtualBoundary",
13631                "InternalOrExternalBoundary",
13632                "ParentBoundary",
13633                "CorrespondingBoundary",
13634            ],
13635            Self::IfcRelVoidsElement => &[
13636                "GlobalId",
13637                "OwnerHistory",
13638                "Name",
13639                "Description",
13640                "RelatingBuildingElement",
13641                "RelatedOpeningElement",
13642            ],
13643            Self::IfcRelationship => &["GlobalId", "OwnerHistory", "Name", "Description"],
13644            Self::IfcReparametrisedCompositeCurveSegment => {
13645                &["Transition", "SameSense", "ParentCurve", "ParamLength"]
13646            }
13647            Self::IfcRepresentation => &[
13648                "ContextOfItems",
13649                "RepresentationIdentifier",
13650                "RepresentationType",
13651                "Items",
13652            ],
13653            Self::IfcRepresentationContext => &["ContextIdentifier", "ContextType"],
13654            Self::IfcRepresentationItem => &[],
13655            Self::IfcRepresentationMap => &["MappingOrigin", "MappedRepresentation"],
13656            Self::IfcResource => &[
13657                "GlobalId",
13658                "OwnerHistory",
13659                "Name",
13660                "Description",
13661                "ObjectType",
13662                "Identification",
13663                "LongDescription",
13664            ],
13665            Self::IfcResourceApprovalRelationship => &[
13666                "Name",
13667                "Description",
13668                "RelatedResourceObjects",
13669                "RelatingApproval",
13670            ],
13671            Self::IfcResourceConstraintRelationship => &[
13672                "Name",
13673                "Description",
13674                "RelatingConstraint",
13675                "RelatedResourceObjects",
13676            ],
13677            Self::IfcResourceLevelRelationship => &["Name", "Description"],
13678            Self::IfcResourceTime => &[
13679                "Name",
13680                "DataOrigin",
13681                "UserDefinedDataOrigin",
13682                "ScheduleWork",
13683                "ScheduleUsage",
13684                "ScheduleStart",
13685                "ScheduleFinish",
13686                "ScheduleContour",
13687                "LevelingDelay",
13688                "IsOverAllocated",
13689                "StatusTime",
13690                "ActualWork",
13691                "ActualUsage",
13692                "ActualStart",
13693                "ActualFinish",
13694                "RemainingWork",
13695                "RemainingUsage",
13696                "Completion",
13697            ],
13698            Self::IfcRevolvedAreaSolid => &["SweptArea", "Position", "Axis", "Angle"],
13699            Self::IfcRevolvedAreaSolidTapered => {
13700                &["SweptArea", "Position", "Axis", "Angle", "EndSweptArea"]
13701            }
13702            Self::IfcRightCircularCone => &["Position", "Height", "BottomRadius"],
13703            Self::IfcRightCircularCylinder => &["Position", "Height", "Radius"],
13704            Self::IfcRigidOperation => &[
13705                "SourceCRS",
13706                "TargetCRS",
13707                "FirstCoordinate",
13708                "SecondCoordinate",
13709                "Height",
13710            ],
13711            Self::IfcRoad => &[
13712                "GlobalId",
13713                "OwnerHistory",
13714                "Name",
13715                "Description",
13716                "ObjectType",
13717                "ObjectPlacement",
13718                "Representation",
13719                "LongName",
13720                "CompositionType",
13721                "PredefinedType",
13722            ],
13723            Self::IfcRoadPart => &[
13724                "GlobalId",
13725                "OwnerHistory",
13726                "Name",
13727                "Description",
13728                "ObjectType",
13729                "ObjectPlacement",
13730                "Representation",
13731                "LongName",
13732                "CompositionType",
13733                "UsageType",
13734                "PredefinedType",
13735            ],
13736            Self::IfcRoof => &[
13737                "GlobalId",
13738                "OwnerHistory",
13739                "Name",
13740                "Description",
13741                "ObjectType",
13742                "ObjectPlacement",
13743                "Representation",
13744                "Tag",
13745                "PredefinedType",
13746            ],
13747            Self::IfcRoofType => &[
13748                "GlobalId",
13749                "OwnerHistory",
13750                "Name",
13751                "Description",
13752                "ApplicableOccurrence",
13753                "HasPropertySets",
13754                "RepresentationMaps",
13755                "Tag",
13756                "ElementType",
13757                "PredefinedType",
13758            ],
13759            Self::IfcRoot => &["GlobalId", "OwnerHistory", "Name", "Description"],
13760            Self::IfcRoundedRectangleProfileDef => &[
13761                "ProfileType",
13762                "ProfileName",
13763                "Position",
13764                "XDim",
13765                "YDim",
13766                "RoundingRadius",
13767            ],
13768            Self::IfcSIUnit => &["Dimensions", "UnitType", "Prefix", "Name"],
13769            Self::IfcSanitaryTerminal => &[
13770                "GlobalId",
13771                "OwnerHistory",
13772                "Name",
13773                "Description",
13774                "ObjectType",
13775                "ObjectPlacement",
13776                "Representation",
13777                "Tag",
13778                "PredefinedType",
13779            ],
13780            Self::IfcSanitaryTerminalType => &[
13781                "GlobalId",
13782                "OwnerHistory",
13783                "Name",
13784                "Description",
13785                "ApplicableOccurrence",
13786                "HasPropertySets",
13787                "RepresentationMaps",
13788                "Tag",
13789                "ElementType",
13790                "PredefinedType",
13791            ],
13792            Self::IfcSchedulingTime => &["Name", "DataOrigin", "UserDefinedDataOrigin"],
13793            Self::IfcSeamCurve => &["Curve3D", "AssociatedGeometry", "MasterRepresentation"],
13794            Self::IfcSecondOrderPolynomialSpiral => {
13795                &["Position", "QuadraticTerm", "LinearTerm", "ConstantTerm"]
13796            }
13797            Self::IfcSectionProperties => &["SectionType", "StartProfile", "EndProfile"],
13798            Self::IfcSectionReinforcementProperties => &[
13799                "LongitudinalStartPosition",
13800                "LongitudinalEndPosition",
13801                "TransversePosition",
13802                "ReinforcementRole",
13803                "SectionDefinition",
13804                "CrossSectionReinforcementDefinitions",
13805            ],
13806            Self::IfcSectionedSolid => &["Directrix", "CrossSections"],
13807            Self::IfcSectionedSolidHorizontal => {
13808                &["Directrix", "CrossSections", "CrossSectionPositions"]
13809            }
13810            Self::IfcSectionedSpine => &["SpineCurve", "CrossSections", "CrossSectionPositions"],
13811            Self::IfcSectionedSurface => &["Directrix", "CrossSectionPositions", "CrossSections"],
13812            Self::IfcSegment => &["Transition"],
13813            Self::IfcSegmentedReferenceCurve => {
13814                &["Segments", "SelfIntersect", "BaseCurve", "EndPoint"]
13815            }
13816            Self::IfcSensor => &[
13817                "GlobalId",
13818                "OwnerHistory",
13819                "Name",
13820                "Description",
13821                "ObjectType",
13822                "ObjectPlacement",
13823                "Representation",
13824                "Tag",
13825                "PredefinedType",
13826            ],
13827            Self::IfcSensorType => &[
13828                "GlobalId",
13829                "OwnerHistory",
13830                "Name",
13831                "Description",
13832                "ApplicableOccurrence",
13833                "HasPropertySets",
13834                "RepresentationMaps",
13835                "Tag",
13836                "ElementType",
13837                "PredefinedType",
13838            ],
13839            Self::IfcSeventhOrderPolynomialSpiral => &[
13840                "Position",
13841                "SepticTerm",
13842                "SexticTerm",
13843                "QuinticTerm",
13844                "QuarticTerm",
13845                "CubicTerm",
13846                "QuadraticTerm",
13847                "LinearTerm",
13848                "ConstantTerm",
13849            ],
13850            Self::IfcShadingDevice => &[
13851                "GlobalId",
13852                "OwnerHistory",
13853                "Name",
13854                "Description",
13855                "ObjectType",
13856                "ObjectPlacement",
13857                "Representation",
13858                "Tag",
13859                "PredefinedType",
13860            ],
13861            Self::IfcShadingDeviceType => &[
13862                "GlobalId",
13863                "OwnerHistory",
13864                "Name",
13865                "Description",
13866                "ApplicableOccurrence",
13867                "HasPropertySets",
13868                "RepresentationMaps",
13869                "Tag",
13870                "ElementType",
13871                "PredefinedType",
13872            ],
13873            Self::IfcShapeAspect => &[
13874                "ShapeRepresentations",
13875                "Name",
13876                "Description",
13877                "ProductDefinitional",
13878                "PartOfProductDefinitionShape",
13879            ],
13880            Self::IfcShapeModel => &[
13881                "ContextOfItems",
13882                "RepresentationIdentifier",
13883                "RepresentationType",
13884                "Items",
13885            ],
13886            Self::IfcShapeRepresentation => &[
13887                "ContextOfItems",
13888                "RepresentationIdentifier",
13889                "RepresentationType",
13890                "Items",
13891            ],
13892            Self::IfcShellBasedSurfaceModel => &["SbsmBoundary"],
13893            Self::IfcSign => &[
13894                "GlobalId",
13895                "OwnerHistory",
13896                "Name",
13897                "Description",
13898                "ObjectType",
13899                "ObjectPlacement",
13900                "Representation",
13901                "Tag",
13902                "PredefinedType",
13903            ],
13904            Self::IfcSignType => &[
13905                "GlobalId",
13906                "OwnerHistory",
13907                "Name",
13908                "Description",
13909                "ApplicableOccurrence",
13910                "HasPropertySets",
13911                "RepresentationMaps",
13912                "Tag",
13913                "ElementType",
13914                "PredefinedType",
13915            ],
13916            Self::IfcSignal => &[
13917                "GlobalId",
13918                "OwnerHistory",
13919                "Name",
13920                "Description",
13921                "ObjectType",
13922                "ObjectPlacement",
13923                "Representation",
13924                "Tag",
13925                "PredefinedType",
13926            ],
13927            Self::IfcSignalType => &[
13928                "GlobalId",
13929                "OwnerHistory",
13930                "Name",
13931                "Description",
13932                "ApplicableOccurrence",
13933                "HasPropertySets",
13934                "RepresentationMaps",
13935                "Tag",
13936                "ElementType",
13937                "PredefinedType",
13938            ],
13939            Self::IfcSimpleProperty => &["Name", "Specification"],
13940            Self::IfcSimplePropertyTemplate => &[
13941                "GlobalId",
13942                "OwnerHistory",
13943                "Name",
13944                "Description",
13945                "TemplateType",
13946                "PrimaryMeasureType",
13947                "SecondaryMeasureType",
13948                "Enumerators",
13949                "PrimaryUnit",
13950                "SecondaryUnit",
13951                "Expression",
13952                "AccessState",
13953            ],
13954            Self::IfcSineSpiral => &["Position", "SineTerm", "LinearTerm", "ConstantTerm"],
13955            Self::IfcSite => &[
13956                "GlobalId",
13957                "OwnerHistory",
13958                "Name",
13959                "Description",
13960                "ObjectType",
13961                "ObjectPlacement",
13962                "Representation",
13963                "LongName",
13964                "CompositionType",
13965                "RefLatitude",
13966                "RefLongitude",
13967                "RefElevation",
13968                "LandTitleNumber",
13969                "SiteAddress",
13970            ],
13971            Self::IfcSlab => &[
13972                "GlobalId",
13973                "OwnerHistory",
13974                "Name",
13975                "Description",
13976                "ObjectType",
13977                "ObjectPlacement",
13978                "Representation",
13979                "Tag",
13980                "PredefinedType",
13981            ],
13982            Self::IfcSlabType => &[
13983                "GlobalId",
13984                "OwnerHistory",
13985                "Name",
13986                "Description",
13987                "ApplicableOccurrence",
13988                "HasPropertySets",
13989                "RepresentationMaps",
13990                "Tag",
13991                "ElementType",
13992                "PredefinedType",
13993            ],
13994            Self::IfcSlippageConnectionCondition => {
13995                &["Name", "SlippageX", "SlippageY", "SlippageZ"]
13996            }
13997            Self::IfcSolarDevice => &[
13998                "GlobalId",
13999                "OwnerHistory",
14000                "Name",
14001                "Description",
14002                "ObjectType",
14003                "ObjectPlacement",
14004                "Representation",
14005                "Tag",
14006                "PredefinedType",
14007            ],
14008            Self::IfcSolarDeviceType => &[
14009                "GlobalId",
14010                "OwnerHistory",
14011                "Name",
14012                "Description",
14013                "ApplicableOccurrence",
14014                "HasPropertySets",
14015                "RepresentationMaps",
14016                "Tag",
14017                "ElementType",
14018                "PredefinedType",
14019            ],
14020            Self::IfcSolidModel => &[],
14021            Self::IfcSpace => &[
14022                "GlobalId",
14023                "OwnerHistory",
14024                "Name",
14025                "Description",
14026                "ObjectType",
14027                "ObjectPlacement",
14028                "Representation",
14029                "LongName",
14030                "CompositionType",
14031                "PredefinedType",
14032                "ElevationWithFlooring",
14033            ],
14034            Self::IfcSpaceHeater => &[
14035                "GlobalId",
14036                "OwnerHistory",
14037                "Name",
14038                "Description",
14039                "ObjectType",
14040                "ObjectPlacement",
14041                "Representation",
14042                "Tag",
14043                "PredefinedType",
14044            ],
14045            Self::IfcSpaceHeaterType => &[
14046                "GlobalId",
14047                "OwnerHistory",
14048                "Name",
14049                "Description",
14050                "ApplicableOccurrence",
14051                "HasPropertySets",
14052                "RepresentationMaps",
14053                "Tag",
14054                "ElementType",
14055                "PredefinedType",
14056            ],
14057            Self::IfcSpaceType => &[
14058                "GlobalId",
14059                "OwnerHistory",
14060                "Name",
14061                "Description",
14062                "ApplicableOccurrence",
14063                "HasPropertySets",
14064                "RepresentationMaps",
14065                "Tag",
14066                "ElementType",
14067                "PredefinedType",
14068                "LongName",
14069            ],
14070            Self::IfcSpatialElement => &[
14071                "GlobalId",
14072                "OwnerHistory",
14073                "Name",
14074                "Description",
14075                "ObjectType",
14076                "ObjectPlacement",
14077                "Representation",
14078                "LongName",
14079            ],
14080            Self::IfcSpatialElementType => &[
14081                "GlobalId",
14082                "OwnerHistory",
14083                "Name",
14084                "Description",
14085                "ApplicableOccurrence",
14086                "HasPropertySets",
14087                "RepresentationMaps",
14088                "Tag",
14089                "ElementType",
14090            ],
14091            Self::IfcSpatialStructureElement => &[
14092                "GlobalId",
14093                "OwnerHistory",
14094                "Name",
14095                "Description",
14096                "ObjectType",
14097                "ObjectPlacement",
14098                "Representation",
14099                "LongName",
14100                "CompositionType",
14101            ],
14102            Self::IfcSpatialStructureElementType => &[
14103                "GlobalId",
14104                "OwnerHistory",
14105                "Name",
14106                "Description",
14107                "ApplicableOccurrence",
14108                "HasPropertySets",
14109                "RepresentationMaps",
14110                "Tag",
14111                "ElementType",
14112            ],
14113            Self::IfcSpatialZone => &[
14114                "GlobalId",
14115                "OwnerHistory",
14116                "Name",
14117                "Description",
14118                "ObjectType",
14119                "ObjectPlacement",
14120                "Representation",
14121                "LongName",
14122                "PredefinedType",
14123            ],
14124            Self::IfcSpatialZoneType => &[
14125                "GlobalId",
14126                "OwnerHistory",
14127                "Name",
14128                "Description",
14129                "ApplicableOccurrence",
14130                "HasPropertySets",
14131                "RepresentationMaps",
14132                "Tag",
14133                "ElementType",
14134                "PredefinedType",
14135                "LongName",
14136            ],
14137            Self::IfcSphere => &["Position", "Radius"],
14138            Self::IfcSphericalSurface => &["Position", "Radius"],
14139            Self::IfcSpiral => &["Position"],
14140            Self::IfcStackTerminal => &[
14141                "GlobalId",
14142                "OwnerHistory",
14143                "Name",
14144                "Description",
14145                "ObjectType",
14146                "ObjectPlacement",
14147                "Representation",
14148                "Tag",
14149                "PredefinedType",
14150            ],
14151            Self::IfcStackTerminalType => &[
14152                "GlobalId",
14153                "OwnerHistory",
14154                "Name",
14155                "Description",
14156                "ApplicableOccurrence",
14157                "HasPropertySets",
14158                "RepresentationMaps",
14159                "Tag",
14160                "ElementType",
14161                "PredefinedType",
14162            ],
14163            Self::IfcStair => &[
14164                "GlobalId",
14165                "OwnerHistory",
14166                "Name",
14167                "Description",
14168                "ObjectType",
14169                "ObjectPlacement",
14170                "Representation",
14171                "Tag",
14172                "PredefinedType",
14173            ],
14174            Self::IfcStairFlight => &[
14175                "GlobalId",
14176                "OwnerHistory",
14177                "Name",
14178                "Description",
14179                "ObjectType",
14180                "ObjectPlacement",
14181                "Representation",
14182                "Tag",
14183                "NumberOfRisers",
14184                "NumberOfTreads",
14185                "RiserHeight",
14186                "TreadLength",
14187                "PredefinedType",
14188            ],
14189            Self::IfcStairFlightType => &[
14190                "GlobalId",
14191                "OwnerHistory",
14192                "Name",
14193                "Description",
14194                "ApplicableOccurrence",
14195                "HasPropertySets",
14196                "RepresentationMaps",
14197                "Tag",
14198                "ElementType",
14199                "PredefinedType",
14200            ],
14201            Self::IfcStairType => &[
14202                "GlobalId",
14203                "OwnerHistory",
14204                "Name",
14205                "Description",
14206                "ApplicableOccurrence",
14207                "HasPropertySets",
14208                "RepresentationMaps",
14209                "Tag",
14210                "ElementType",
14211                "PredefinedType",
14212            ],
14213            Self::IfcStructuralAction => &[
14214                "GlobalId",
14215                "OwnerHistory",
14216                "Name",
14217                "Description",
14218                "ObjectType",
14219                "ObjectPlacement",
14220                "Representation",
14221                "AppliedLoad",
14222                "GlobalOrLocal",
14223                "DestabilizingLoad",
14224            ],
14225            Self::IfcStructuralActivity => &[
14226                "GlobalId",
14227                "OwnerHistory",
14228                "Name",
14229                "Description",
14230                "ObjectType",
14231                "ObjectPlacement",
14232                "Representation",
14233                "AppliedLoad",
14234                "GlobalOrLocal",
14235            ],
14236            Self::IfcStructuralAnalysisModel => &[
14237                "GlobalId",
14238                "OwnerHistory",
14239                "Name",
14240                "Description",
14241                "ObjectType",
14242                "PredefinedType",
14243                "OrientationOf2DPlane",
14244                "LoadedBy",
14245                "HasResults",
14246                "SharedPlacement",
14247            ],
14248            Self::IfcStructuralConnection => &[
14249                "GlobalId",
14250                "OwnerHistory",
14251                "Name",
14252                "Description",
14253                "ObjectType",
14254                "ObjectPlacement",
14255                "Representation",
14256                "AppliedCondition",
14257            ],
14258            Self::IfcStructuralConnectionCondition => &["Name"],
14259            Self::IfcStructuralCurveAction => &[
14260                "GlobalId",
14261                "OwnerHistory",
14262                "Name",
14263                "Description",
14264                "ObjectType",
14265                "ObjectPlacement",
14266                "Representation",
14267                "AppliedLoad",
14268                "GlobalOrLocal",
14269                "DestabilizingLoad",
14270                "ProjectedOrTrue",
14271                "PredefinedType",
14272            ],
14273            Self::IfcStructuralCurveConnection => &[
14274                "GlobalId",
14275                "OwnerHistory",
14276                "Name",
14277                "Description",
14278                "ObjectType",
14279                "ObjectPlacement",
14280                "Representation",
14281                "AppliedCondition",
14282                "AxisDirection",
14283            ],
14284            Self::IfcStructuralCurveMember => &[
14285                "GlobalId",
14286                "OwnerHistory",
14287                "Name",
14288                "Description",
14289                "ObjectType",
14290                "ObjectPlacement",
14291                "Representation",
14292                "PredefinedType",
14293                "Axis",
14294            ],
14295            Self::IfcStructuralCurveMemberVarying => &[
14296                "GlobalId",
14297                "OwnerHistory",
14298                "Name",
14299                "Description",
14300                "ObjectType",
14301                "ObjectPlacement",
14302                "Representation",
14303                "PredefinedType",
14304                "Axis",
14305            ],
14306            Self::IfcStructuralCurveReaction => &[
14307                "GlobalId",
14308                "OwnerHistory",
14309                "Name",
14310                "Description",
14311                "ObjectType",
14312                "ObjectPlacement",
14313                "Representation",
14314                "AppliedLoad",
14315                "GlobalOrLocal",
14316                "PredefinedType",
14317            ],
14318            Self::IfcStructuralItem => &[
14319                "GlobalId",
14320                "OwnerHistory",
14321                "Name",
14322                "Description",
14323                "ObjectType",
14324                "ObjectPlacement",
14325                "Representation",
14326            ],
14327            Self::IfcStructuralLinearAction => &[
14328                "GlobalId",
14329                "OwnerHistory",
14330                "Name",
14331                "Description",
14332                "ObjectType",
14333                "ObjectPlacement",
14334                "Representation",
14335                "AppliedLoad",
14336                "GlobalOrLocal",
14337                "DestabilizingLoad",
14338                "ProjectedOrTrue",
14339                "PredefinedType",
14340            ],
14341            Self::IfcStructuralLoad => &["Name"],
14342            Self::IfcStructuralLoadCase => &[
14343                "GlobalId",
14344                "OwnerHistory",
14345                "Name",
14346                "Description",
14347                "ObjectType",
14348                "PredefinedType",
14349                "ActionType",
14350                "ActionSource",
14351                "Coefficient",
14352                "Purpose",
14353                "SelfWeightCoefficients",
14354            ],
14355            Self::IfcStructuralLoadConfiguration => &["Name", "Values", "Locations"],
14356            Self::IfcStructuralLoadGroup => &[
14357                "GlobalId",
14358                "OwnerHistory",
14359                "Name",
14360                "Description",
14361                "ObjectType",
14362                "PredefinedType",
14363                "ActionType",
14364                "ActionSource",
14365                "Coefficient",
14366                "Purpose",
14367            ],
14368            Self::IfcStructuralLoadLinearForce => &[
14369                "Name",
14370                "LinearForceX",
14371                "LinearForceY",
14372                "LinearForceZ",
14373                "LinearMomentX",
14374                "LinearMomentY",
14375                "LinearMomentZ",
14376            ],
14377            Self::IfcStructuralLoadOrResult => &["Name"],
14378            Self::IfcStructuralLoadPlanarForce => {
14379                &["Name", "PlanarForceX", "PlanarForceY", "PlanarForceZ"]
14380            }
14381            Self::IfcStructuralLoadSingleDisplacement => &[
14382                "Name",
14383                "DisplacementX",
14384                "DisplacementY",
14385                "DisplacementZ",
14386                "RotationalDisplacementRX",
14387                "RotationalDisplacementRY",
14388                "RotationalDisplacementRZ",
14389            ],
14390            Self::IfcStructuralLoadSingleDisplacementDistortion => &[
14391                "Name",
14392                "DisplacementX",
14393                "DisplacementY",
14394                "DisplacementZ",
14395                "RotationalDisplacementRX",
14396                "RotationalDisplacementRY",
14397                "RotationalDisplacementRZ",
14398                "Distortion",
14399            ],
14400            Self::IfcStructuralLoadSingleForce => &[
14401                "Name", "ForceX", "ForceY", "ForceZ", "MomentX", "MomentY", "MomentZ",
14402            ],
14403            Self::IfcStructuralLoadSingleForceWarping => &[
14404                "Name",
14405                "ForceX",
14406                "ForceY",
14407                "ForceZ",
14408                "MomentX",
14409                "MomentY",
14410                "MomentZ",
14411                "WarpingMoment",
14412            ],
14413            Self::IfcStructuralLoadStatic => &["Name"],
14414            Self::IfcStructuralLoadTemperature => &["Name", "DeltaTConstant", "DeltaTY", "DeltaTZ"],
14415            Self::IfcStructuralMember => &[
14416                "GlobalId",
14417                "OwnerHistory",
14418                "Name",
14419                "Description",
14420                "ObjectType",
14421                "ObjectPlacement",
14422                "Representation",
14423            ],
14424            Self::IfcStructuralPlanarAction => &[
14425                "GlobalId",
14426                "OwnerHistory",
14427                "Name",
14428                "Description",
14429                "ObjectType",
14430                "ObjectPlacement",
14431                "Representation",
14432                "AppliedLoad",
14433                "GlobalOrLocal",
14434                "DestabilizingLoad",
14435                "ProjectedOrTrue",
14436                "PredefinedType",
14437            ],
14438            Self::IfcStructuralPointAction => &[
14439                "GlobalId",
14440                "OwnerHistory",
14441                "Name",
14442                "Description",
14443                "ObjectType",
14444                "ObjectPlacement",
14445                "Representation",
14446                "AppliedLoad",
14447                "GlobalOrLocal",
14448                "DestabilizingLoad",
14449            ],
14450            Self::IfcStructuralPointConnection => &[
14451                "GlobalId",
14452                "OwnerHistory",
14453                "Name",
14454                "Description",
14455                "ObjectType",
14456                "ObjectPlacement",
14457                "Representation",
14458                "AppliedCondition",
14459                "ConditionCoordinateSystem",
14460            ],
14461            Self::IfcStructuralPointReaction => &[
14462                "GlobalId",
14463                "OwnerHistory",
14464                "Name",
14465                "Description",
14466                "ObjectType",
14467                "ObjectPlacement",
14468                "Representation",
14469                "AppliedLoad",
14470                "GlobalOrLocal",
14471            ],
14472            Self::IfcStructuralReaction => &[
14473                "GlobalId",
14474                "OwnerHistory",
14475                "Name",
14476                "Description",
14477                "ObjectType",
14478                "ObjectPlacement",
14479                "Representation",
14480                "AppliedLoad",
14481                "GlobalOrLocal",
14482            ],
14483            Self::IfcStructuralResultGroup => &[
14484                "GlobalId",
14485                "OwnerHistory",
14486                "Name",
14487                "Description",
14488                "ObjectType",
14489                "TheoryType",
14490                "ResultForLoadGroup",
14491                "IsLinear",
14492            ],
14493            Self::IfcStructuralSurfaceAction => &[
14494                "GlobalId",
14495                "OwnerHistory",
14496                "Name",
14497                "Description",
14498                "ObjectType",
14499                "ObjectPlacement",
14500                "Representation",
14501                "AppliedLoad",
14502                "GlobalOrLocal",
14503                "DestabilizingLoad",
14504                "ProjectedOrTrue",
14505                "PredefinedType",
14506            ],
14507            Self::IfcStructuralSurfaceConnection => &[
14508                "GlobalId",
14509                "OwnerHistory",
14510                "Name",
14511                "Description",
14512                "ObjectType",
14513                "ObjectPlacement",
14514                "Representation",
14515                "AppliedCondition",
14516            ],
14517            Self::IfcStructuralSurfaceMember => &[
14518                "GlobalId",
14519                "OwnerHistory",
14520                "Name",
14521                "Description",
14522                "ObjectType",
14523                "ObjectPlacement",
14524                "Representation",
14525                "PredefinedType",
14526                "Thickness",
14527            ],
14528            Self::IfcStructuralSurfaceMemberVarying => &[
14529                "GlobalId",
14530                "OwnerHistory",
14531                "Name",
14532                "Description",
14533                "ObjectType",
14534                "ObjectPlacement",
14535                "Representation",
14536                "PredefinedType",
14537                "Thickness",
14538            ],
14539            Self::IfcStructuralSurfaceReaction => &[
14540                "GlobalId",
14541                "OwnerHistory",
14542                "Name",
14543                "Description",
14544                "ObjectType",
14545                "ObjectPlacement",
14546                "Representation",
14547                "AppliedLoad",
14548                "GlobalOrLocal",
14549                "PredefinedType",
14550            ],
14551            Self::IfcStyleModel => &[
14552                "ContextOfItems",
14553                "RepresentationIdentifier",
14554                "RepresentationType",
14555                "Items",
14556            ],
14557            Self::IfcStyledItem => &["Item", "Styles", "Name"],
14558            Self::IfcStyledRepresentation => &[
14559                "ContextOfItems",
14560                "RepresentationIdentifier",
14561                "RepresentationType",
14562                "Items",
14563            ],
14564            Self::IfcSubContractResource => &[
14565                "GlobalId",
14566                "OwnerHistory",
14567                "Name",
14568                "Description",
14569                "ObjectType",
14570                "Identification",
14571                "LongDescription",
14572                "Usage",
14573                "BaseCosts",
14574                "BaseQuantity",
14575                "PredefinedType",
14576            ],
14577            Self::IfcSubContractResourceType => &[
14578                "GlobalId",
14579                "OwnerHistory",
14580                "Name",
14581                "Description",
14582                "ApplicableOccurrence",
14583                "HasPropertySets",
14584                "Identification",
14585                "LongDescription",
14586                "ResourceType",
14587                "BaseCosts",
14588                "BaseQuantity",
14589                "PredefinedType",
14590            ],
14591            Self::IfcSubedge => &["EdgeStart", "EdgeEnd", "ParentEdge"],
14592            Self::IfcSurface => &[],
14593            Self::IfcSurfaceCurve => &["Curve3D", "AssociatedGeometry", "MasterRepresentation"],
14594            Self::IfcSurfaceCurveSweptAreaSolid => &[
14595                "SweptArea",
14596                "Position",
14597                "Directrix",
14598                "StartParam",
14599                "EndParam",
14600                "ReferenceSurface",
14601            ],
14602            Self::IfcSurfaceFeature => &[
14603                "GlobalId",
14604                "OwnerHistory",
14605                "Name",
14606                "Description",
14607                "ObjectType",
14608                "ObjectPlacement",
14609                "Representation",
14610                "Tag",
14611                "PredefinedType",
14612            ],
14613            Self::IfcSurfaceOfLinearExtrusion => {
14614                &["SweptCurve", "Position", "ExtrudedDirection", "Depth"]
14615            }
14616            Self::IfcSurfaceOfRevolution => &["SweptCurve", "Position", "AxisPosition"],
14617            Self::IfcSurfaceReinforcementArea => &[
14618                "Name",
14619                "SurfaceReinforcement1",
14620                "SurfaceReinforcement2",
14621                "ShearReinforcement",
14622            ],
14623            Self::IfcSurfaceStyle => &["Name", "Side", "Styles"],
14624            Self::IfcSurfaceStyleLighting => &[
14625                "DiffuseTransmissionColour",
14626                "DiffuseReflectionColour",
14627                "TransmissionColour",
14628                "ReflectanceColour",
14629            ],
14630            Self::IfcSurfaceStyleRefraction => &["RefractionIndex", "DispersionFactor"],
14631            Self::IfcSurfaceStyleRendering => &[
14632                "SurfaceColour",
14633                "Transparency",
14634                "DiffuseColour",
14635                "TransmissionColour",
14636                "DiffuseTransmissionColour",
14637                "ReflectionColour",
14638                "SpecularColour",
14639                "SpecularHighlight",
14640                "ReflectanceMethod",
14641            ],
14642            Self::IfcSurfaceStyleShading => &["SurfaceColour", "Transparency"],
14643            Self::IfcSurfaceStyleWithTextures => &["Textures"],
14644            Self::IfcSurfaceTexture => &[
14645                "RepeatS",
14646                "RepeatT",
14647                "Mode",
14648                "TextureTransform",
14649                "Parameter",
14650            ],
14651            Self::IfcSweptAreaSolid => &["SweptArea", "Position"],
14652            Self::IfcSweptDiskSolid => &[
14653                "Directrix",
14654                "Radius",
14655                "InnerRadius",
14656                "StartParam",
14657                "EndParam",
14658            ],
14659            Self::IfcSweptDiskSolidPolygonal => &[
14660                "Directrix",
14661                "Radius",
14662                "InnerRadius",
14663                "StartParam",
14664                "EndParam",
14665                "FilletRadius",
14666            ],
14667            Self::IfcSweptSurface => &["SweptCurve", "Position"],
14668            Self::IfcSwitchingDevice => &[
14669                "GlobalId",
14670                "OwnerHistory",
14671                "Name",
14672                "Description",
14673                "ObjectType",
14674                "ObjectPlacement",
14675                "Representation",
14676                "Tag",
14677                "PredefinedType",
14678            ],
14679            Self::IfcSwitchingDeviceType => &[
14680                "GlobalId",
14681                "OwnerHistory",
14682                "Name",
14683                "Description",
14684                "ApplicableOccurrence",
14685                "HasPropertySets",
14686                "RepresentationMaps",
14687                "Tag",
14688                "ElementType",
14689                "PredefinedType",
14690            ],
14691            Self::IfcSystem => &[
14692                "GlobalId",
14693                "OwnerHistory",
14694                "Name",
14695                "Description",
14696                "ObjectType",
14697            ],
14698            Self::IfcSystemFurnitureElement => &[
14699                "GlobalId",
14700                "OwnerHistory",
14701                "Name",
14702                "Description",
14703                "ObjectType",
14704                "ObjectPlacement",
14705                "Representation",
14706                "Tag",
14707                "PredefinedType",
14708            ],
14709            Self::IfcSystemFurnitureElementType => &[
14710                "GlobalId",
14711                "OwnerHistory",
14712                "Name",
14713                "Description",
14714                "ApplicableOccurrence",
14715                "HasPropertySets",
14716                "RepresentationMaps",
14717                "Tag",
14718                "ElementType",
14719                "PredefinedType",
14720            ],
14721            Self::IfcTShapeProfileDef => &[
14722                "ProfileType",
14723                "ProfileName",
14724                "Position",
14725                "Depth",
14726                "FlangeWidth",
14727                "WebThickness",
14728                "FlangeThickness",
14729                "FilletRadius",
14730                "FlangeEdgeRadius",
14731                "WebEdgeRadius",
14732                "WebSlope",
14733                "FlangeSlope",
14734            ],
14735            Self::IfcTable => &["Name", "Rows", "Columns"],
14736            Self::IfcTableColumn => &["Identifier", "Name", "Description", "Unit", "ReferencePath"],
14737            Self::IfcTableRow => &["RowCells", "IsHeading"],
14738            Self::IfcTank => &[
14739                "GlobalId",
14740                "OwnerHistory",
14741                "Name",
14742                "Description",
14743                "ObjectType",
14744                "ObjectPlacement",
14745                "Representation",
14746                "Tag",
14747                "PredefinedType",
14748            ],
14749            Self::IfcTankType => &[
14750                "GlobalId",
14751                "OwnerHistory",
14752                "Name",
14753                "Description",
14754                "ApplicableOccurrence",
14755                "HasPropertySets",
14756                "RepresentationMaps",
14757                "Tag",
14758                "ElementType",
14759                "PredefinedType",
14760            ],
14761            Self::IfcTask => &[
14762                "GlobalId",
14763                "OwnerHistory",
14764                "Name",
14765                "Description",
14766                "ObjectType",
14767                "Identification",
14768                "LongDescription",
14769                "Status",
14770                "WorkMethod",
14771                "IsMilestone",
14772                "Priority",
14773                "TaskTime",
14774                "PredefinedType",
14775            ],
14776            Self::IfcTaskTime => &[
14777                "Name",
14778                "DataOrigin",
14779                "UserDefinedDataOrigin",
14780                "DurationType",
14781                "ScheduleDuration",
14782                "ScheduleStart",
14783                "ScheduleFinish",
14784                "EarlyStart",
14785                "EarlyFinish",
14786                "LateStart",
14787                "LateFinish",
14788                "FreeFloat",
14789                "TotalFloat",
14790                "IsCritical",
14791                "StatusTime",
14792                "ActualDuration",
14793                "ActualStart",
14794                "ActualFinish",
14795                "RemainingTime",
14796                "Completion",
14797            ],
14798            Self::IfcTaskTimeRecurring => &[
14799                "Name",
14800                "DataOrigin",
14801                "UserDefinedDataOrigin",
14802                "DurationType",
14803                "ScheduleDuration",
14804                "ScheduleStart",
14805                "ScheduleFinish",
14806                "EarlyStart",
14807                "EarlyFinish",
14808                "LateStart",
14809                "LateFinish",
14810                "FreeFloat",
14811                "TotalFloat",
14812                "IsCritical",
14813                "StatusTime",
14814                "ActualDuration",
14815                "ActualStart",
14816                "ActualFinish",
14817                "RemainingTime",
14818                "Completion",
14819                "Recurrence",
14820            ],
14821            Self::IfcTaskType => &[
14822                "GlobalId",
14823                "OwnerHistory",
14824                "Name",
14825                "Description",
14826                "ApplicableOccurrence",
14827                "HasPropertySets",
14828                "Identification",
14829                "LongDescription",
14830                "ProcessType",
14831                "PredefinedType",
14832                "WorkMethod",
14833            ],
14834            Self::IfcTelecomAddress => &[
14835                "Purpose",
14836                "Description",
14837                "UserDefinedPurpose",
14838                "TelephoneNumbers",
14839                "FacsimileNumbers",
14840                "PagerNumber",
14841                "ElectronicMailAddresses",
14842                "WWWHomePageURL",
14843                "MessagingIDs",
14844            ],
14845            Self::IfcTendon => &[
14846                "GlobalId",
14847                "OwnerHistory",
14848                "Name",
14849                "Description",
14850                "ObjectType",
14851                "ObjectPlacement",
14852                "Representation",
14853                "Tag",
14854                "SteelGrade",
14855                "PredefinedType",
14856                "NominalDiameter",
14857                "CrossSectionArea",
14858                "TensionForce",
14859                "PreStress",
14860                "FrictionCoefficient",
14861                "AnchorageSlip",
14862                "MinCurvatureRadius",
14863            ],
14864            Self::IfcTendonAnchor => &[
14865                "GlobalId",
14866                "OwnerHistory",
14867                "Name",
14868                "Description",
14869                "ObjectType",
14870                "ObjectPlacement",
14871                "Representation",
14872                "Tag",
14873                "SteelGrade",
14874                "PredefinedType",
14875            ],
14876            Self::IfcTendonAnchorType => &[
14877                "GlobalId",
14878                "OwnerHistory",
14879                "Name",
14880                "Description",
14881                "ApplicableOccurrence",
14882                "HasPropertySets",
14883                "RepresentationMaps",
14884                "Tag",
14885                "ElementType",
14886                "PredefinedType",
14887            ],
14888            Self::IfcTendonConduit => &[
14889                "GlobalId",
14890                "OwnerHistory",
14891                "Name",
14892                "Description",
14893                "ObjectType",
14894                "ObjectPlacement",
14895                "Representation",
14896                "Tag",
14897                "SteelGrade",
14898                "PredefinedType",
14899            ],
14900            Self::IfcTendonConduitType => &[
14901                "GlobalId",
14902                "OwnerHistory",
14903                "Name",
14904                "Description",
14905                "ApplicableOccurrence",
14906                "HasPropertySets",
14907                "RepresentationMaps",
14908                "Tag",
14909                "ElementType",
14910                "PredefinedType",
14911            ],
14912            Self::IfcTendonType => &[
14913                "GlobalId",
14914                "OwnerHistory",
14915                "Name",
14916                "Description",
14917                "ApplicableOccurrence",
14918                "HasPropertySets",
14919                "RepresentationMaps",
14920                "Tag",
14921                "ElementType",
14922                "PredefinedType",
14923                "NominalDiameter",
14924                "CrossSectionArea",
14925                "SheathDiameter",
14926            ],
14927            Self::IfcTessellatedFaceSet => &["Coordinates"],
14928            Self::IfcTessellatedItem => &[],
14929            Self::IfcTextLiteral => &["Literal", "Placement", "Path"],
14930            Self::IfcTextLiteralWithExtent => {
14931                &["Literal", "Placement", "Path", "Extent", "BoxAlignment"]
14932            }
14933            Self::IfcTextStyle => &[
14934                "Name",
14935                "TextCharacterAppearance",
14936                "TextStyle",
14937                "TextFontStyle",
14938                "ModelOrDraughting",
14939            ],
14940            Self::IfcTextStyleFontModel => &[
14941                "Name",
14942                "FontFamily",
14943                "FontStyle",
14944                "FontVariant",
14945                "FontWeight",
14946                "FontSize",
14947            ],
14948            Self::IfcTextStyleForDefinedFont => &["Colour", "BackgroundColour"],
14949            Self::IfcTextStyleTextModel => &[
14950                "TextIndent",
14951                "TextAlign",
14952                "TextDecoration",
14953                "LetterSpacing",
14954                "WordSpacing",
14955                "TextTransform",
14956                "LineHeight",
14957            ],
14958            Self::IfcTextureCoordinate => &["Maps"],
14959            Self::IfcTextureCoordinateGenerator => &["Maps", "Mode", "Parameter"],
14960            Self::IfcTextureCoordinateIndices => &["TexCoordIndex", "TexCoordsOf"],
14961            Self::IfcTextureCoordinateIndicesWithVoids => {
14962                &["TexCoordIndex", "TexCoordsOf", "InnerTexCoordIndices"]
14963            }
14964            Self::IfcTextureMap => &["Maps", "Vertices", "MappedTo"],
14965            Self::IfcTextureVertex => &["Coordinates"],
14966            Self::IfcTextureVertexList => &["TexCoordsList"],
14967            Self::IfcThirdOrderPolynomialSpiral => &[
14968                "Position",
14969                "CubicTerm",
14970                "QuadraticTerm",
14971                "LinearTerm",
14972                "ConstantTerm",
14973            ],
14974            Self::IfcTimePeriod => &["StartTime", "EndTime"],
14975            Self::IfcTimeSeries => &[
14976                "Name",
14977                "Description",
14978                "StartTime",
14979                "EndTime",
14980                "TimeSeriesDataType",
14981                "DataOrigin",
14982                "UserDefinedDataOrigin",
14983                "Unit",
14984            ],
14985            Self::IfcTimeSeriesValue => &["ListValues"],
14986            Self::IfcTopologicalRepresentationItem => &[],
14987            Self::IfcTopologyRepresentation => &[
14988                "ContextOfItems",
14989                "RepresentationIdentifier",
14990                "RepresentationType",
14991                "Items",
14992            ],
14993            Self::IfcToroidalSurface => &["Position", "MajorRadius", "MinorRadius"],
14994            Self::IfcTrackElement => &[
14995                "GlobalId",
14996                "OwnerHistory",
14997                "Name",
14998                "Description",
14999                "ObjectType",
15000                "ObjectPlacement",
15001                "Representation",
15002                "Tag",
15003                "PredefinedType",
15004            ],
15005            Self::IfcTrackElementType => &[
15006                "GlobalId",
15007                "OwnerHistory",
15008                "Name",
15009                "Description",
15010                "ApplicableOccurrence",
15011                "HasPropertySets",
15012                "RepresentationMaps",
15013                "Tag",
15014                "ElementType",
15015                "PredefinedType",
15016            ],
15017            Self::IfcTransformer => &[
15018                "GlobalId",
15019                "OwnerHistory",
15020                "Name",
15021                "Description",
15022                "ObjectType",
15023                "ObjectPlacement",
15024                "Representation",
15025                "Tag",
15026                "PredefinedType",
15027            ],
15028            Self::IfcTransformerType => &[
15029                "GlobalId",
15030                "OwnerHistory",
15031                "Name",
15032                "Description",
15033                "ApplicableOccurrence",
15034                "HasPropertySets",
15035                "RepresentationMaps",
15036                "Tag",
15037                "ElementType",
15038                "PredefinedType",
15039            ],
15040            Self::IfcTransportElement => &[
15041                "GlobalId",
15042                "OwnerHistory",
15043                "Name",
15044                "Description",
15045                "ObjectType",
15046                "ObjectPlacement",
15047                "Representation",
15048                "Tag",
15049                "PredefinedType",
15050            ],
15051            Self::IfcTransportElementType => &[
15052                "GlobalId",
15053                "OwnerHistory",
15054                "Name",
15055                "Description",
15056                "ApplicableOccurrence",
15057                "HasPropertySets",
15058                "RepresentationMaps",
15059                "Tag",
15060                "ElementType",
15061                "PredefinedType",
15062            ],
15063            Self::IfcTransportationDevice => &[
15064                "GlobalId",
15065                "OwnerHistory",
15066                "Name",
15067                "Description",
15068                "ObjectType",
15069                "ObjectPlacement",
15070                "Representation",
15071                "Tag",
15072            ],
15073            Self::IfcTransportationDeviceType => &[
15074                "GlobalId",
15075                "OwnerHistory",
15076                "Name",
15077                "Description",
15078                "ApplicableOccurrence",
15079                "HasPropertySets",
15080                "RepresentationMaps",
15081                "Tag",
15082                "ElementType",
15083            ],
15084            Self::IfcTrapeziumProfileDef => &[
15085                "ProfileType",
15086                "ProfileName",
15087                "Position",
15088                "BottomXDim",
15089                "TopXDim",
15090                "YDim",
15091                "TopXOffset",
15092            ],
15093            Self::IfcTriangulatedFaceSet => {
15094                &["Coordinates", "Normals", "Closed", "CoordIndex", "PnIndex"]
15095            }
15096            Self::IfcTriangulatedIrregularNetwork => &[
15097                "Coordinates",
15098                "Normals",
15099                "Closed",
15100                "CoordIndex",
15101                "PnIndex",
15102                "Flags",
15103            ],
15104            Self::IfcTrimmedCurve => &[
15105                "BasisCurve",
15106                "Trim1",
15107                "Trim2",
15108                "SenseAgreement",
15109                "MasterRepresentation",
15110            ],
15111            Self::IfcTubeBundle => &[
15112                "GlobalId",
15113                "OwnerHistory",
15114                "Name",
15115                "Description",
15116                "ObjectType",
15117                "ObjectPlacement",
15118                "Representation",
15119                "Tag",
15120                "PredefinedType",
15121            ],
15122            Self::IfcTubeBundleType => &[
15123                "GlobalId",
15124                "OwnerHistory",
15125                "Name",
15126                "Description",
15127                "ApplicableOccurrence",
15128                "HasPropertySets",
15129                "RepresentationMaps",
15130                "Tag",
15131                "ElementType",
15132                "PredefinedType",
15133            ],
15134            Self::IfcTypeObject => &[
15135                "GlobalId",
15136                "OwnerHistory",
15137                "Name",
15138                "Description",
15139                "ApplicableOccurrence",
15140                "HasPropertySets",
15141            ],
15142            Self::IfcTypeProcess => &[
15143                "GlobalId",
15144                "OwnerHistory",
15145                "Name",
15146                "Description",
15147                "ApplicableOccurrence",
15148                "HasPropertySets",
15149                "Identification",
15150                "LongDescription",
15151                "ProcessType",
15152            ],
15153            Self::IfcTypeProduct => &[
15154                "GlobalId",
15155                "OwnerHistory",
15156                "Name",
15157                "Description",
15158                "ApplicableOccurrence",
15159                "HasPropertySets",
15160                "RepresentationMaps",
15161                "Tag",
15162            ],
15163            Self::IfcTypeResource => &[
15164                "GlobalId",
15165                "OwnerHistory",
15166                "Name",
15167                "Description",
15168                "ApplicableOccurrence",
15169                "HasPropertySets",
15170                "Identification",
15171                "LongDescription",
15172                "ResourceType",
15173            ],
15174            Self::IfcUShapeProfileDef => &[
15175                "ProfileType",
15176                "ProfileName",
15177                "Position",
15178                "Depth",
15179                "FlangeWidth",
15180                "WebThickness",
15181                "FlangeThickness",
15182                "FilletRadius",
15183                "EdgeRadius",
15184                "FlangeSlope",
15185            ],
15186            Self::IfcUnitAssignment => &["Units"],
15187            Self::IfcUnitaryControlElement => &[
15188                "GlobalId",
15189                "OwnerHistory",
15190                "Name",
15191                "Description",
15192                "ObjectType",
15193                "ObjectPlacement",
15194                "Representation",
15195                "Tag",
15196                "PredefinedType",
15197            ],
15198            Self::IfcUnitaryControlElementType => &[
15199                "GlobalId",
15200                "OwnerHistory",
15201                "Name",
15202                "Description",
15203                "ApplicableOccurrence",
15204                "HasPropertySets",
15205                "RepresentationMaps",
15206                "Tag",
15207                "ElementType",
15208                "PredefinedType",
15209            ],
15210            Self::IfcUnitaryEquipment => &[
15211                "GlobalId",
15212                "OwnerHistory",
15213                "Name",
15214                "Description",
15215                "ObjectType",
15216                "ObjectPlacement",
15217                "Representation",
15218                "Tag",
15219                "PredefinedType",
15220            ],
15221            Self::IfcUnitaryEquipmentType => &[
15222                "GlobalId",
15223                "OwnerHistory",
15224                "Name",
15225                "Description",
15226                "ApplicableOccurrence",
15227                "HasPropertySets",
15228                "RepresentationMaps",
15229                "Tag",
15230                "ElementType",
15231                "PredefinedType",
15232            ],
15233            Self::IfcValve => &[
15234                "GlobalId",
15235                "OwnerHistory",
15236                "Name",
15237                "Description",
15238                "ObjectType",
15239                "ObjectPlacement",
15240                "Representation",
15241                "Tag",
15242                "PredefinedType",
15243            ],
15244            Self::IfcValveType => &[
15245                "GlobalId",
15246                "OwnerHistory",
15247                "Name",
15248                "Description",
15249                "ApplicableOccurrence",
15250                "HasPropertySets",
15251                "RepresentationMaps",
15252                "Tag",
15253                "ElementType",
15254                "PredefinedType",
15255            ],
15256            Self::IfcVector => &["Orientation", "Magnitude"],
15257            Self::IfcVehicle => &[
15258                "GlobalId",
15259                "OwnerHistory",
15260                "Name",
15261                "Description",
15262                "ObjectType",
15263                "ObjectPlacement",
15264                "Representation",
15265                "Tag",
15266                "PredefinedType",
15267            ],
15268            Self::IfcVehicleType => &[
15269                "GlobalId",
15270                "OwnerHistory",
15271                "Name",
15272                "Description",
15273                "ApplicableOccurrence",
15274                "HasPropertySets",
15275                "RepresentationMaps",
15276                "Tag",
15277                "ElementType",
15278                "PredefinedType",
15279            ],
15280            Self::IfcVertex => &[],
15281            Self::IfcVertexLoop => &["LoopVertex"],
15282            Self::IfcVertexPoint => &["VertexGeometry"],
15283            Self::IfcVibrationDamper => &[
15284                "GlobalId",
15285                "OwnerHistory",
15286                "Name",
15287                "Description",
15288                "ObjectType",
15289                "ObjectPlacement",
15290                "Representation",
15291                "Tag",
15292                "PredefinedType",
15293            ],
15294            Self::IfcVibrationDamperType => &[
15295                "GlobalId",
15296                "OwnerHistory",
15297                "Name",
15298                "Description",
15299                "ApplicableOccurrence",
15300                "HasPropertySets",
15301                "RepresentationMaps",
15302                "Tag",
15303                "ElementType",
15304                "PredefinedType",
15305            ],
15306            Self::IfcVibrationIsolator => &[
15307                "GlobalId",
15308                "OwnerHistory",
15309                "Name",
15310                "Description",
15311                "ObjectType",
15312                "ObjectPlacement",
15313                "Representation",
15314                "Tag",
15315                "PredefinedType",
15316            ],
15317            Self::IfcVibrationIsolatorType => &[
15318                "GlobalId",
15319                "OwnerHistory",
15320                "Name",
15321                "Description",
15322                "ApplicableOccurrence",
15323                "HasPropertySets",
15324                "RepresentationMaps",
15325                "Tag",
15326                "ElementType",
15327                "PredefinedType",
15328            ],
15329            Self::IfcVirtualElement => &[
15330                "GlobalId",
15331                "OwnerHistory",
15332                "Name",
15333                "Description",
15334                "ObjectType",
15335                "ObjectPlacement",
15336                "Representation",
15337                "Tag",
15338                "PredefinedType",
15339            ],
15340            Self::IfcVirtualGridIntersection => &["IntersectingAxes", "OffsetDistances"],
15341            Self::IfcVoidingFeature => &[
15342                "GlobalId",
15343                "OwnerHistory",
15344                "Name",
15345                "Description",
15346                "ObjectType",
15347                "ObjectPlacement",
15348                "Representation",
15349                "Tag",
15350                "PredefinedType",
15351            ],
15352            Self::IfcWall => &[
15353                "GlobalId",
15354                "OwnerHistory",
15355                "Name",
15356                "Description",
15357                "ObjectType",
15358                "ObjectPlacement",
15359                "Representation",
15360                "Tag",
15361                "PredefinedType",
15362            ],
15363            Self::IfcWallStandardCase => &[
15364                "GlobalId",
15365                "OwnerHistory",
15366                "Name",
15367                "Description",
15368                "ObjectType",
15369                "ObjectPlacement",
15370                "Representation",
15371                "Tag",
15372                "PredefinedType",
15373            ],
15374            Self::IfcWallType => &[
15375                "GlobalId",
15376                "OwnerHistory",
15377                "Name",
15378                "Description",
15379                "ApplicableOccurrence",
15380                "HasPropertySets",
15381                "RepresentationMaps",
15382                "Tag",
15383                "ElementType",
15384                "PredefinedType",
15385            ],
15386            Self::IfcWasteTerminal => &[
15387                "GlobalId",
15388                "OwnerHistory",
15389                "Name",
15390                "Description",
15391                "ObjectType",
15392                "ObjectPlacement",
15393                "Representation",
15394                "Tag",
15395                "PredefinedType",
15396            ],
15397            Self::IfcWasteTerminalType => &[
15398                "GlobalId",
15399                "OwnerHistory",
15400                "Name",
15401                "Description",
15402                "ApplicableOccurrence",
15403                "HasPropertySets",
15404                "RepresentationMaps",
15405                "Tag",
15406                "ElementType",
15407                "PredefinedType",
15408            ],
15409            Self::IfcWellKnownText => &["WellKnownText", "CoordinateReferenceSystem"],
15410            Self::IfcWindow => &[
15411                "GlobalId",
15412                "OwnerHistory",
15413                "Name",
15414                "Description",
15415                "ObjectType",
15416                "ObjectPlacement",
15417                "Representation",
15418                "Tag",
15419                "OverallHeight",
15420                "OverallWidth",
15421                "PredefinedType",
15422                "PartitioningType",
15423                "UserDefinedPartitioningType",
15424            ],
15425            Self::IfcWindowLiningProperties => &[
15426                "GlobalId",
15427                "OwnerHistory",
15428                "Name",
15429                "Description",
15430                "LiningDepth",
15431                "LiningThickness",
15432                "TransomThickness",
15433                "MullionThickness",
15434                "FirstTransomOffset",
15435                "SecondTransomOffset",
15436                "FirstMullionOffset",
15437                "SecondMullionOffset",
15438                "ShapeAspectStyle",
15439                "LiningOffset",
15440                "LiningToPanelOffsetX",
15441                "LiningToPanelOffsetY",
15442            ],
15443            Self::IfcWindowPanelProperties => &[
15444                "GlobalId",
15445                "OwnerHistory",
15446                "Name",
15447                "Description",
15448                "OperationType",
15449                "PanelPosition",
15450                "FrameDepth",
15451                "FrameThickness",
15452                "ShapeAspectStyle",
15453            ],
15454            Self::IfcWindowType => &[
15455                "GlobalId",
15456                "OwnerHistory",
15457                "Name",
15458                "Description",
15459                "ApplicableOccurrence",
15460                "HasPropertySets",
15461                "RepresentationMaps",
15462                "Tag",
15463                "ElementType",
15464                "PredefinedType",
15465                "PartitioningType",
15466                "ParameterTakesPrecedence",
15467                "UserDefinedPartitioningType",
15468            ],
15469            Self::IfcWorkCalendar => &[
15470                "GlobalId",
15471                "OwnerHistory",
15472                "Name",
15473                "Description",
15474                "ObjectType",
15475                "Identification",
15476                "WorkingTimes",
15477                "ExceptionTimes",
15478                "PredefinedType",
15479            ],
15480            Self::IfcWorkControl => &[
15481                "GlobalId",
15482                "OwnerHistory",
15483                "Name",
15484                "Description",
15485                "ObjectType",
15486                "Identification",
15487                "CreationDate",
15488                "Creators",
15489                "Purpose",
15490                "Duration",
15491                "TotalFloat",
15492                "StartTime",
15493                "FinishTime",
15494            ],
15495            Self::IfcWorkPlan => &[
15496                "GlobalId",
15497                "OwnerHistory",
15498                "Name",
15499                "Description",
15500                "ObjectType",
15501                "Identification",
15502                "CreationDate",
15503                "Creators",
15504                "Purpose",
15505                "Duration",
15506                "TotalFloat",
15507                "StartTime",
15508                "FinishTime",
15509                "PredefinedType",
15510            ],
15511            Self::IfcWorkSchedule => &[
15512                "GlobalId",
15513                "OwnerHistory",
15514                "Name",
15515                "Description",
15516                "ObjectType",
15517                "Identification",
15518                "CreationDate",
15519                "Creators",
15520                "Purpose",
15521                "Duration",
15522                "TotalFloat",
15523                "StartTime",
15524                "FinishTime",
15525                "PredefinedType",
15526            ],
15527            Self::IfcWorkTime => &[
15528                "Name",
15529                "DataOrigin",
15530                "UserDefinedDataOrigin",
15531                "RecurrencePattern",
15532                "StartDate",
15533                "FinishDate",
15534            ],
15535            Self::IfcZShapeProfileDef => &[
15536                "ProfileType",
15537                "ProfileName",
15538                "Position",
15539                "Depth",
15540                "FlangeWidth",
15541                "WebThickness",
15542                "FlangeThickness",
15543                "FilletRadius",
15544                "EdgeRadius",
15545            ],
15546            Self::IfcZone => &[
15547                "GlobalId",
15548                "OwnerHistory",
15549                "Name",
15550                "Description",
15551                "ObjectType",
15552                "LongName",
15553            ],
15554            Self::IfcBeamStandardCase => &[],
15555            Self::IfcBuildingElement => &[],
15556            Self::IfcBuildingElementType => &[],
15557            Self::IfcColumnStandardCase => &[],
15558            Self::IfcDoorStandardCase => &[],
15559            Self::IfcDoorStyle => &[],
15560            Self::IfcMemberStandardCase => &[],
15561            Self::IfcOpeningStandardCase => &[],
15562            Self::IfcPlateStandardCase => &[],
15563            Self::IfcPresentationStyleAssignment => &[],
15564            Self::IfcProxy => &[],
15565            Self::IfcSlabElementedCase => &[],
15566            Self::IfcSlabStandardCase => &[],
15567            Self::IfcWallElementedCase => &[],
15568            Self::IfcWindowStandardCase => &[],
15569            Self::IfcWindowStyle => &[],
15570            Self::Ifc2DCompositeCurve => &[],
15571            Self::IfcAngularDimension => &[],
15572            Self::IfcAnnotationCurveOccurrence => &[],
15573            Self::IfcAnnotationFillAreaOccurrence => &[],
15574            Self::IfcAnnotationOccurrence => &[],
15575            Self::IfcAnnotationSurface => &[],
15576            Self::IfcAnnotationSurfaceOccurrence => &[],
15577            Self::IfcAnnotationSymbolOccurrence => &[],
15578            Self::IfcAnnotationTextOccurrence => &[],
15579            Self::IfcAppliedValueRelationship => &[],
15580            Self::IfcApprovalActorRelationship => &[],
15581            Self::IfcApprovalPropertyRelationship => &[],
15582            Self::IfcBezierCurve => &[],
15583            Self::IfcBuildingElementComponent => &[],
15584            Self::IfcCalendarDate => &[],
15585            Self::IfcChamferEdgeFeature => &[],
15586            Self::IfcClassificationItem => &[],
15587            Self::IfcClassificationItemRelationship => &[],
15588            Self::IfcClassificationNotation => &[],
15589            Self::IfcClassificationNotationFacet => &[],
15590            Self::IfcCondition => &[],
15591            Self::IfcConditionCriterion => &[],
15592            Self::IfcConnectionPortGeometry => &[],
15593            Self::IfcConstraintAggregationRelationship => &[],
15594            Self::IfcConstraintClassificationRelationship => &[],
15595            Self::IfcConstraintRelationship => &[],
15596            Self::IfcCoordinatedUniversalTimeOffset => &[],
15597            Self::IfcCraneRailAShapeProfileDef => &[],
15598            Self::IfcCraneRailFShapeProfileDef => &[],
15599            Self::IfcDateAndTime => &[],
15600            Self::IfcDefinedSymbol => &[],
15601            Self::IfcDiameterDimension => &[],
15602            Self::IfcDimensionCalloutRelationship => &[],
15603            Self::IfcDimensionCurve => &[],
15604            Self::IfcDimensionCurveDirectedCallout => &[],
15605            Self::IfcDimensionCurveTerminator => &[],
15606            Self::IfcDimensionPair => &[],
15607            Self::IfcDocumentElectronicFormat => &[],
15608            Self::IfcDraughtingCallout => &[],
15609            Self::IfcDraughtingCalloutRelationship => &[],
15610            Self::IfcDraughtingPreDefinedTextFont => &[],
15611            Self::IfcEdgeFeature => &[],
15612            Self::IfcElectricDistributionPoint => &[],
15613            Self::IfcElectricHeaterType => &[],
15614            Self::IfcElectricalBaseProperties => &[],
15615            Self::IfcElectricalCircuit => &[],
15616            Self::IfcElectricalElement => &[],
15617            Self::IfcEnergyProperties => &[],
15618            Self::IfcEnvironmentalImpactValue => &[],
15619            Self::IfcEquipmentElement => &[],
15620            Self::IfcEquipmentStandard => &[],
15621            Self::IfcExtendedMaterialProperties => &[],
15622            Self::IfcExternallyDefinedSymbol => &[],
15623            Self::IfcFillAreaStyleTileSymbolWithStyle => &[],
15624            Self::IfcFluidFlowProperties => &[],
15625            Self::IfcFuelProperties => &[],
15626            Self::IfcFurnitureStandard => &[],
15627            Self::IfcGasTerminalType => &[],
15628            Self::IfcGeneralMaterialProperties => &[],
15629            Self::IfcGeneralProfileProperties => &[],
15630            Self::IfcHygroscopicMaterialProperties => &[],
15631            Self::IfcLinearDimension => &[],
15632            Self::IfcLocalTime => &[],
15633            Self::IfcMechanicalConcreteMaterialProperties => &[],
15634            Self::IfcMechanicalMaterialProperties => &[],
15635            Self::IfcMechanicalSteelMaterialProperties => &[],
15636            Self::IfcMove => &[],
15637            Self::IfcOneDirectionRepeatFactor => &[],
15638            Self::IfcOpticalMaterialProperties => &[],
15639            Self::IfcOrderAction => &[],
15640            Self::IfcPreDefinedDimensionSymbol => &[],
15641            Self::IfcPreDefinedPointMarkerSymbol => &[],
15642            Self::IfcPreDefinedSymbol => &[],
15643            Self::IfcPreDefinedTerminatorSymbol => &[],
15644            Self::IfcProductsOfCombustionProperties => &[],
15645            Self::IfcProjectOrderRecord => &[],
15646            Self::IfcProjectionCurve => &[],
15647            Self::IfcPropertyConstraintRelationship => &[],
15648            Self::IfcRadiusDimension => &[],
15649            Self::IfcRationalBezierCurve => &[],
15650            Self::IfcReferencesValueDocument => &[],
15651            Self::IfcRelAssignsTasks => &[],
15652            Self::IfcRelAssignsToProjectOrder => &[],
15653            Self::IfcRelAssociatesAppliedValue => &[],
15654            Self::IfcRelAssociatesProfileProperties => &[],
15655            Self::IfcRelConnectsStructuralElement => &[],
15656            Self::IfcRelInteractionRequirements => &[],
15657            Self::IfcRelOccupiesSpaces => &[],
15658            Self::IfcRelOverridesProperties => &[],
15659            Self::IfcRelSchedulesCostItems => &[],
15660            Self::IfcRelaxation => &[],
15661            Self::IfcRibPlateProfileProperties => &[],
15662            Self::IfcRoundedEdgeFeature => &[],
15663            Self::IfcScheduleTimeControl => &[],
15664            Self::IfcServiceLife => &[],
15665            Self::IfcServiceLifeFactor => &[],
15666            Self::IfcSoundProperties => &[],
15667            Self::IfcSoundValue => &[],
15668            Self::IfcSpaceProgram => &[],
15669            Self::IfcSpaceThermalLoadProperties => &[],
15670            Self::IfcStructuralLinearActionVarying => &[],
15671            Self::IfcStructuralPlanarActionVarying => &[],
15672            Self::IfcStructuralProfileProperties => &[],
15673            Self::IfcStructuralSteelProfileProperties => &[],
15674            Self::IfcStructuredDimensionCallout => &[],
15675            Self::IfcSymbolStyle => &[],
15676            Self::IfcTerminatorSymbol => &[],
15677            Self::IfcTextStyleWithBoxCharacteristics => &[],
15678            Self::IfcThermalMaterialProperties => &[],
15679            Self::IfcTimeSeriesReferenceRelationship => &[],
15680            Self::IfcTimeSeriesSchedule => &[],
15681            Self::IfcTwoDirectionRepeatFactor => &[],
15682            Self::IfcVertexBasedTextureMap => &[],
15683            Self::IfcWaterProperties => &[],
15684            Self::IfcCircularArcSegment2D => &[],
15685            Self::IfcCurveSegment2D => &[],
15686            Self::IfcDistanceExpression => &[],
15687            Self::IfcLineSegment2D => &[],
15688            Self::IfcOrientationExpression => &[],
15689            Self::IfcTransitionCurveSegment2D => &[],
15690            Self::IfcAlignment2DHorizontal => &[],
15691            Self::IfcAlignment2DHorizontalSegment => &[],
15692            Self::IfcAlignment2DSegment => &[],
15693            Self::IfcAlignment2DVerSegCircularArc => &[],
15694            Self::IfcAlignment2DVerticalSegment => &[],
15695            Self::IfcAlignment2DVerSegLine => &[],
15696            Self::IfcAlignment2DVerSegParabolicArc => &[],
15697            Self::IfcAlignment2DVertical => &[],
15698            Self::IfcAlignmentCurve => &[],
15699            Self::Unknown(_) => &[],
15700        }
15701    }
15702
15703    /// The position of a named attribute, for DecodedEntity::get.
15704    ///
15705    /// Case-sensitive: EXPRESS attribute names are PascalCase and the schema's
15706    /// spelling is the only one that resolves.
15707    pub fn attribute_index(&self, name: &str) -> Option<usize> {
15708        self.attribute_names().iter().position(|n| *n == name)
15709    }
15710
15711    /// Whether IFC4X3_DEV_923b0514 itself declares this class.
15712    ///
15713    /// The enum is one exact-name universe across every supported release;
15714    /// a variant that only a supplemental (older) schema declares keeps its
15715    /// name but carries no positional metadata here (its
15716    /// `attribute_names()` is empty). A per-schema registry that must fail
15717    /// closed for a class the declared FILE_SCHEMA does not know consults
15718    /// this rather than the emptiness of the attribute list, which a genuine
15719    /// zero-attribute class shares (#4203).
15720    pub fn declared_by_canonical_schema(&self) -> bool {
15721        !matches!(
15722            self,
15723            Self::IfcBeamStandardCase
15724                | Self::IfcBuildingElement
15725                | Self::IfcBuildingElementType
15726                | Self::IfcColumnStandardCase
15727                | Self::IfcDoorStandardCase
15728                | Self::IfcDoorStyle
15729                | Self::IfcMemberStandardCase
15730                | Self::IfcOpeningStandardCase
15731                | Self::IfcPlateStandardCase
15732                | Self::IfcPresentationStyleAssignment
15733                | Self::IfcProxy
15734                | Self::IfcSlabElementedCase
15735                | Self::IfcSlabStandardCase
15736                | Self::IfcWallElementedCase
15737                | Self::IfcWindowStandardCase
15738                | Self::IfcWindowStyle
15739                | Self::Ifc2DCompositeCurve
15740                | Self::IfcAngularDimension
15741                | Self::IfcAnnotationCurveOccurrence
15742                | Self::IfcAnnotationFillAreaOccurrence
15743                | Self::IfcAnnotationOccurrence
15744                | Self::IfcAnnotationSurface
15745                | Self::IfcAnnotationSurfaceOccurrence
15746                | Self::IfcAnnotationSymbolOccurrence
15747                | Self::IfcAnnotationTextOccurrence
15748                | Self::IfcAppliedValueRelationship
15749                | Self::IfcApprovalActorRelationship
15750                | Self::IfcApprovalPropertyRelationship
15751                | Self::IfcBezierCurve
15752                | Self::IfcBuildingElementComponent
15753                | Self::IfcCalendarDate
15754                | Self::IfcChamferEdgeFeature
15755                | Self::IfcClassificationItem
15756                | Self::IfcClassificationItemRelationship
15757                | Self::IfcClassificationNotation
15758                | Self::IfcClassificationNotationFacet
15759                | Self::IfcCondition
15760                | Self::IfcConditionCriterion
15761                | Self::IfcConnectionPortGeometry
15762                | Self::IfcConstraintAggregationRelationship
15763                | Self::IfcConstraintClassificationRelationship
15764                | Self::IfcConstraintRelationship
15765                | Self::IfcCoordinatedUniversalTimeOffset
15766                | Self::IfcCraneRailAShapeProfileDef
15767                | Self::IfcCraneRailFShapeProfileDef
15768                | Self::IfcDateAndTime
15769                | Self::IfcDefinedSymbol
15770                | Self::IfcDiameterDimension
15771                | Self::IfcDimensionCalloutRelationship
15772                | Self::IfcDimensionCurve
15773                | Self::IfcDimensionCurveDirectedCallout
15774                | Self::IfcDimensionCurveTerminator
15775                | Self::IfcDimensionPair
15776                | Self::IfcDocumentElectronicFormat
15777                | Self::IfcDraughtingCallout
15778                | Self::IfcDraughtingCalloutRelationship
15779                | Self::IfcDraughtingPreDefinedTextFont
15780                | Self::IfcEdgeFeature
15781                | Self::IfcElectricDistributionPoint
15782                | Self::IfcElectricHeaterType
15783                | Self::IfcElectricalBaseProperties
15784                | Self::IfcElectricalCircuit
15785                | Self::IfcElectricalElement
15786                | Self::IfcEnergyProperties
15787                | Self::IfcEnvironmentalImpactValue
15788                | Self::IfcEquipmentElement
15789                | Self::IfcEquipmentStandard
15790                | Self::IfcExtendedMaterialProperties
15791                | Self::IfcExternallyDefinedSymbol
15792                | Self::IfcFillAreaStyleTileSymbolWithStyle
15793                | Self::IfcFluidFlowProperties
15794                | Self::IfcFuelProperties
15795                | Self::IfcFurnitureStandard
15796                | Self::IfcGasTerminalType
15797                | Self::IfcGeneralMaterialProperties
15798                | Self::IfcGeneralProfileProperties
15799                | Self::IfcHygroscopicMaterialProperties
15800                | Self::IfcLinearDimension
15801                | Self::IfcLocalTime
15802                | Self::IfcMechanicalConcreteMaterialProperties
15803                | Self::IfcMechanicalMaterialProperties
15804                | Self::IfcMechanicalSteelMaterialProperties
15805                | Self::IfcMove
15806                | Self::IfcOneDirectionRepeatFactor
15807                | Self::IfcOpticalMaterialProperties
15808                | Self::IfcOrderAction
15809                | Self::IfcPreDefinedDimensionSymbol
15810                | Self::IfcPreDefinedPointMarkerSymbol
15811                | Self::IfcPreDefinedSymbol
15812                | Self::IfcPreDefinedTerminatorSymbol
15813                | Self::IfcProductsOfCombustionProperties
15814                | Self::IfcProjectOrderRecord
15815                | Self::IfcProjectionCurve
15816                | Self::IfcPropertyConstraintRelationship
15817                | Self::IfcRadiusDimension
15818                | Self::IfcRationalBezierCurve
15819                | Self::IfcReferencesValueDocument
15820                | Self::IfcRelAssignsTasks
15821                | Self::IfcRelAssignsToProjectOrder
15822                | Self::IfcRelAssociatesAppliedValue
15823                | Self::IfcRelAssociatesProfileProperties
15824                | Self::IfcRelConnectsStructuralElement
15825                | Self::IfcRelInteractionRequirements
15826                | Self::IfcRelOccupiesSpaces
15827                | Self::IfcRelOverridesProperties
15828                | Self::IfcRelSchedulesCostItems
15829                | Self::IfcRelaxation
15830                | Self::IfcRibPlateProfileProperties
15831                | Self::IfcRoundedEdgeFeature
15832                | Self::IfcScheduleTimeControl
15833                | Self::IfcServiceLife
15834                | Self::IfcServiceLifeFactor
15835                | Self::IfcSoundProperties
15836                | Self::IfcSoundValue
15837                | Self::IfcSpaceProgram
15838                | Self::IfcSpaceThermalLoadProperties
15839                | Self::IfcStructuralLinearActionVarying
15840                | Self::IfcStructuralPlanarActionVarying
15841                | Self::IfcStructuralProfileProperties
15842                | Self::IfcStructuralSteelProfileProperties
15843                | Self::IfcStructuredDimensionCallout
15844                | Self::IfcSymbolStyle
15845                | Self::IfcTerminatorSymbol
15846                | Self::IfcTextStyleWithBoxCharacteristics
15847                | Self::IfcThermalMaterialProperties
15848                | Self::IfcTimeSeriesReferenceRelationship
15849                | Self::IfcTimeSeriesSchedule
15850                | Self::IfcTwoDirectionRepeatFactor
15851                | Self::IfcVertexBasedTextureMap
15852                | Self::IfcWaterProperties
15853                | Self::IfcCircularArcSegment2D
15854                | Self::IfcCurveSegment2D
15855                | Self::IfcDistanceExpression
15856                | Self::IfcLineSegment2D
15857                | Self::IfcOrientationExpression
15858                | Self::IfcTransitionCurveSegment2D
15859                | Self::IfcAlignment2DHorizontal
15860                | Self::IfcAlignment2DHorizontalSegment
15861                | Self::IfcAlignment2DSegment
15862                | Self::IfcAlignment2DVerSegCircularArc
15863                | Self::IfcAlignment2DVerticalSegment
15864                | Self::IfcAlignment2DVerSegLine
15865                | Self::IfcAlignment2DVerSegParabolicArc
15866                | Self::IfcAlignment2DVertical
15867                | Self::IfcAlignmentCurve
15868                | Self::Unknown(_)
15869        )
15870    }
15871}
15872
15873/// Every entity type this schema defines, in declaration order.
15874///
15875/// A slice and not an array: the length is a property of the schema, and
15876/// baking it into the type would make the next IFC release a breaking
15877/// change for anyone who names it.
15878///
15879/// The enum is exhaustive but not enumerable: the Unknown(u32) variant
15880/// makes it open, and the CRC32 ids are sparse, so neither from_id nor a
15881/// range gives a caller the catalog. A consumer that has to reason about the
15882/// WHOLE schema — mapping every class to some other vocabulary, auditing
15883/// which ones it covers, generating a table — otherwise has to re-parse
15884/// the EXPRESS file or scrape this one.
15885pub static ALL: &[IfcType] = &[
15886    IfcType::IfcActionRequest,
15887    IfcType::IfcActor,
15888    IfcType::IfcActorRole,
15889    IfcType::IfcActuator,
15890    IfcType::IfcActuatorType,
15891    IfcType::IfcAddress,
15892    IfcType::IfcAdvancedBrep,
15893    IfcType::IfcAdvancedBrepWithVoids,
15894    IfcType::IfcAdvancedFace,
15895    IfcType::IfcAirTerminal,
15896    IfcType::IfcAirTerminalBox,
15897    IfcType::IfcAirTerminalBoxType,
15898    IfcType::IfcAirTerminalType,
15899    IfcType::IfcAirToAirHeatRecovery,
15900    IfcType::IfcAirToAirHeatRecoveryType,
15901    IfcType::IfcAlarm,
15902    IfcType::IfcAlarmType,
15903    IfcType::IfcAlignment,
15904    IfcType::IfcAlignmentCant,
15905    IfcType::IfcAlignmentCantSegment,
15906    IfcType::IfcAlignmentHorizontal,
15907    IfcType::IfcAlignmentHorizontalSegment,
15908    IfcType::IfcAlignmentParameterSegment,
15909    IfcType::IfcAlignmentSegment,
15910    IfcType::IfcAlignmentVertical,
15911    IfcType::IfcAlignmentVerticalSegment,
15912    IfcType::IfcAnnotation,
15913    IfcType::IfcAnnotationFillArea,
15914    IfcType::IfcApplication,
15915    IfcType::IfcAppliedValue,
15916    IfcType::IfcApproval,
15917    IfcType::IfcApprovalRelationship,
15918    IfcType::IfcArbitraryClosedProfileDef,
15919    IfcType::IfcArbitraryOpenProfileDef,
15920    IfcType::IfcArbitraryProfileDefWithVoids,
15921    IfcType::IfcAsset,
15922    IfcType::IfcAsymmetricIShapeProfileDef,
15923    IfcType::IfcAudioVisualAppliance,
15924    IfcType::IfcAudioVisualApplianceType,
15925    IfcType::IfcAxis1Placement,
15926    IfcType::IfcAxis2Placement2D,
15927    IfcType::IfcAxis2Placement3D,
15928    IfcType::IfcAxis2PlacementLinear,
15929    IfcType::IfcBSplineCurve,
15930    IfcType::IfcBSplineCurveWithKnots,
15931    IfcType::IfcBSplineSurface,
15932    IfcType::IfcBSplineSurfaceWithKnots,
15933    IfcType::IfcBeam,
15934    IfcType::IfcBeamType,
15935    IfcType::IfcBearing,
15936    IfcType::IfcBearingType,
15937    IfcType::IfcBlobTexture,
15938    IfcType::IfcBlock,
15939    IfcType::IfcBoiler,
15940    IfcType::IfcBoilerType,
15941    IfcType::IfcBooleanClippingResult,
15942    IfcType::IfcBooleanResult,
15943    IfcType::IfcBorehole,
15944    IfcType::IfcBoundaryCondition,
15945    IfcType::IfcBoundaryCurve,
15946    IfcType::IfcBoundaryEdgeCondition,
15947    IfcType::IfcBoundaryFaceCondition,
15948    IfcType::IfcBoundaryNodeCondition,
15949    IfcType::IfcBoundaryNodeConditionWarping,
15950    IfcType::IfcBoundedCurve,
15951    IfcType::IfcBoundedSurface,
15952    IfcType::IfcBoundingBox,
15953    IfcType::IfcBoxedHalfSpace,
15954    IfcType::IfcBridge,
15955    IfcType::IfcBridgePart,
15956    IfcType::IfcBuilding,
15957    IfcType::IfcBuildingElementPart,
15958    IfcType::IfcBuildingElementPartType,
15959    IfcType::IfcBuildingElementProxy,
15960    IfcType::IfcBuildingElementProxyType,
15961    IfcType::IfcBuildingStorey,
15962    IfcType::IfcBuildingSystem,
15963    IfcType::IfcBuiltElement,
15964    IfcType::IfcBuiltElementType,
15965    IfcType::IfcBuiltSystem,
15966    IfcType::IfcBurner,
15967    IfcType::IfcBurnerType,
15968    IfcType::IfcCShapeProfileDef,
15969    IfcType::IfcCableCarrierFitting,
15970    IfcType::IfcCableCarrierFittingType,
15971    IfcType::IfcCableCarrierSegment,
15972    IfcType::IfcCableCarrierSegmentType,
15973    IfcType::IfcCableFitting,
15974    IfcType::IfcCableFittingType,
15975    IfcType::IfcCableSegment,
15976    IfcType::IfcCableSegmentType,
15977    IfcType::IfcCaissonFoundation,
15978    IfcType::IfcCaissonFoundationType,
15979    IfcType::IfcCartesianPoint,
15980    IfcType::IfcCartesianPointList,
15981    IfcType::IfcCartesianPointList2D,
15982    IfcType::IfcCartesianPointList3D,
15983    IfcType::IfcCartesianTransformationOperator,
15984    IfcType::IfcCartesianTransformationOperator2D,
15985    IfcType::IfcCartesianTransformationOperator2DnonUniform,
15986    IfcType::IfcCartesianTransformationOperator3D,
15987    IfcType::IfcCartesianTransformationOperator3DnonUniform,
15988    IfcType::IfcCenterLineProfileDef,
15989    IfcType::IfcChiller,
15990    IfcType::IfcChillerType,
15991    IfcType::IfcChimney,
15992    IfcType::IfcChimneyType,
15993    IfcType::IfcCircle,
15994    IfcType::IfcCircleHollowProfileDef,
15995    IfcType::IfcCircleProfileDef,
15996    IfcType::IfcCivilElement,
15997    IfcType::IfcCivilElementType,
15998    IfcType::IfcClassification,
15999    IfcType::IfcClassificationReference,
16000    IfcType::IfcClosedShell,
16001    IfcType::IfcClothoid,
16002    IfcType::IfcCoil,
16003    IfcType::IfcCoilType,
16004    IfcType::IfcColourRgb,
16005    IfcType::IfcColourRgbList,
16006    IfcType::IfcColourSpecification,
16007    IfcType::IfcColumn,
16008    IfcType::IfcColumnType,
16009    IfcType::IfcCommunicationsAppliance,
16010    IfcType::IfcCommunicationsApplianceType,
16011    IfcType::IfcComplexProperty,
16012    IfcType::IfcComplexPropertyTemplate,
16013    IfcType::IfcCompositeCurve,
16014    IfcType::IfcCompositeCurveOnSurface,
16015    IfcType::IfcCompositeCurveSegment,
16016    IfcType::IfcCompositeProfileDef,
16017    IfcType::IfcCompressor,
16018    IfcType::IfcCompressorType,
16019    IfcType::IfcCondenser,
16020    IfcType::IfcCondenserType,
16021    IfcType::IfcConic,
16022    IfcType::IfcConnectedFaceSet,
16023    IfcType::IfcConnectionCurveGeometry,
16024    IfcType::IfcConnectionGeometry,
16025    IfcType::IfcConnectionPointEccentricity,
16026    IfcType::IfcConnectionPointGeometry,
16027    IfcType::IfcConnectionSurfaceGeometry,
16028    IfcType::IfcConnectionVolumeGeometry,
16029    IfcType::IfcConstraint,
16030    IfcType::IfcConstructionEquipmentResource,
16031    IfcType::IfcConstructionEquipmentResourceType,
16032    IfcType::IfcConstructionMaterialResource,
16033    IfcType::IfcConstructionMaterialResourceType,
16034    IfcType::IfcConstructionProductResource,
16035    IfcType::IfcConstructionProductResourceType,
16036    IfcType::IfcConstructionResource,
16037    IfcType::IfcConstructionResourceType,
16038    IfcType::IfcContext,
16039    IfcType::IfcContextDependentUnit,
16040    IfcType::IfcControl,
16041    IfcType::IfcController,
16042    IfcType::IfcControllerType,
16043    IfcType::IfcConversionBasedUnit,
16044    IfcType::IfcConversionBasedUnitWithOffset,
16045    IfcType::IfcConveyorSegment,
16046    IfcType::IfcConveyorSegmentType,
16047    IfcType::IfcCooledBeam,
16048    IfcType::IfcCooledBeamType,
16049    IfcType::IfcCoolingTower,
16050    IfcType::IfcCoolingTowerType,
16051    IfcType::IfcCoordinateOperation,
16052    IfcType::IfcCoordinateReferenceSystem,
16053    IfcType::IfcCosineSpiral,
16054    IfcType::IfcCostItem,
16055    IfcType::IfcCostSchedule,
16056    IfcType::IfcCostValue,
16057    IfcType::IfcCourse,
16058    IfcType::IfcCourseType,
16059    IfcType::IfcCovering,
16060    IfcType::IfcCoveringType,
16061    IfcType::IfcCrewResource,
16062    IfcType::IfcCrewResourceType,
16063    IfcType::IfcCsgPrimitive3D,
16064    IfcType::IfcCsgSolid,
16065    IfcType::IfcCurrencyRelationship,
16066    IfcType::IfcCurtainWall,
16067    IfcType::IfcCurtainWallType,
16068    IfcType::IfcCurve,
16069    IfcType::IfcCurveBoundedPlane,
16070    IfcType::IfcCurveBoundedSurface,
16071    IfcType::IfcCurveSegment,
16072    IfcType::IfcCurveStyle,
16073    IfcType::IfcCurveStyleFont,
16074    IfcType::IfcCurveStyleFontAndScaling,
16075    IfcType::IfcCurveStyleFontPattern,
16076    IfcType::IfcCylindricalSurface,
16077    IfcType::IfcDamper,
16078    IfcType::IfcDamperType,
16079    IfcType::IfcDeepFoundation,
16080    IfcType::IfcDeepFoundationType,
16081    IfcType::IfcDerivedProfileDef,
16082    IfcType::IfcDerivedUnit,
16083    IfcType::IfcDerivedUnitElement,
16084    IfcType::IfcDimensionalExponents,
16085    IfcType::IfcDirection,
16086    IfcType::IfcDirectrixCurveSweptAreaSolid,
16087    IfcType::IfcDirectrixDerivedReferenceSweptAreaSolid,
16088    IfcType::IfcDiscreteAccessory,
16089    IfcType::IfcDiscreteAccessoryType,
16090    IfcType::IfcDistributionBoard,
16091    IfcType::IfcDistributionBoardType,
16092    IfcType::IfcDistributionChamberElement,
16093    IfcType::IfcDistributionChamberElementType,
16094    IfcType::IfcDistributionCircuit,
16095    IfcType::IfcDistributionControlElement,
16096    IfcType::IfcDistributionControlElementType,
16097    IfcType::IfcDistributionElement,
16098    IfcType::IfcDistributionElementType,
16099    IfcType::IfcDistributionFlowElement,
16100    IfcType::IfcDistributionFlowElementType,
16101    IfcType::IfcDistributionPort,
16102    IfcType::IfcDistributionSystem,
16103    IfcType::IfcDocumentInformation,
16104    IfcType::IfcDocumentInformationRelationship,
16105    IfcType::IfcDocumentReference,
16106    IfcType::IfcDoor,
16107    IfcType::IfcDoorLiningProperties,
16108    IfcType::IfcDoorPanelProperties,
16109    IfcType::IfcDoorType,
16110    IfcType::IfcDraughtingPreDefinedColour,
16111    IfcType::IfcDraughtingPreDefinedCurveFont,
16112    IfcType::IfcDuctFitting,
16113    IfcType::IfcDuctFittingType,
16114    IfcType::IfcDuctSegment,
16115    IfcType::IfcDuctSegmentType,
16116    IfcType::IfcDuctSilencer,
16117    IfcType::IfcDuctSilencerType,
16118    IfcType::IfcEarthworksCut,
16119    IfcType::IfcEarthworksElement,
16120    IfcType::IfcEarthworksFill,
16121    IfcType::IfcEdge,
16122    IfcType::IfcEdgeCurve,
16123    IfcType::IfcEdgeLoop,
16124    IfcType::IfcElectricAppliance,
16125    IfcType::IfcElectricApplianceType,
16126    IfcType::IfcElectricDistributionBoard,
16127    IfcType::IfcElectricDistributionBoardType,
16128    IfcType::IfcElectricFlowStorageDevice,
16129    IfcType::IfcElectricFlowStorageDeviceType,
16130    IfcType::IfcElectricFlowTreatmentDevice,
16131    IfcType::IfcElectricFlowTreatmentDeviceType,
16132    IfcType::IfcElectricGenerator,
16133    IfcType::IfcElectricGeneratorType,
16134    IfcType::IfcElectricMotor,
16135    IfcType::IfcElectricMotorType,
16136    IfcType::IfcElectricTimeControl,
16137    IfcType::IfcElectricTimeControlType,
16138    IfcType::IfcElement,
16139    IfcType::IfcElementAssembly,
16140    IfcType::IfcElementAssemblyType,
16141    IfcType::IfcElementComponent,
16142    IfcType::IfcElementComponentType,
16143    IfcType::IfcElementQuantity,
16144    IfcType::IfcElementType,
16145    IfcType::IfcElementarySurface,
16146    IfcType::IfcEllipse,
16147    IfcType::IfcEllipseProfileDef,
16148    IfcType::IfcEnergyConversionDevice,
16149    IfcType::IfcEnergyConversionDeviceType,
16150    IfcType::IfcEngine,
16151    IfcType::IfcEngineType,
16152    IfcType::IfcEvaporativeCooler,
16153    IfcType::IfcEvaporativeCoolerType,
16154    IfcType::IfcEvaporator,
16155    IfcType::IfcEvaporatorType,
16156    IfcType::IfcEvent,
16157    IfcType::IfcEventTime,
16158    IfcType::IfcEventType,
16159    IfcType::IfcExtendedProperties,
16160    IfcType::IfcExternalInformation,
16161    IfcType::IfcExternalReference,
16162    IfcType::IfcExternalReferenceRelationship,
16163    IfcType::IfcExternalSpatialElement,
16164    IfcType::IfcExternalSpatialStructureElement,
16165    IfcType::IfcExternallyDefinedHatchStyle,
16166    IfcType::IfcExternallyDefinedSurfaceStyle,
16167    IfcType::IfcExternallyDefinedTextFont,
16168    IfcType::IfcExtrudedAreaSolid,
16169    IfcType::IfcExtrudedAreaSolidTapered,
16170    IfcType::IfcFace,
16171    IfcType::IfcFaceBasedSurfaceModel,
16172    IfcType::IfcFaceBound,
16173    IfcType::IfcFaceOuterBound,
16174    IfcType::IfcFaceSurface,
16175    IfcType::IfcFacetedBrep,
16176    IfcType::IfcFacetedBrepWithVoids,
16177    IfcType::IfcFacility,
16178    IfcType::IfcFacilityPart,
16179    IfcType::IfcFacilityPartCommon,
16180    IfcType::IfcFailureConnectionCondition,
16181    IfcType::IfcFan,
16182    IfcType::IfcFanType,
16183    IfcType::IfcFastener,
16184    IfcType::IfcFastenerType,
16185    IfcType::IfcFeatureElement,
16186    IfcType::IfcFeatureElementAddition,
16187    IfcType::IfcFeatureElementSubtraction,
16188    IfcType::IfcFillAreaStyle,
16189    IfcType::IfcFillAreaStyleHatching,
16190    IfcType::IfcFillAreaStyleTiles,
16191    IfcType::IfcFilter,
16192    IfcType::IfcFilterType,
16193    IfcType::IfcFireSuppressionTerminal,
16194    IfcType::IfcFireSuppressionTerminalType,
16195    IfcType::IfcFixedReferenceSweptAreaSolid,
16196    IfcType::IfcFlowController,
16197    IfcType::IfcFlowControllerType,
16198    IfcType::IfcFlowFitting,
16199    IfcType::IfcFlowFittingType,
16200    IfcType::IfcFlowInstrument,
16201    IfcType::IfcFlowInstrumentType,
16202    IfcType::IfcFlowMeter,
16203    IfcType::IfcFlowMeterType,
16204    IfcType::IfcFlowMovingDevice,
16205    IfcType::IfcFlowMovingDeviceType,
16206    IfcType::IfcFlowSegment,
16207    IfcType::IfcFlowSegmentType,
16208    IfcType::IfcFlowStorageDevice,
16209    IfcType::IfcFlowStorageDeviceType,
16210    IfcType::IfcFlowTerminal,
16211    IfcType::IfcFlowTerminalType,
16212    IfcType::IfcFlowTreatmentDevice,
16213    IfcType::IfcFlowTreatmentDeviceType,
16214    IfcType::IfcFooting,
16215    IfcType::IfcFootingType,
16216    IfcType::IfcFurnishingElement,
16217    IfcType::IfcFurnishingElementType,
16218    IfcType::IfcFurniture,
16219    IfcType::IfcFurnitureType,
16220    IfcType::IfcGeographicCRS,
16221    IfcType::IfcGeographicElement,
16222    IfcType::IfcGeographicElementType,
16223    IfcType::IfcGeometricCurveSet,
16224    IfcType::IfcGeometricRepresentationContext,
16225    IfcType::IfcGeometricRepresentationItem,
16226    IfcType::IfcGeometricRepresentationSubContext,
16227    IfcType::IfcGeometricSet,
16228    IfcType::IfcGeomodel,
16229    IfcType::IfcGeoslice,
16230    IfcType::IfcGeotechnicalAssembly,
16231    IfcType::IfcGeotechnicalElement,
16232    IfcType::IfcGeotechnicalStratum,
16233    IfcType::IfcGradientCurve,
16234    IfcType::IfcGrid,
16235    IfcType::IfcGridAxis,
16236    IfcType::IfcGridPlacement,
16237    IfcType::IfcGroup,
16238    IfcType::IfcHalfSpaceSolid,
16239    IfcType::IfcHeatExchanger,
16240    IfcType::IfcHeatExchangerType,
16241    IfcType::IfcHumidifier,
16242    IfcType::IfcHumidifierType,
16243    IfcType::IfcIShapeProfileDef,
16244    IfcType::IfcImageTexture,
16245    IfcType::IfcImpactProtectionDevice,
16246    IfcType::IfcImpactProtectionDeviceType,
16247    IfcType::IfcIndexedColourMap,
16248    IfcType::IfcIndexedPolyCurve,
16249    IfcType::IfcIndexedPolygonalFace,
16250    IfcType::IfcIndexedPolygonalFaceWithVoids,
16251    IfcType::IfcIndexedPolygonalTextureMap,
16252    IfcType::IfcIndexedTextureMap,
16253    IfcType::IfcIndexedTriangleTextureMap,
16254    IfcType::IfcInterceptor,
16255    IfcType::IfcInterceptorType,
16256    IfcType::IfcIntersectionCurve,
16257    IfcType::IfcInventory,
16258    IfcType::IfcIrregularTimeSeries,
16259    IfcType::IfcIrregularTimeSeriesValue,
16260    IfcType::IfcJunctionBox,
16261    IfcType::IfcJunctionBoxType,
16262    IfcType::IfcKerb,
16263    IfcType::IfcKerbType,
16264    IfcType::IfcLShapeProfileDef,
16265    IfcType::IfcLaborResource,
16266    IfcType::IfcLaborResourceType,
16267    IfcType::IfcLagTime,
16268    IfcType::IfcLamp,
16269    IfcType::IfcLampType,
16270    IfcType::IfcLibraryInformation,
16271    IfcType::IfcLibraryReference,
16272    IfcType::IfcLightDistributionData,
16273    IfcType::IfcLightFixture,
16274    IfcType::IfcLightFixtureType,
16275    IfcType::IfcLightIntensityDistribution,
16276    IfcType::IfcLightSource,
16277    IfcType::IfcLightSourceAmbient,
16278    IfcType::IfcLightSourceDirectional,
16279    IfcType::IfcLightSourceGoniometric,
16280    IfcType::IfcLightSourcePositional,
16281    IfcType::IfcLightSourceSpot,
16282    IfcType::IfcLine,
16283    IfcType::IfcLinearElement,
16284    IfcType::IfcLinearPlacement,
16285    IfcType::IfcLinearPositioningElement,
16286    IfcType::IfcLiquidTerminal,
16287    IfcType::IfcLiquidTerminalType,
16288    IfcType::IfcLocalPlacement,
16289    IfcType::IfcLoop,
16290    IfcType::IfcManifoldSolidBrep,
16291    IfcType::IfcMapConversion,
16292    IfcType::IfcMapConversionScaled,
16293    IfcType::IfcMappedItem,
16294    IfcType::IfcMarineFacility,
16295    IfcType::IfcMarinePart,
16296    IfcType::IfcMaterial,
16297    IfcType::IfcMaterialClassificationRelationship,
16298    IfcType::IfcMaterialConstituent,
16299    IfcType::IfcMaterialConstituentSet,
16300    IfcType::IfcMaterialDefinition,
16301    IfcType::IfcMaterialDefinitionRepresentation,
16302    IfcType::IfcMaterialLayer,
16303    IfcType::IfcMaterialLayerSet,
16304    IfcType::IfcMaterialLayerSetUsage,
16305    IfcType::IfcMaterialLayerWithOffsets,
16306    IfcType::IfcMaterialList,
16307    IfcType::IfcMaterialProfile,
16308    IfcType::IfcMaterialProfileSet,
16309    IfcType::IfcMaterialProfileSetUsage,
16310    IfcType::IfcMaterialProfileSetUsageTapering,
16311    IfcType::IfcMaterialProfileWithOffsets,
16312    IfcType::IfcMaterialProperties,
16313    IfcType::IfcMaterialRelationship,
16314    IfcType::IfcMaterialUsageDefinition,
16315    IfcType::IfcMeasureWithUnit,
16316    IfcType::IfcMechanicalFastener,
16317    IfcType::IfcMechanicalFastenerType,
16318    IfcType::IfcMedicalDevice,
16319    IfcType::IfcMedicalDeviceType,
16320    IfcType::IfcMember,
16321    IfcType::IfcMemberType,
16322    IfcType::IfcMetric,
16323    IfcType::IfcMirroredProfileDef,
16324    IfcType::IfcMobileTelecommunicationsAppliance,
16325    IfcType::IfcMobileTelecommunicationsApplianceType,
16326    IfcType::IfcMonetaryUnit,
16327    IfcType::IfcMooringDevice,
16328    IfcType::IfcMooringDeviceType,
16329    IfcType::IfcMotorConnection,
16330    IfcType::IfcMotorConnectionType,
16331    IfcType::IfcNamedUnit,
16332    IfcType::IfcNavigationElement,
16333    IfcType::IfcNavigationElementType,
16334    IfcType::IfcObject,
16335    IfcType::IfcObjectDefinition,
16336    IfcType::IfcObjectPlacement,
16337    IfcType::IfcObjective,
16338    IfcType::IfcOccupant,
16339    IfcType::IfcOffsetCurve,
16340    IfcType::IfcOffsetCurve2D,
16341    IfcType::IfcOffsetCurve3D,
16342    IfcType::IfcOffsetCurveByDistances,
16343    IfcType::IfcOpenCrossProfileDef,
16344    IfcType::IfcOpenShell,
16345    IfcType::IfcOpeningElement,
16346    IfcType::IfcOrganization,
16347    IfcType::IfcOrganizationRelationship,
16348    IfcType::IfcOrientedEdge,
16349    IfcType::IfcOuterBoundaryCurve,
16350    IfcType::IfcOutlet,
16351    IfcType::IfcOutletType,
16352    IfcType::IfcOwnerHistory,
16353    IfcType::IfcParameterizedProfileDef,
16354    IfcType::IfcPath,
16355    IfcType::IfcPavement,
16356    IfcType::IfcPavementType,
16357    IfcType::IfcPcurve,
16358    IfcType::IfcPerformanceHistory,
16359    IfcType::IfcPermeableCoveringProperties,
16360    IfcType::IfcPermit,
16361    IfcType::IfcPerson,
16362    IfcType::IfcPersonAndOrganization,
16363    IfcType::IfcPhysicalComplexQuantity,
16364    IfcType::IfcPhysicalQuantity,
16365    IfcType::IfcPhysicalSimpleQuantity,
16366    IfcType::IfcPile,
16367    IfcType::IfcPileType,
16368    IfcType::IfcPipeFitting,
16369    IfcType::IfcPipeFittingType,
16370    IfcType::IfcPipeSegment,
16371    IfcType::IfcPipeSegmentType,
16372    IfcType::IfcPixelTexture,
16373    IfcType::IfcPlacement,
16374    IfcType::IfcPlanarBox,
16375    IfcType::IfcPlanarExtent,
16376    IfcType::IfcPlane,
16377    IfcType::IfcPlate,
16378    IfcType::IfcPlateType,
16379    IfcType::IfcPoint,
16380    IfcType::IfcPointByDistanceExpression,
16381    IfcType::IfcPointOnCurve,
16382    IfcType::IfcPointOnSurface,
16383    IfcType::IfcPolyLoop,
16384    IfcType::IfcPolygonalBoundedHalfSpace,
16385    IfcType::IfcPolygonalFaceSet,
16386    IfcType::IfcPolyline,
16387    IfcType::IfcPolynomialCurve,
16388    IfcType::IfcPort,
16389    IfcType::IfcPositioningElement,
16390    IfcType::IfcPostalAddress,
16391    IfcType::IfcPreDefinedColour,
16392    IfcType::IfcPreDefinedCurveFont,
16393    IfcType::IfcPreDefinedItem,
16394    IfcType::IfcPreDefinedProperties,
16395    IfcType::IfcPreDefinedPropertySet,
16396    IfcType::IfcPreDefinedTextFont,
16397    IfcType::IfcPresentationItem,
16398    IfcType::IfcPresentationLayerAssignment,
16399    IfcType::IfcPresentationLayerWithStyle,
16400    IfcType::IfcPresentationStyle,
16401    IfcType::IfcProcedure,
16402    IfcType::IfcProcedureType,
16403    IfcType::IfcProcess,
16404    IfcType::IfcProduct,
16405    IfcType::IfcProductDefinitionShape,
16406    IfcType::IfcProductRepresentation,
16407    IfcType::IfcProfileDef,
16408    IfcType::IfcProfileProperties,
16409    IfcType::IfcProject,
16410    IfcType::IfcProjectLibrary,
16411    IfcType::IfcProjectOrder,
16412    IfcType::IfcProjectedCRS,
16413    IfcType::IfcProjectionElement,
16414    IfcType::IfcProperty,
16415    IfcType::IfcPropertyAbstraction,
16416    IfcType::IfcPropertyBoundedValue,
16417    IfcType::IfcPropertyDefinition,
16418    IfcType::IfcPropertyDependencyRelationship,
16419    IfcType::IfcPropertyEnumeratedValue,
16420    IfcType::IfcPropertyEnumeration,
16421    IfcType::IfcPropertyListValue,
16422    IfcType::IfcPropertyReferenceValue,
16423    IfcType::IfcPropertySet,
16424    IfcType::IfcPropertySetDefinition,
16425    IfcType::IfcPropertySetTemplate,
16426    IfcType::IfcPropertySingleValue,
16427    IfcType::IfcPropertyTableValue,
16428    IfcType::IfcPropertyTemplate,
16429    IfcType::IfcPropertyTemplateDefinition,
16430    IfcType::IfcProtectiveDevice,
16431    IfcType::IfcProtectiveDeviceTrippingUnit,
16432    IfcType::IfcProtectiveDeviceTrippingUnitType,
16433    IfcType::IfcProtectiveDeviceType,
16434    IfcType::IfcPump,
16435    IfcType::IfcPumpType,
16436    IfcType::IfcQuantityArea,
16437    IfcType::IfcQuantityCount,
16438    IfcType::IfcQuantityLength,
16439    IfcType::IfcQuantityNumber,
16440    IfcType::IfcQuantitySet,
16441    IfcType::IfcQuantityTime,
16442    IfcType::IfcQuantityVolume,
16443    IfcType::IfcQuantityWeight,
16444    IfcType::IfcRail,
16445    IfcType::IfcRailType,
16446    IfcType::IfcRailing,
16447    IfcType::IfcRailingType,
16448    IfcType::IfcRailway,
16449    IfcType::IfcRailwayPart,
16450    IfcType::IfcRamp,
16451    IfcType::IfcRampFlight,
16452    IfcType::IfcRampFlightType,
16453    IfcType::IfcRampType,
16454    IfcType::IfcRationalBSplineCurveWithKnots,
16455    IfcType::IfcRationalBSplineSurfaceWithKnots,
16456    IfcType::IfcRectangleHollowProfileDef,
16457    IfcType::IfcRectangleProfileDef,
16458    IfcType::IfcRectangularPyramid,
16459    IfcType::IfcRectangularTrimmedSurface,
16460    IfcType::IfcRecurrencePattern,
16461    IfcType::IfcReference,
16462    IfcType::IfcReferent,
16463    IfcType::IfcRegularTimeSeries,
16464    IfcType::IfcReinforcedSoil,
16465    IfcType::IfcReinforcementBarProperties,
16466    IfcType::IfcReinforcementDefinitionProperties,
16467    IfcType::IfcReinforcingBar,
16468    IfcType::IfcReinforcingBarType,
16469    IfcType::IfcReinforcingElement,
16470    IfcType::IfcReinforcingElementType,
16471    IfcType::IfcReinforcingMesh,
16472    IfcType::IfcReinforcingMeshType,
16473    IfcType::IfcRelAdheresToElement,
16474    IfcType::IfcRelAggregates,
16475    IfcType::IfcRelAssigns,
16476    IfcType::IfcRelAssignsToActor,
16477    IfcType::IfcRelAssignsToControl,
16478    IfcType::IfcRelAssignsToGroup,
16479    IfcType::IfcRelAssignsToGroupByFactor,
16480    IfcType::IfcRelAssignsToProcess,
16481    IfcType::IfcRelAssignsToProduct,
16482    IfcType::IfcRelAssignsToResource,
16483    IfcType::IfcRelAssociates,
16484    IfcType::IfcRelAssociatesApproval,
16485    IfcType::IfcRelAssociatesClassification,
16486    IfcType::IfcRelAssociatesConstraint,
16487    IfcType::IfcRelAssociatesDocument,
16488    IfcType::IfcRelAssociatesLibrary,
16489    IfcType::IfcRelAssociatesMaterial,
16490    IfcType::IfcRelAssociatesProfileDef,
16491    IfcType::IfcRelConnects,
16492    IfcType::IfcRelConnectsElements,
16493    IfcType::IfcRelConnectsPathElements,
16494    IfcType::IfcRelConnectsPortToElement,
16495    IfcType::IfcRelConnectsPorts,
16496    IfcType::IfcRelConnectsStructuralActivity,
16497    IfcType::IfcRelConnectsStructuralMember,
16498    IfcType::IfcRelConnectsWithEccentricity,
16499    IfcType::IfcRelConnectsWithRealizingElements,
16500    IfcType::IfcRelContainedInSpatialStructure,
16501    IfcType::IfcRelCoversBldgElements,
16502    IfcType::IfcRelCoversSpaces,
16503    IfcType::IfcRelDeclares,
16504    IfcType::IfcRelDecomposes,
16505    IfcType::IfcRelDefines,
16506    IfcType::IfcRelDefinesByObject,
16507    IfcType::IfcRelDefinesByProperties,
16508    IfcType::IfcRelDefinesByTemplate,
16509    IfcType::IfcRelDefinesByType,
16510    IfcType::IfcRelFillsElement,
16511    IfcType::IfcRelFlowControlElements,
16512    IfcType::IfcRelInterferesElements,
16513    IfcType::IfcRelNests,
16514    IfcType::IfcRelPositions,
16515    IfcType::IfcRelProjectsElement,
16516    IfcType::IfcRelReferencedInSpatialStructure,
16517    IfcType::IfcRelSequence,
16518    IfcType::IfcRelServicesBuildings,
16519    IfcType::IfcRelSpaceBoundary,
16520    IfcType::IfcRelSpaceBoundary1stLevel,
16521    IfcType::IfcRelSpaceBoundary2ndLevel,
16522    IfcType::IfcRelVoidsElement,
16523    IfcType::IfcRelationship,
16524    IfcType::IfcReparametrisedCompositeCurveSegment,
16525    IfcType::IfcRepresentation,
16526    IfcType::IfcRepresentationContext,
16527    IfcType::IfcRepresentationItem,
16528    IfcType::IfcRepresentationMap,
16529    IfcType::IfcResource,
16530    IfcType::IfcResourceApprovalRelationship,
16531    IfcType::IfcResourceConstraintRelationship,
16532    IfcType::IfcResourceLevelRelationship,
16533    IfcType::IfcResourceTime,
16534    IfcType::IfcRevolvedAreaSolid,
16535    IfcType::IfcRevolvedAreaSolidTapered,
16536    IfcType::IfcRightCircularCone,
16537    IfcType::IfcRightCircularCylinder,
16538    IfcType::IfcRigidOperation,
16539    IfcType::IfcRoad,
16540    IfcType::IfcRoadPart,
16541    IfcType::IfcRoof,
16542    IfcType::IfcRoofType,
16543    IfcType::IfcRoot,
16544    IfcType::IfcRoundedRectangleProfileDef,
16545    IfcType::IfcSIUnit,
16546    IfcType::IfcSanitaryTerminal,
16547    IfcType::IfcSanitaryTerminalType,
16548    IfcType::IfcSchedulingTime,
16549    IfcType::IfcSeamCurve,
16550    IfcType::IfcSecondOrderPolynomialSpiral,
16551    IfcType::IfcSectionProperties,
16552    IfcType::IfcSectionReinforcementProperties,
16553    IfcType::IfcSectionedSolid,
16554    IfcType::IfcSectionedSolidHorizontal,
16555    IfcType::IfcSectionedSpine,
16556    IfcType::IfcSectionedSurface,
16557    IfcType::IfcSegment,
16558    IfcType::IfcSegmentedReferenceCurve,
16559    IfcType::IfcSensor,
16560    IfcType::IfcSensorType,
16561    IfcType::IfcSeventhOrderPolynomialSpiral,
16562    IfcType::IfcShadingDevice,
16563    IfcType::IfcShadingDeviceType,
16564    IfcType::IfcShapeAspect,
16565    IfcType::IfcShapeModel,
16566    IfcType::IfcShapeRepresentation,
16567    IfcType::IfcShellBasedSurfaceModel,
16568    IfcType::IfcSign,
16569    IfcType::IfcSignType,
16570    IfcType::IfcSignal,
16571    IfcType::IfcSignalType,
16572    IfcType::IfcSimpleProperty,
16573    IfcType::IfcSimplePropertyTemplate,
16574    IfcType::IfcSineSpiral,
16575    IfcType::IfcSite,
16576    IfcType::IfcSlab,
16577    IfcType::IfcSlabType,
16578    IfcType::IfcSlippageConnectionCondition,
16579    IfcType::IfcSolarDevice,
16580    IfcType::IfcSolarDeviceType,
16581    IfcType::IfcSolidModel,
16582    IfcType::IfcSpace,
16583    IfcType::IfcSpaceHeater,
16584    IfcType::IfcSpaceHeaterType,
16585    IfcType::IfcSpaceType,
16586    IfcType::IfcSpatialElement,
16587    IfcType::IfcSpatialElementType,
16588    IfcType::IfcSpatialStructureElement,
16589    IfcType::IfcSpatialStructureElementType,
16590    IfcType::IfcSpatialZone,
16591    IfcType::IfcSpatialZoneType,
16592    IfcType::IfcSphere,
16593    IfcType::IfcSphericalSurface,
16594    IfcType::IfcSpiral,
16595    IfcType::IfcStackTerminal,
16596    IfcType::IfcStackTerminalType,
16597    IfcType::IfcStair,
16598    IfcType::IfcStairFlight,
16599    IfcType::IfcStairFlightType,
16600    IfcType::IfcStairType,
16601    IfcType::IfcStructuralAction,
16602    IfcType::IfcStructuralActivity,
16603    IfcType::IfcStructuralAnalysisModel,
16604    IfcType::IfcStructuralConnection,
16605    IfcType::IfcStructuralConnectionCondition,
16606    IfcType::IfcStructuralCurveAction,
16607    IfcType::IfcStructuralCurveConnection,
16608    IfcType::IfcStructuralCurveMember,
16609    IfcType::IfcStructuralCurveMemberVarying,
16610    IfcType::IfcStructuralCurveReaction,
16611    IfcType::IfcStructuralItem,
16612    IfcType::IfcStructuralLinearAction,
16613    IfcType::IfcStructuralLoad,
16614    IfcType::IfcStructuralLoadCase,
16615    IfcType::IfcStructuralLoadConfiguration,
16616    IfcType::IfcStructuralLoadGroup,
16617    IfcType::IfcStructuralLoadLinearForce,
16618    IfcType::IfcStructuralLoadOrResult,
16619    IfcType::IfcStructuralLoadPlanarForce,
16620    IfcType::IfcStructuralLoadSingleDisplacement,
16621    IfcType::IfcStructuralLoadSingleDisplacementDistortion,
16622    IfcType::IfcStructuralLoadSingleForce,
16623    IfcType::IfcStructuralLoadSingleForceWarping,
16624    IfcType::IfcStructuralLoadStatic,
16625    IfcType::IfcStructuralLoadTemperature,
16626    IfcType::IfcStructuralMember,
16627    IfcType::IfcStructuralPlanarAction,
16628    IfcType::IfcStructuralPointAction,
16629    IfcType::IfcStructuralPointConnection,
16630    IfcType::IfcStructuralPointReaction,
16631    IfcType::IfcStructuralReaction,
16632    IfcType::IfcStructuralResultGroup,
16633    IfcType::IfcStructuralSurfaceAction,
16634    IfcType::IfcStructuralSurfaceConnection,
16635    IfcType::IfcStructuralSurfaceMember,
16636    IfcType::IfcStructuralSurfaceMemberVarying,
16637    IfcType::IfcStructuralSurfaceReaction,
16638    IfcType::IfcStyleModel,
16639    IfcType::IfcStyledItem,
16640    IfcType::IfcStyledRepresentation,
16641    IfcType::IfcSubContractResource,
16642    IfcType::IfcSubContractResourceType,
16643    IfcType::IfcSubedge,
16644    IfcType::IfcSurface,
16645    IfcType::IfcSurfaceCurve,
16646    IfcType::IfcSurfaceCurveSweptAreaSolid,
16647    IfcType::IfcSurfaceFeature,
16648    IfcType::IfcSurfaceOfLinearExtrusion,
16649    IfcType::IfcSurfaceOfRevolution,
16650    IfcType::IfcSurfaceReinforcementArea,
16651    IfcType::IfcSurfaceStyle,
16652    IfcType::IfcSurfaceStyleLighting,
16653    IfcType::IfcSurfaceStyleRefraction,
16654    IfcType::IfcSurfaceStyleRendering,
16655    IfcType::IfcSurfaceStyleShading,
16656    IfcType::IfcSurfaceStyleWithTextures,
16657    IfcType::IfcSurfaceTexture,
16658    IfcType::IfcSweptAreaSolid,
16659    IfcType::IfcSweptDiskSolid,
16660    IfcType::IfcSweptDiskSolidPolygonal,
16661    IfcType::IfcSweptSurface,
16662    IfcType::IfcSwitchingDevice,
16663    IfcType::IfcSwitchingDeviceType,
16664    IfcType::IfcSystem,
16665    IfcType::IfcSystemFurnitureElement,
16666    IfcType::IfcSystemFurnitureElementType,
16667    IfcType::IfcTShapeProfileDef,
16668    IfcType::IfcTable,
16669    IfcType::IfcTableColumn,
16670    IfcType::IfcTableRow,
16671    IfcType::IfcTank,
16672    IfcType::IfcTankType,
16673    IfcType::IfcTask,
16674    IfcType::IfcTaskTime,
16675    IfcType::IfcTaskTimeRecurring,
16676    IfcType::IfcTaskType,
16677    IfcType::IfcTelecomAddress,
16678    IfcType::IfcTendon,
16679    IfcType::IfcTendonAnchor,
16680    IfcType::IfcTendonAnchorType,
16681    IfcType::IfcTendonConduit,
16682    IfcType::IfcTendonConduitType,
16683    IfcType::IfcTendonType,
16684    IfcType::IfcTessellatedFaceSet,
16685    IfcType::IfcTessellatedItem,
16686    IfcType::IfcTextLiteral,
16687    IfcType::IfcTextLiteralWithExtent,
16688    IfcType::IfcTextStyle,
16689    IfcType::IfcTextStyleFontModel,
16690    IfcType::IfcTextStyleForDefinedFont,
16691    IfcType::IfcTextStyleTextModel,
16692    IfcType::IfcTextureCoordinate,
16693    IfcType::IfcTextureCoordinateGenerator,
16694    IfcType::IfcTextureCoordinateIndices,
16695    IfcType::IfcTextureCoordinateIndicesWithVoids,
16696    IfcType::IfcTextureMap,
16697    IfcType::IfcTextureVertex,
16698    IfcType::IfcTextureVertexList,
16699    IfcType::IfcThirdOrderPolynomialSpiral,
16700    IfcType::IfcTimePeriod,
16701    IfcType::IfcTimeSeries,
16702    IfcType::IfcTimeSeriesValue,
16703    IfcType::IfcTopologicalRepresentationItem,
16704    IfcType::IfcTopologyRepresentation,
16705    IfcType::IfcToroidalSurface,
16706    IfcType::IfcTrackElement,
16707    IfcType::IfcTrackElementType,
16708    IfcType::IfcTransformer,
16709    IfcType::IfcTransformerType,
16710    IfcType::IfcTransportElement,
16711    IfcType::IfcTransportElementType,
16712    IfcType::IfcTransportationDevice,
16713    IfcType::IfcTransportationDeviceType,
16714    IfcType::IfcTrapeziumProfileDef,
16715    IfcType::IfcTriangulatedFaceSet,
16716    IfcType::IfcTriangulatedIrregularNetwork,
16717    IfcType::IfcTrimmedCurve,
16718    IfcType::IfcTubeBundle,
16719    IfcType::IfcTubeBundleType,
16720    IfcType::IfcTypeObject,
16721    IfcType::IfcTypeProcess,
16722    IfcType::IfcTypeProduct,
16723    IfcType::IfcTypeResource,
16724    IfcType::IfcUShapeProfileDef,
16725    IfcType::IfcUnitAssignment,
16726    IfcType::IfcUnitaryControlElement,
16727    IfcType::IfcUnitaryControlElementType,
16728    IfcType::IfcUnitaryEquipment,
16729    IfcType::IfcUnitaryEquipmentType,
16730    IfcType::IfcValve,
16731    IfcType::IfcValveType,
16732    IfcType::IfcVector,
16733    IfcType::IfcVehicle,
16734    IfcType::IfcVehicleType,
16735    IfcType::IfcVertex,
16736    IfcType::IfcVertexLoop,
16737    IfcType::IfcVertexPoint,
16738    IfcType::IfcVibrationDamper,
16739    IfcType::IfcVibrationDamperType,
16740    IfcType::IfcVibrationIsolator,
16741    IfcType::IfcVibrationIsolatorType,
16742    IfcType::IfcVirtualElement,
16743    IfcType::IfcVirtualGridIntersection,
16744    IfcType::IfcVoidingFeature,
16745    IfcType::IfcWall,
16746    IfcType::IfcWallStandardCase,
16747    IfcType::IfcWallType,
16748    IfcType::IfcWasteTerminal,
16749    IfcType::IfcWasteTerminalType,
16750    IfcType::IfcWellKnownText,
16751    IfcType::IfcWindow,
16752    IfcType::IfcWindowLiningProperties,
16753    IfcType::IfcWindowPanelProperties,
16754    IfcType::IfcWindowType,
16755    IfcType::IfcWorkCalendar,
16756    IfcType::IfcWorkControl,
16757    IfcType::IfcWorkPlan,
16758    IfcType::IfcWorkSchedule,
16759    IfcType::IfcWorkTime,
16760    IfcType::IfcZShapeProfileDef,
16761    IfcType::IfcZone,
16762];
16763
16764impl fmt::Display for IfcType {
16765    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
16766        write!(f, "{}", self.name())
16767    }
16768}
16769
16770/// CRC32 hash function for unknown types
16771fn crc32_hash(s: &str) -> u32 {
16772    const TABLE: [u32; 256] = [
16773        0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, 0xe963a535,
16774        0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, 0x09b64c2b, 0x7eb17cbd,
16775        0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, 0x1adad47d,
16776        0x6ddde4eb, 0xf4d4b551, 0x83d385c7, 0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec,
16777        0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4,
16778        0xa2677172, 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa, 0x42b2986c,
16779        0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, 0x26d930ac,
16780        0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f,
16781        0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, 0x2f6f7c87, 0x58684c11, 0xc1611dab,
16782        0xb6662d3d, 0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f,
16783        0x9fbfe4a5, 0xe8b8d433, 0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb,
16784        0x086d3d2d, 0x91646c97, 0xe6635c01, 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e,
16785        0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea,
16786        0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, 0x4db26158, 0x3ab551ce,
16787        0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a,
16788        0x346ed9fc, 0xad678846, 0xda60b8d0, 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9,
16789        0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409,
16790        0xce61e49f, 0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81,
16791        0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, 0xead54739,
16792        0x9dd277af, 0x04db2615, 0x73dc1683, 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8,
16793        0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, 0xf00f9344, 0x8708a3d2, 0x1e01f268,
16794        0x6906c2fe, 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0,
16795        0x10da7a5a, 0x67dd4acc, 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, 0xd6d6a3e8,
16796        0xa1d1937e, 0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b,
16797        0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, 0x316e8eef,
16798        0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, 0xcc0c7795, 0xbb0b4703,
16799        0x220216b9, 0x5505262f, 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7,
16800        0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, 0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a,
16801        0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, 0x95bf4a82, 0xe2b87a14, 0x7bb12bae,
16802        0x0cb61b38, 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242,
16803        0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, 0x88085ae6,
16804        0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45,
16805        0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, 0xa7672661, 0xd06016f7, 0x4969474d,
16806        0x3e6e77db, 0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0, 0xa9bcae53, 0xdebb9ec5,
16807        0x47b2cf7f, 0x30b5ffe9, 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605,
16808        0xcdd70693, 0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94,
16809        0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d,
16810    ];
16811
16812    let mut crc = 0xffffffffu32;
16813    for byte in s.bytes() {
16814        crc = TABLE[((crc ^ byte as u32) & 0xff) as usize] ^ (crc >> 8);
16815    }
16816    crc ^ 0xffffffff
16817}