diff --git a/cmake/CMakeLists.txt b/cmake/CMakeLists.txt
index efaad7e931..a620da50fa 100644
--- a/cmake/CMakeLists.txt
+++ b/cmake/CMakeLists.txt
@@ -620,7 +620,7 @@ function(files_for_ifc_version IFC_VERSION RESULT_NAME)
endfunction()
if(NOT SCHEMA_VERSIONS)
- set(SCHEMA_VERSIONS "2x3" "4" "4x1" "4x2" "4x3_rc1" "4x3_rc2" "4x3_rc3" "4x3_rc4" "4x3")
+ set(SCHEMA_VERSIONS "2x3" "4" "4x1" "4x2" "4x3_rc1" "4x3_rc2" "4x3_rc3" "4x3_rc4" "4x3" "4x3_add1")
endif()
foreach(s ${SCHEMA_VERSIONS})
diff --git a/src/ifcgeom_schema_agnostic/Kernel.cpp b/src/ifcgeom_schema_agnostic/Kernel.cpp
index ad0bf2063b..b70b18bf7b 100644
--- a/src/ifcgeom_schema_agnostic/Kernel.cpp
+++ b/src/ifcgeom_schema_agnostic/Kernel.cpp
@@ -175,6 +175,11 @@ namespace {
GET_RELATINGOBJECT_IFC4_VARIANT(Ifc4x3);
CREATE_GET_DECOMPOSING_ENTITY(Ifc4x3);
#endif
+
+#ifdef HAS_SCHEMA_4x3_add1
+ GET_RELATINGOBJECT_IFC4_VARIANT(Ifc4x3_add1);
+ CREATE_GET_DECOMPOSING_ENTITY(Ifc4x3_add1);
+#endif
}
// Declares the schema-based IfcProduct check:
diff --git a/src/ifcparse/Ifc4x3_add1-definitions.h b/src/ifcparse/Ifc4x3_add1-definitions.h
new file mode 100644
index 0000000000..9edba44aec
--- /dev/null
+++ b/src/ifcparse/Ifc4x3_add1-definitions.h
@@ -0,0 +1,4045 @@
+/********************************************************************************
+ * *
+ * This file is part of IfcOpenShell. *
+ * *
+ * IfcOpenShell is free software: you can redistribute it and/or modify *
+ * it under the terms of the Lesser GNU General Public License as published by *
+ * the Free Software Foundation, either version 3.0 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * IfcOpenShell is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * Lesser GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the Lesser GNU General Public License *
+ * along with this program. If not, see . *
+ * *
+ ********************************************************************************/
+
+/********************************************************************************
+ * *
+ * This file has been generated from IFC4X3_ADD1.exp. Do not make modifications *
+ * but instead modify the python script that has been used to generate this. *
+ * *
+ ********************************************************************************/
+
+#define SCHEMA_HAS_IfcAbsorbedDoseMeasure
+#define SCHEMA_HAS_IfcAccelerationMeasure
+#define SCHEMA_HAS_IfcActionRequestTypeEnum
+#define SCHEMA_HAS_IfcActionSourceTypeEnum
+#define SCHEMA_HAS_IfcActionTypeEnum
+#define SCHEMA_HAS_IfcActorSelect
+#define SCHEMA_HAS_IfcActuatorTypeEnum
+#define SCHEMA_HAS_IfcAddressTypeEnum
+#define SCHEMA_HAS_IfcAirTerminalBoxTypeEnum
+#define SCHEMA_HAS_IfcAirTerminalTypeEnum
+#define SCHEMA_HAS_IfcAirToAirHeatRecoveryTypeEnum
+#define SCHEMA_HAS_IfcAlarmTypeEnum
+#define SCHEMA_HAS_IfcAlignmentCantSegmentTypeEnum
+#define SCHEMA_HAS_IfcAlignmentHorizontalSegmentTypeEnum
+#define SCHEMA_HAS_IfcAlignmentTypeEnum
+#define SCHEMA_HAS_IfcAlignmentVerticalSegmentTypeEnum
+#define SCHEMA_HAS_IfcAmountOfSubstanceMeasure
+#define SCHEMA_HAS_IfcAnalysisModelTypeEnum
+#define SCHEMA_HAS_IfcAnalysisTheoryTypeEnum
+#define SCHEMA_HAS_IfcAngularVelocityMeasure
+#define SCHEMA_HAS_IfcAnnotationTypeEnum
+#define SCHEMA_HAS_IfcAppliedValueSelect
+#define SCHEMA_HAS_IfcArcIndex
+#define SCHEMA_HAS_IfcAreaDensityMeasure
+#define SCHEMA_HAS_IfcAreaMeasure
+#define SCHEMA_HAS_IfcArithmeticOperatorEnum
+#define SCHEMA_HAS_IfcAssemblyPlaceEnum
+#define SCHEMA_HAS_IfcAudioVisualApplianceTypeEnum
+#define SCHEMA_HAS_IfcAxis2Placement
+#define SCHEMA_HAS_IfcBSplineCurveForm
+#define SCHEMA_HAS_IfcBSplineSurfaceForm
+#define SCHEMA_HAS_IfcBeamTypeEnum
+#define SCHEMA_HAS_IfcBearingTypeEnum
+#define SCHEMA_HAS_IfcBenchmarkEnum
+#define SCHEMA_HAS_IfcBendingParameterSelect
+#define SCHEMA_HAS_IfcBinary
+#define SCHEMA_HAS_IfcBoilerTypeEnum
+#define SCHEMA_HAS_IfcBoolean
+#define SCHEMA_HAS_IfcBooleanOperand
+#define SCHEMA_HAS_IfcBooleanOperator
+#define SCHEMA_HAS_IfcBoxAlignment
+#define SCHEMA_HAS_IfcBridgePartTypeEnum
+#define SCHEMA_HAS_IfcBridgeTypeEnum
+#define SCHEMA_HAS_IfcBuildingElementPartTypeEnum
+#define SCHEMA_HAS_IfcBuildingElementProxyTypeEnum
+#define SCHEMA_HAS_IfcBuildingSystemTypeEnum
+#define SCHEMA_HAS_IfcBuiltSystemTypeEnum
+#define SCHEMA_HAS_IfcBurnerTypeEnum
+#define SCHEMA_HAS_IfcCableCarrierFittingTypeEnum
+#define SCHEMA_HAS_IfcCableCarrierSegmentTypeEnum
+#define SCHEMA_HAS_IfcCableFittingTypeEnum
+#define SCHEMA_HAS_IfcCableSegmentTypeEnum
+#define SCHEMA_HAS_IfcCaissonFoundationTypeEnum
+#define SCHEMA_HAS_IfcCardinalPointReference
+#define SCHEMA_HAS_IfcChangeActionEnum
+#define SCHEMA_HAS_IfcChillerTypeEnum
+#define SCHEMA_HAS_IfcChimneyTypeEnum
+#define SCHEMA_HAS_IfcClassificationReferenceSelect
+#define SCHEMA_HAS_IfcClassificationSelect
+#define SCHEMA_HAS_IfcCoilTypeEnum
+#define SCHEMA_HAS_IfcColour
+#define SCHEMA_HAS_IfcColourOrFactor
+#define SCHEMA_HAS_IfcColumnTypeEnum
+#define SCHEMA_HAS_IfcCommunicationsApplianceTypeEnum
+#define SCHEMA_HAS_IfcComplexNumber
+#define SCHEMA_HAS_IfcComplexPropertyTemplateTypeEnum
+#define SCHEMA_HAS_IfcCompoundPlaneAngleMeasure
+#define SCHEMA_HAS_IfcCompressorTypeEnum
+#define SCHEMA_HAS_IfcCondenserTypeEnum
+#define SCHEMA_HAS_IfcConnectionTypeEnum
+#define SCHEMA_HAS_IfcConstraintEnum
+#define SCHEMA_HAS_IfcConstructionEquipmentResourceTypeEnum
+#define SCHEMA_HAS_IfcConstructionMaterialResourceTypeEnum
+#define SCHEMA_HAS_IfcConstructionProductResourceTypeEnum
+#define SCHEMA_HAS_IfcContextDependentMeasure
+#define SCHEMA_HAS_IfcControllerTypeEnum
+#define SCHEMA_HAS_IfcConveyorSegmentTypeEnum
+#define SCHEMA_HAS_IfcCooledBeamTypeEnum
+#define SCHEMA_HAS_IfcCoolingTowerTypeEnum
+#define SCHEMA_HAS_IfcCoordinateReferenceSystemSelect
+#define SCHEMA_HAS_IfcCostItemTypeEnum
+#define SCHEMA_HAS_IfcCostScheduleTypeEnum
+#define SCHEMA_HAS_IfcCountMeasure
+#define SCHEMA_HAS_IfcCourseTypeEnum
+#define SCHEMA_HAS_IfcCoveringTypeEnum
+#define SCHEMA_HAS_IfcCrewResourceTypeEnum
+#define SCHEMA_HAS_IfcCsgSelect
+#define SCHEMA_HAS_IfcCurtainWallTypeEnum
+#define SCHEMA_HAS_IfcCurvatureMeasure
+#define SCHEMA_HAS_IfcCurveFontOrScaledCurveFontSelect
+#define SCHEMA_HAS_IfcCurveInterpolationEnum
+#define SCHEMA_HAS_IfcCurveMeasureSelect
+#define SCHEMA_HAS_IfcCurveOnSurface
+#define SCHEMA_HAS_IfcCurveOrEdgeCurve
+#define SCHEMA_HAS_IfcCurveStyleFontSelect
+#define SCHEMA_HAS_IfcDamperTypeEnum
+#define SCHEMA_HAS_IfcDataOriginEnum
+#define SCHEMA_HAS_IfcDate
+#define SCHEMA_HAS_IfcDateTime
+#define SCHEMA_HAS_IfcDayInMonthNumber
+#define SCHEMA_HAS_IfcDayInWeekNumber
+#define SCHEMA_HAS_IfcDefinitionSelect
+#define SCHEMA_HAS_IfcDerivedMeasureValue
+#define SCHEMA_HAS_IfcDerivedUnitEnum
+#define SCHEMA_HAS_IfcDescriptiveMeasure
+#define SCHEMA_HAS_IfcDimensionCount
+#define SCHEMA_HAS_IfcDirectionSenseEnum
+#define SCHEMA_HAS_IfcDiscreteAccessoryTypeEnum
+#define SCHEMA_HAS_IfcDistributionBoardTypeEnum
+#define SCHEMA_HAS_IfcDistributionChamberElementTypeEnum
+#define SCHEMA_HAS_IfcDistributionPortTypeEnum
+#define SCHEMA_HAS_IfcDistributionSystemEnum
+#define SCHEMA_HAS_IfcDocumentConfidentialityEnum
+#define SCHEMA_HAS_IfcDocumentSelect
+#define SCHEMA_HAS_IfcDocumentStatusEnum
+#define SCHEMA_HAS_IfcDoorPanelOperationEnum
+#define SCHEMA_HAS_IfcDoorPanelPositionEnum
+#define SCHEMA_HAS_IfcDoorTypeEnum
+#define SCHEMA_HAS_IfcDoorTypeOperationEnum
+#define SCHEMA_HAS_IfcDoseEquivalentMeasure
+#define SCHEMA_HAS_IfcDuctFittingTypeEnum
+#define SCHEMA_HAS_IfcDuctSegmentTypeEnum
+#define SCHEMA_HAS_IfcDuctSilencerTypeEnum
+#define SCHEMA_HAS_IfcDuration
+#define SCHEMA_HAS_IfcDynamicViscosityMeasure
+#define SCHEMA_HAS_IfcEarthworksCutTypeEnum
+#define SCHEMA_HAS_IfcEarthworksFillTypeEnum
+#define SCHEMA_HAS_IfcElectricApplianceTypeEnum
+#define SCHEMA_HAS_IfcElectricCapacitanceMeasure
+#define SCHEMA_HAS_IfcElectricChargeMeasure
+#define SCHEMA_HAS_IfcElectricConductanceMeasure
+#define SCHEMA_HAS_IfcElectricCurrentMeasure
+#define SCHEMA_HAS_IfcElectricDistributionBoardTypeEnum
+#define SCHEMA_HAS_IfcElectricFlowStorageDeviceTypeEnum
+#define SCHEMA_HAS_IfcElectricFlowTreatmentDeviceTypeEnum
+#define SCHEMA_HAS_IfcElectricGeneratorTypeEnum
+#define SCHEMA_HAS_IfcElectricMotorTypeEnum
+#define SCHEMA_HAS_IfcElectricResistanceMeasure
+#define SCHEMA_HAS_IfcElectricTimeControlTypeEnum
+#define SCHEMA_HAS_IfcElectricVoltageMeasure
+#define SCHEMA_HAS_IfcElementAssemblyTypeEnum
+#define SCHEMA_HAS_IfcElementCompositionEnum
+#define SCHEMA_HAS_IfcEnergyMeasure
+#define SCHEMA_HAS_IfcEngineTypeEnum
+#define SCHEMA_HAS_IfcEvaporativeCoolerTypeEnum
+#define SCHEMA_HAS_IfcEvaporatorTypeEnum
+#define SCHEMA_HAS_IfcEventTriggerTypeEnum
+#define SCHEMA_HAS_IfcEventTypeEnum
+#define SCHEMA_HAS_IfcExternalSpatialElementTypeEnum
+#define SCHEMA_HAS_IfcFacilityPartCommonTypeEnum
+#define SCHEMA_HAS_IfcFacilityUsageEnum
+#define SCHEMA_HAS_IfcFanTypeEnum
+#define SCHEMA_HAS_IfcFastenerTypeEnum
+#define SCHEMA_HAS_IfcFillStyleSelect
+#define SCHEMA_HAS_IfcFilterTypeEnum
+#define SCHEMA_HAS_IfcFireSuppressionTerminalTypeEnum
+#define SCHEMA_HAS_IfcFlowDirectionEnum
+#define SCHEMA_HAS_IfcFlowInstrumentTypeEnum
+#define SCHEMA_HAS_IfcFlowMeterTypeEnum
+#define SCHEMA_HAS_IfcFontStyle
+#define SCHEMA_HAS_IfcFontVariant
+#define SCHEMA_HAS_IfcFontWeight
+#define SCHEMA_HAS_IfcFootingTypeEnum
+#define SCHEMA_HAS_IfcForceMeasure
+#define SCHEMA_HAS_IfcFrequencyMeasure
+#define SCHEMA_HAS_IfcFurnitureTypeEnum
+#define SCHEMA_HAS_IfcGeographicElementTypeEnum
+#define SCHEMA_HAS_IfcGeometricProjectionEnum
+#define SCHEMA_HAS_IfcGeometricSetSelect
+#define SCHEMA_HAS_IfcGeotechnicalStratumTypeEnum
+#define SCHEMA_HAS_IfcGlobalOrLocalEnum
+#define SCHEMA_HAS_IfcGloballyUniqueId
+#define SCHEMA_HAS_IfcGridPlacementDirectionSelect
+#define SCHEMA_HAS_IfcGridTypeEnum
+#define SCHEMA_HAS_IfcHatchLineDistanceSelect
+#define SCHEMA_HAS_IfcHeatExchangerTypeEnum
+#define SCHEMA_HAS_IfcHeatFluxDensityMeasure
+#define SCHEMA_HAS_IfcHeatingValueMeasure
+#define SCHEMA_HAS_IfcHumidifierTypeEnum
+#define SCHEMA_HAS_IfcIdentifier
+#define SCHEMA_HAS_IfcIlluminanceMeasure
+#define SCHEMA_HAS_IfcImpactProtectionDeviceTypeEnum
+#define SCHEMA_HAS_IfcInductanceMeasure
+#define SCHEMA_HAS_IfcInteger
+#define SCHEMA_HAS_IfcIntegerCountRateMeasure
+#define SCHEMA_HAS_IfcInterceptorTypeEnum
+#define SCHEMA_HAS_IfcInterferenceSelect
+#define SCHEMA_HAS_IfcInternalOrExternalEnum
+#define SCHEMA_HAS_IfcInventoryTypeEnum
+#define SCHEMA_HAS_IfcIonConcentrationMeasure
+#define SCHEMA_HAS_IfcIsothermalMoistureCapacityMeasure
+#define SCHEMA_HAS_IfcJunctionBoxTypeEnum
+#define SCHEMA_HAS_IfcKerbTypeEnum
+#define SCHEMA_HAS_IfcKinematicViscosityMeasure
+#define SCHEMA_HAS_IfcKnotType
+#define SCHEMA_HAS_IfcLabel
+#define SCHEMA_HAS_IfcLaborResourceTypeEnum
+#define SCHEMA_HAS_IfcLampTypeEnum
+#define SCHEMA_HAS_IfcLanguageId
+#define SCHEMA_HAS_IfcLayerSetDirectionEnum
+#define SCHEMA_HAS_IfcLayeredItem
+#define SCHEMA_HAS_IfcLengthMeasure
+#define SCHEMA_HAS_IfcLibrarySelect
+#define SCHEMA_HAS_IfcLightDistributionCurveEnum
+#define SCHEMA_HAS_IfcLightDistributionDataSourceSelect
+#define SCHEMA_HAS_IfcLightEmissionSourceEnum
+#define SCHEMA_HAS_IfcLightFixtureTypeEnum
+#define SCHEMA_HAS_IfcLineIndex
+#define SCHEMA_HAS_IfcLinearForceMeasure
+#define SCHEMA_HAS_IfcLinearMomentMeasure
+#define SCHEMA_HAS_IfcLinearStiffnessMeasure
+#define SCHEMA_HAS_IfcLinearVelocityMeasure
+#define SCHEMA_HAS_IfcLiquidTerminalTypeEnum
+#define SCHEMA_HAS_IfcLoadGroupTypeEnum
+#define SCHEMA_HAS_IfcLogical
+#define SCHEMA_HAS_IfcLogicalOperatorEnum
+#define SCHEMA_HAS_IfcLuminousFluxMeasure
+#define SCHEMA_HAS_IfcLuminousIntensityDistributionMeasure
+#define SCHEMA_HAS_IfcLuminousIntensityMeasure
+#define SCHEMA_HAS_IfcMagneticFluxDensityMeasure
+#define SCHEMA_HAS_IfcMagneticFluxMeasure
+#define SCHEMA_HAS_IfcMarineFacilityTypeEnum
+#define SCHEMA_HAS_IfcMarinePartTypeEnum
+#define SCHEMA_HAS_IfcMassDensityMeasure
+#define SCHEMA_HAS_IfcMassFlowRateMeasure
+#define SCHEMA_HAS_IfcMassMeasure
+#define SCHEMA_HAS_IfcMassPerLengthMeasure
+#define SCHEMA_HAS_IfcMaterialSelect
+#define SCHEMA_HAS_IfcMeasureValue
+#define SCHEMA_HAS_IfcMechanicalFastenerTypeEnum
+#define SCHEMA_HAS_IfcMedicalDeviceTypeEnum
+#define SCHEMA_HAS_IfcMemberTypeEnum
+#define SCHEMA_HAS_IfcMetricValueSelect
+#define SCHEMA_HAS_IfcMobileTelecommunicationsApplianceTypeEnum
+#define SCHEMA_HAS_IfcModulusOfElasticityMeasure
+#define SCHEMA_HAS_IfcModulusOfLinearSubgradeReactionMeasure
+#define SCHEMA_HAS_IfcModulusOfRotationalSubgradeReactionMeasure
+#define SCHEMA_HAS_IfcModulusOfRotationalSubgradeReactionSelect
+#define SCHEMA_HAS_IfcModulusOfSubgradeReactionMeasure
+#define SCHEMA_HAS_IfcModulusOfSubgradeReactionSelect
+#define SCHEMA_HAS_IfcModulusOfTranslationalSubgradeReactionSelect
+#define SCHEMA_HAS_IfcMoistureDiffusivityMeasure
+#define SCHEMA_HAS_IfcMolecularWeightMeasure
+#define SCHEMA_HAS_IfcMomentOfInertiaMeasure
+#define SCHEMA_HAS_IfcMonetaryMeasure
+#define SCHEMA_HAS_IfcMonthInYearNumber
+#define SCHEMA_HAS_IfcMooringDeviceTypeEnum
+#define SCHEMA_HAS_IfcMotorConnectionTypeEnum
+#define SCHEMA_HAS_IfcNavigationElementTypeEnum
+#define SCHEMA_HAS_IfcNonNegativeLengthMeasure
+#define SCHEMA_HAS_IfcNormalisedRatioMeasure
+#define SCHEMA_HAS_IfcNumericMeasure
+#define SCHEMA_HAS_IfcObjectReferenceSelect
+#define SCHEMA_HAS_IfcObjectiveEnum
+#define SCHEMA_HAS_IfcOccupantTypeEnum
+#define SCHEMA_HAS_IfcOpeningElementTypeEnum
+#define SCHEMA_HAS_IfcOutletTypeEnum
+#define SCHEMA_HAS_IfcPHMeasure
+#define SCHEMA_HAS_IfcParameterValue
+#define SCHEMA_HAS_IfcPavementTypeEnum
+#define SCHEMA_HAS_IfcPerformanceHistoryTypeEnum
+#define SCHEMA_HAS_IfcPermeableCoveringOperationEnum
+#define SCHEMA_HAS_IfcPermitTypeEnum
+#define SCHEMA_HAS_IfcPhysicalOrVirtualEnum
+#define SCHEMA_HAS_IfcPileConstructionEnum
+#define SCHEMA_HAS_IfcPileTypeEnum
+#define SCHEMA_HAS_IfcPipeFittingTypeEnum
+#define SCHEMA_HAS_IfcPipeSegmentTypeEnum
+#define SCHEMA_HAS_IfcPlanarForceMeasure
+#define SCHEMA_HAS_IfcPlaneAngleMeasure
+#define SCHEMA_HAS_IfcPlateTypeEnum
+#define SCHEMA_HAS_IfcPointOrVertexPoint
+#define SCHEMA_HAS_IfcPositiveInteger
+#define SCHEMA_HAS_IfcPositiveLengthMeasure
+#define SCHEMA_HAS_IfcPositivePlaneAngleMeasure
+#define SCHEMA_HAS_IfcPositiveRatioMeasure
+#define SCHEMA_HAS_IfcPowerMeasure
+#define SCHEMA_HAS_IfcPreferredSurfaceCurveRepresentation
+#define SCHEMA_HAS_IfcPresentableText
+#define SCHEMA_HAS_IfcPressureMeasure
+#define SCHEMA_HAS_IfcProcedureTypeEnum
+#define SCHEMA_HAS_IfcProcessSelect
+#define SCHEMA_HAS_IfcProductRepresentationSelect
+#define SCHEMA_HAS_IfcProductSelect
+#define SCHEMA_HAS_IfcProfileTypeEnum
+#define SCHEMA_HAS_IfcProjectOrderTypeEnum
+#define SCHEMA_HAS_IfcProjectedOrTrueLengthEnum
+#define SCHEMA_HAS_IfcProjectionElementTypeEnum
+#define SCHEMA_HAS_IfcPropertySetDefinitionSelect
+#define SCHEMA_HAS_IfcPropertySetDefinitionSet
+#define SCHEMA_HAS_IfcPropertySetTemplateTypeEnum
+#define SCHEMA_HAS_IfcProtectiveDeviceTrippingUnitTypeEnum
+#define SCHEMA_HAS_IfcProtectiveDeviceTypeEnum
+#define SCHEMA_HAS_IfcPumpTypeEnum
+#define SCHEMA_HAS_IfcRadioActivityMeasure
+#define SCHEMA_HAS_IfcRailTypeEnum
+#define SCHEMA_HAS_IfcRailingTypeEnum
+#define SCHEMA_HAS_IfcRailwayPartTypeEnum
+#define SCHEMA_HAS_IfcRailwayTypeEnum
+#define SCHEMA_HAS_IfcRampFlightTypeEnum
+#define SCHEMA_HAS_IfcRampTypeEnum
+#define SCHEMA_HAS_IfcRatioMeasure
+#define SCHEMA_HAS_IfcReal
+#define SCHEMA_HAS_IfcRecurrenceTypeEnum
+#define SCHEMA_HAS_IfcReferentTypeEnum
+#define SCHEMA_HAS_IfcReflectanceMethodEnum
+#define SCHEMA_HAS_IfcReinforcedSoilTypeEnum
+#define SCHEMA_HAS_IfcReinforcingBarRoleEnum
+#define SCHEMA_HAS_IfcReinforcingBarSurfaceEnum
+#define SCHEMA_HAS_IfcReinforcingBarTypeEnum
+#define SCHEMA_HAS_IfcReinforcingMeshTypeEnum
+#define SCHEMA_HAS_IfcResourceObjectSelect
+#define SCHEMA_HAS_IfcResourceSelect
+#define SCHEMA_HAS_IfcRoadPartTypeEnum
+#define SCHEMA_HAS_IfcRoadTypeEnum
+#define SCHEMA_HAS_IfcRoleEnum
+#define SCHEMA_HAS_IfcRoofTypeEnum
+#define SCHEMA_HAS_IfcRotationalFrequencyMeasure
+#define SCHEMA_HAS_IfcRotationalMassMeasure
+#define SCHEMA_HAS_IfcRotationalStiffnessMeasure
+#define SCHEMA_HAS_IfcRotationalStiffnessSelect
+#define SCHEMA_HAS_IfcSIPrefix
+#define SCHEMA_HAS_IfcSIUnitName
+#define SCHEMA_HAS_IfcSanitaryTerminalTypeEnum
+#define SCHEMA_HAS_IfcSectionModulusMeasure
+#define SCHEMA_HAS_IfcSectionTypeEnum
+#define SCHEMA_HAS_IfcSectionalAreaIntegralMeasure
+#define SCHEMA_HAS_IfcSegmentIndexSelect
+#define SCHEMA_HAS_IfcSensorTypeEnum
+#define SCHEMA_HAS_IfcSequenceEnum
+#define SCHEMA_HAS_IfcShadingDeviceTypeEnum
+#define SCHEMA_HAS_IfcShearModulusMeasure
+#define SCHEMA_HAS_IfcShell
+#define SCHEMA_HAS_IfcSignTypeEnum
+#define SCHEMA_HAS_IfcSignalTypeEnum
+#define SCHEMA_HAS_IfcSimplePropertyTemplateTypeEnum
+#define SCHEMA_HAS_IfcSimpleValue
+#define SCHEMA_HAS_IfcSizeSelect
+#define SCHEMA_HAS_IfcSlabTypeEnum
+#define SCHEMA_HAS_IfcSolarDeviceTypeEnum
+#define SCHEMA_HAS_IfcSolidAngleMeasure
+#define SCHEMA_HAS_IfcSolidOrShell
+#define SCHEMA_HAS_IfcSoundPowerLevelMeasure
+#define SCHEMA_HAS_IfcSoundPowerMeasure
+#define SCHEMA_HAS_IfcSoundPressureLevelMeasure
+#define SCHEMA_HAS_IfcSoundPressureMeasure
+#define SCHEMA_HAS_IfcSpaceBoundarySelect
+#define SCHEMA_HAS_IfcSpaceHeaterTypeEnum
+#define SCHEMA_HAS_IfcSpaceTypeEnum
+#define SCHEMA_HAS_IfcSpatialReferenceSelect
+#define SCHEMA_HAS_IfcSpatialZoneTypeEnum
+#define SCHEMA_HAS_IfcSpecificHeatCapacityMeasure
+#define SCHEMA_HAS_IfcSpecularExponent
+#define SCHEMA_HAS_IfcSpecularHighlightSelect
+#define SCHEMA_HAS_IfcSpecularRoughness
+#define SCHEMA_HAS_IfcStackTerminalTypeEnum
+#define SCHEMA_HAS_IfcStairFlightTypeEnum
+#define SCHEMA_HAS_IfcStairTypeEnum
+#define SCHEMA_HAS_IfcStateEnum
+#define SCHEMA_HAS_IfcStrippedOptional
+#define SCHEMA_HAS_IfcStructuralActivityAssignmentSelect
+#define SCHEMA_HAS_IfcStructuralCurveActivityTypeEnum
+#define SCHEMA_HAS_IfcStructuralCurveMemberTypeEnum
+#define SCHEMA_HAS_IfcStructuralSurfaceActivityTypeEnum
+#define SCHEMA_HAS_IfcStructuralSurfaceMemberTypeEnum
+#define SCHEMA_HAS_IfcSubContractResourceTypeEnum
+#define SCHEMA_HAS_IfcSurfaceFeatureTypeEnum
+#define SCHEMA_HAS_IfcSurfaceOrFaceSurface
+#define SCHEMA_HAS_IfcSurfaceSide
+#define SCHEMA_HAS_IfcSurfaceStyleElementSelect
+#define SCHEMA_HAS_IfcSwitchingDeviceTypeEnum
+#define SCHEMA_HAS_IfcSystemFurnitureElementTypeEnum
+#define SCHEMA_HAS_IfcTankTypeEnum
+#define SCHEMA_HAS_IfcTaskDurationEnum
+#define SCHEMA_HAS_IfcTaskTypeEnum
+#define SCHEMA_HAS_IfcTemperatureGradientMeasure
+#define SCHEMA_HAS_IfcTemperatureRateOfChangeMeasure
+#define SCHEMA_HAS_IfcTendonAnchorTypeEnum
+#define SCHEMA_HAS_IfcTendonConduitTypeEnum
+#define SCHEMA_HAS_IfcTendonTypeEnum
+#define SCHEMA_HAS_IfcText
+#define SCHEMA_HAS_IfcTextAlignment
+#define SCHEMA_HAS_IfcTextDecoration
+#define SCHEMA_HAS_IfcTextFontName
+#define SCHEMA_HAS_IfcTextFontSelect
+#define SCHEMA_HAS_IfcTextPath
+#define SCHEMA_HAS_IfcTextTransformation
+#define SCHEMA_HAS_IfcThermalAdmittanceMeasure
+#define SCHEMA_HAS_IfcThermalConductivityMeasure
+#define SCHEMA_HAS_IfcThermalExpansionCoefficientMeasure
+#define SCHEMA_HAS_IfcThermalResistanceMeasure
+#define SCHEMA_HAS_IfcThermalTransmittanceMeasure
+#define SCHEMA_HAS_IfcThermodynamicTemperatureMeasure
+#define SCHEMA_HAS_IfcTime
+#define SCHEMA_HAS_IfcTimeMeasure
+#define SCHEMA_HAS_IfcTimeOrRatioSelect
+#define SCHEMA_HAS_IfcTimeSeriesDataTypeEnum
+#define SCHEMA_HAS_IfcTimeStamp
+#define SCHEMA_HAS_IfcTorqueMeasure
+#define SCHEMA_HAS_IfcTrackElementTypeEnum
+#define SCHEMA_HAS_IfcTransformerTypeEnum
+#define SCHEMA_HAS_IfcTransitionCode
+#define SCHEMA_HAS_IfcTranslationalStiffnessSelect
+#define SCHEMA_HAS_IfcTransportElementTypeEnum
+#define SCHEMA_HAS_IfcTrimmingPreference
+#define SCHEMA_HAS_IfcTrimmingSelect
+#define SCHEMA_HAS_IfcTubeBundleTypeEnum
+#define SCHEMA_HAS_IfcURIReference
+#define SCHEMA_HAS_IfcUnit
+#define SCHEMA_HAS_IfcUnitEnum
+#define SCHEMA_HAS_IfcUnitaryControlElementTypeEnum
+#define SCHEMA_HAS_IfcUnitaryEquipmentTypeEnum
+#define SCHEMA_HAS_IfcValue
+#define SCHEMA_HAS_IfcValveTypeEnum
+#define SCHEMA_HAS_IfcVaporPermeabilityMeasure
+#define SCHEMA_HAS_IfcVectorOrDirection
+#define SCHEMA_HAS_IfcVehicleTypeEnum
+#define SCHEMA_HAS_IfcVibrationDamperTypeEnum
+#define SCHEMA_HAS_IfcVibrationIsolatorTypeEnum
+#define SCHEMA_HAS_IfcVirtualElementTypeEnum
+#define SCHEMA_HAS_IfcVoidingFeatureTypeEnum
+#define SCHEMA_HAS_IfcVolumeMeasure
+#define SCHEMA_HAS_IfcVolumetricFlowRateMeasure
+#define SCHEMA_HAS_IfcWallTypeEnum
+#define SCHEMA_HAS_IfcWarpingConstantMeasure
+#define SCHEMA_HAS_IfcWarpingMomentMeasure
+#define SCHEMA_HAS_IfcWarpingStiffnessSelect
+#define SCHEMA_HAS_IfcWasteTerminalTypeEnum
+#define SCHEMA_HAS_IfcWellKnownTextLiteral
+#define SCHEMA_HAS_IfcWindowPanelOperationEnum
+#define SCHEMA_HAS_IfcWindowPanelPositionEnum
+#define SCHEMA_HAS_IfcWindowTypeEnum
+#define SCHEMA_HAS_IfcWindowTypePartitioningEnum
+#define SCHEMA_HAS_IfcWorkCalendarTypeEnum
+#define SCHEMA_HAS_IfcWorkPlanTypeEnum
+#define SCHEMA_HAS_IfcWorkScheduleTypeEnum
+#define SCHEMA_HAS_IfcActionRequest
+#define SCHEMA_IfcActionRequest_HAS_PredefinedType
+#define SCHEMA_IfcActionRequest_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcActionRequest_HAS_Status
+#define SCHEMA_IfcActionRequest_Status_IS_OPTIONAL
+#define SCHEMA_IfcActionRequest_HAS_LongDescription
+#define SCHEMA_IfcActionRequest_LongDescription_IS_OPTIONAL
+#define SCHEMA_HAS_IfcActor
+#define SCHEMA_IfcActor_HAS_TheActor
+#define SCHEMA_IfcActor_HAS_IsActingUpon
+#define SCHEMA_HAS_IfcActorRole
+#define SCHEMA_IfcActorRole_HAS_Role
+#define SCHEMA_IfcActorRole_HAS_UserDefinedRole
+#define SCHEMA_IfcActorRole_UserDefinedRole_IS_OPTIONAL
+#define SCHEMA_IfcActorRole_HAS_Description
+#define SCHEMA_IfcActorRole_Description_IS_OPTIONAL
+#define SCHEMA_IfcActorRole_HAS_HasExternalReference
+#define SCHEMA_HAS_IfcActuator
+#define SCHEMA_IfcActuator_HAS_PredefinedType
+#define SCHEMA_IfcActuator_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcActuatorType
+#define SCHEMA_IfcActuatorType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcAddress
+#define SCHEMA_IfcAddress_HAS_Purpose
+#define SCHEMA_IfcAddress_Purpose_IS_OPTIONAL
+#define SCHEMA_IfcAddress_HAS_Description
+#define SCHEMA_IfcAddress_Description_IS_OPTIONAL
+#define SCHEMA_IfcAddress_HAS_UserDefinedPurpose
+#define SCHEMA_IfcAddress_UserDefinedPurpose_IS_OPTIONAL
+#define SCHEMA_IfcAddress_HAS_OfPerson
+#define SCHEMA_IfcAddress_HAS_OfOrganization
+#define SCHEMA_HAS_IfcAdvancedBrep
+#define SCHEMA_HAS_IfcAdvancedBrepWithVoids
+#define SCHEMA_IfcAdvancedBrepWithVoids_HAS_Voids
+#define SCHEMA_HAS_IfcAdvancedFace
+#define SCHEMA_HAS_IfcAirTerminal
+#define SCHEMA_IfcAirTerminal_HAS_PredefinedType
+#define SCHEMA_IfcAirTerminal_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAirTerminalBox
+#define SCHEMA_IfcAirTerminalBox_HAS_PredefinedType
+#define SCHEMA_IfcAirTerminalBox_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAirTerminalBoxType
+#define SCHEMA_IfcAirTerminalBoxType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcAirTerminalType
+#define SCHEMA_IfcAirTerminalType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcAirToAirHeatRecovery
+#define SCHEMA_IfcAirToAirHeatRecovery_HAS_PredefinedType
+#define SCHEMA_IfcAirToAirHeatRecovery_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAirToAirHeatRecoveryType
+#define SCHEMA_IfcAirToAirHeatRecoveryType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcAlarm
+#define SCHEMA_IfcAlarm_HAS_PredefinedType
+#define SCHEMA_IfcAlarm_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAlarmType
+#define SCHEMA_IfcAlarmType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcAlignment
+#define SCHEMA_IfcAlignment_HAS_PredefinedType
+#define SCHEMA_IfcAlignment_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAlignmentCant
+#define SCHEMA_IfcAlignmentCant_HAS_RailHeadDistance
+#define SCHEMA_HAS_IfcAlignmentCantSegment
+#define SCHEMA_IfcAlignmentCantSegment_HAS_StartDistAlong
+#define SCHEMA_IfcAlignmentCantSegment_HAS_HorizontalLength
+#define SCHEMA_IfcAlignmentCantSegment_HAS_StartCantLeft
+#define SCHEMA_IfcAlignmentCantSegment_HAS_EndCantLeft
+#define SCHEMA_IfcAlignmentCantSegment_EndCantLeft_IS_OPTIONAL
+#define SCHEMA_IfcAlignmentCantSegment_HAS_StartCantRight
+#define SCHEMA_IfcAlignmentCantSegment_HAS_EndCantRight
+#define SCHEMA_IfcAlignmentCantSegment_EndCantRight_IS_OPTIONAL
+#define SCHEMA_IfcAlignmentCantSegment_HAS_PredefinedType
+#define SCHEMA_HAS_IfcAlignmentHorizontal
+#define SCHEMA_HAS_IfcAlignmentHorizontalSegment
+#define SCHEMA_IfcAlignmentHorizontalSegment_HAS_StartPoint
+#define SCHEMA_IfcAlignmentHorizontalSegment_HAS_StartDirection
+#define SCHEMA_IfcAlignmentHorizontalSegment_HAS_StartRadiusOfCurvature
+#define SCHEMA_IfcAlignmentHorizontalSegment_HAS_EndRadiusOfCurvature
+#define SCHEMA_IfcAlignmentHorizontalSegment_HAS_SegmentLength
+#define SCHEMA_IfcAlignmentHorizontalSegment_HAS_GravityCenterLineHeight
+#define SCHEMA_IfcAlignmentHorizontalSegment_GravityCenterLineHeight_IS_OPTIONAL
+#define SCHEMA_IfcAlignmentHorizontalSegment_HAS_PredefinedType
+#define SCHEMA_HAS_IfcAlignmentParameterSegment
+#define SCHEMA_IfcAlignmentParameterSegment_HAS_StartTag
+#define SCHEMA_IfcAlignmentParameterSegment_StartTag_IS_OPTIONAL
+#define SCHEMA_IfcAlignmentParameterSegment_HAS_EndTag
+#define SCHEMA_IfcAlignmentParameterSegment_EndTag_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAlignmentSegment
+#define SCHEMA_IfcAlignmentSegment_HAS_DesignParameters
+#define SCHEMA_HAS_IfcAlignmentVertical
+#define SCHEMA_HAS_IfcAlignmentVerticalSegment
+#define SCHEMA_IfcAlignmentVerticalSegment_HAS_StartDistAlong
+#define SCHEMA_IfcAlignmentVerticalSegment_HAS_HorizontalLength
+#define SCHEMA_IfcAlignmentVerticalSegment_HAS_StartHeight
+#define SCHEMA_IfcAlignmentVerticalSegment_HAS_StartGradient
+#define SCHEMA_IfcAlignmentVerticalSegment_HAS_EndGradient
+#define SCHEMA_IfcAlignmentVerticalSegment_HAS_RadiusOfCurvature
+#define SCHEMA_IfcAlignmentVerticalSegment_RadiusOfCurvature_IS_OPTIONAL
+#define SCHEMA_IfcAlignmentVerticalSegment_HAS_PredefinedType
+#define SCHEMA_HAS_IfcAnnotation
+#define SCHEMA_IfcAnnotation_HAS_PredefinedType
+#define SCHEMA_IfcAnnotation_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcAnnotation_HAS_ContainedInStructure
+#define SCHEMA_HAS_IfcAnnotationFillArea
+#define SCHEMA_IfcAnnotationFillArea_HAS_OuterBoundary
+#define SCHEMA_IfcAnnotationFillArea_HAS_InnerBoundaries
+#define SCHEMA_IfcAnnotationFillArea_InnerBoundaries_IS_OPTIONAL
+#define SCHEMA_HAS_IfcApplication
+#define SCHEMA_IfcApplication_HAS_ApplicationDeveloper
+#define SCHEMA_IfcApplication_HAS_Version
+#define SCHEMA_IfcApplication_HAS_ApplicationFullName
+#define SCHEMA_IfcApplication_HAS_ApplicationIdentifier
+#define SCHEMA_HAS_IfcAppliedValue
+#define SCHEMA_IfcAppliedValue_HAS_Name
+#define SCHEMA_IfcAppliedValue_Name_IS_OPTIONAL
+#define SCHEMA_IfcAppliedValue_HAS_Description
+#define SCHEMA_IfcAppliedValue_Description_IS_OPTIONAL
+#define SCHEMA_IfcAppliedValue_HAS_AppliedValue
+#define SCHEMA_IfcAppliedValue_AppliedValue_IS_OPTIONAL
+#define SCHEMA_IfcAppliedValue_HAS_UnitBasis
+#define SCHEMA_IfcAppliedValue_UnitBasis_IS_OPTIONAL
+#define SCHEMA_IfcAppliedValue_HAS_ApplicableDate
+#define SCHEMA_IfcAppliedValue_ApplicableDate_IS_OPTIONAL
+#define SCHEMA_IfcAppliedValue_HAS_FixedUntilDate
+#define SCHEMA_IfcAppliedValue_FixedUntilDate_IS_OPTIONAL
+#define SCHEMA_IfcAppliedValue_HAS_Category
+#define SCHEMA_IfcAppliedValue_Category_IS_OPTIONAL
+#define SCHEMA_IfcAppliedValue_HAS_Condition
+#define SCHEMA_IfcAppliedValue_Condition_IS_OPTIONAL
+#define SCHEMA_IfcAppliedValue_HAS_ArithmeticOperator
+#define SCHEMA_IfcAppliedValue_ArithmeticOperator_IS_OPTIONAL
+#define SCHEMA_IfcAppliedValue_HAS_Components
+#define SCHEMA_IfcAppliedValue_Components_IS_OPTIONAL
+#define SCHEMA_IfcAppliedValue_HAS_HasExternalReference
+#define SCHEMA_HAS_IfcApproval
+#define SCHEMA_IfcApproval_HAS_Identifier
+#define SCHEMA_IfcApproval_Identifier_IS_OPTIONAL
+#define SCHEMA_IfcApproval_HAS_Name
+#define SCHEMA_IfcApproval_Name_IS_OPTIONAL
+#define SCHEMA_IfcApproval_HAS_Description
+#define SCHEMA_IfcApproval_Description_IS_OPTIONAL
+#define SCHEMA_IfcApproval_HAS_TimeOfApproval
+#define SCHEMA_IfcApproval_TimeOfApproval_IS_OPTIONAL
+#define SCHEMA_IfcApproval_HAS_Status
+#define SCHEMA_IfcApproval_Status_IS_OPTIONAL
+#define SCHEMA_IfcApproval_HAS_Level
+#define SCHEMA_IfcApproval_Level_IS_OPTIONAL
+#define SCHEMA_IfcApproval_HAS_Qualifier
+#define SCHEMA_IfcApproval_Qualifier_IS_OPTIONAL
+#define SCHEMA_IfcApproval_HAS_RequestingApproval
+#define SCHEMA_IfcApproval_RequestingApproval_IS_OPTIONAL
+#define SCHEMA_IfcApproval_HAS_GivingApproval
+#define SCHEMA_IfcApproval_GivingApproval_IS_OPTIONAL
+#define SCHEMA_IfcApproval_HAS_HasExternalReferences
+#define SCHEMA_IfcApproval_HAS_ApprovedObjects
+#define SCHEMA_IfcApproval_HAS_ApprovedResources
+#define SCHEMA_IfcApproval_HAS_IsRelatedWith
+#define SCHEMA_IfcApproval_HAS_Relates
+#define SCHEMA_HAS_IfcApprovalRelationship
+#define SCHEMA_IfcApprovalRelationship_HAS_RelatingApproval
+#define SCHEMA_IfcApprovalRelationship_HAS_RelatedApprovals
+#define SCHEMA_HAS_IfcArbitraryClosedProfileDef
+#define SCHEMA_IfcArbitraryClosedProfileDef_HAS_OuterCurve
+#define SCHEMA_HAS_IfcArbitraryOpenProfileDef
+#define SCHEMA_IfcArbitraryOpenProfileDef_HAS_Curve
+#define SCHEMA_HAS_IfcArbitraryProfileDefWithVoids
+#define SCHEMA_IfcArbitraryProfileDefWithVoids_HAS_InnerCurves
+#define SCHEMA_HAS_IfcAsset
+#define SCHEMA_IfcAsset_HAS_Identification
+#define SCHEMA_IfcAsset_Identification_IS_OPTIONAL
+#define SCHEMA_IfcAsset_HAS_OriginalValue
+#define SCHEMA_IfcAsset_OriginalValue_IS_OPTIONAL
+#define SCHEMA_IfcAsset_HAS_CurrentValue
+#define SCHEMA_IfcAsset_CurrentValue_IS_OPTIONAL
+#define SCHEMA_IfcAsset_HAS_TotalReplacementCost
+#define SCHEMA_IfcAsset_TotalReplacementCost_IS_OPTIONAL
+#define SCHEMA_IfcAsset_HAS_Owner
+#define SCHEMA_IfcAsset_Owner_IS_OPTIONAL
+#define SCHEMA_IfcAsset_HAS_User
+#define SCHEMA_IfcAsset_User_IS_OPTIONAL
+#define SCHEMA_IfcAsset_HAS_ResponsiblePerson
+#define SCHEMA_IfcAsset_ResponsiblePerson_IS_OPTIONAL
+#define SCHEMA_IfcAsset_HAS_IncorporationDate
+#define SCHEMA_IfcAsset_IncorporationDate_IS_OPTIONAL
+#define SCHEMA_IfcAsset_HAS_DepreciatedValue
+#define SCHEMA_IfcAsset_DepreciatedValue_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAsymmetricIShapeProfileDef
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_BottomFlangeWidth
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_OverallDepth
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_WebThickness
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_BottomFlangeThickness
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_BottomFlangeFilletRadius
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_BottomFlangeFilletRadius_IS_OPTIONAL
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_TopFlangeWidth
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_TopFlangeThickness
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_TopFlangeThickness_IS_OPTIONAL
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_TopFlangeFilletRadius
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_TopFlangeFilletRadius_IS_OPTIONAL
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_BottomFlangeEdgeRadius
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_BottomFlangeEdgeRadius_IS_OPTIONAL
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_BottomFlangeSlope
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_BottomFlangeSlope_IS_OPTIONAL
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_TopFlangeEdgeRadius
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_TopFlangeEdgeRadius_IS_OPTIONAL
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_HAS_TopFlangeSlope
+#define SCHEMA_IfcAsymmetricIShapeProfileDef_TopFlangeSlope_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAudioVisualAppliance
+#define SCHEMA_IfcAudioVisualAppliance_HAS_PredefinedType
+#define SCHEMA_IfcAudioVisualAppliance_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAudioVisualApplianceType
+#define SCHEMA_IfcAudioVisualApplianceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcAxis1Placement
+#define SCHEMA_IfcAxis1Placement_HAS_Axis
+#define SCHEMA_IfcAxis1Placement_Axis_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAxis2Placement2D
+#define SCHEMA_IfcAxis2Placement2D_HAS_RefDirection
+#define SCHEMA_IfcAxis2Placement2D_RefDirection_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAxis2Placement3D
+#define SCHEMA_IfcAxis2Placement3D_HAS_Axis
+#define SCHEMA_IfcAxis2Placement3D_Axis_IS_OPTIONAL
+#define SCHEMA_IfcAxis2Placement3D_HAS_RefDirection
+#define SCHEMA_IfcAxis2Placement3D_RefDirection_IS_OPTIONAL
+#define SCHEMA_HAS_IfcAxis2PlacementLinear
+#define SCHEMA_IfcAxis2PlacementLinear_HAS_Axis
+#define SCHEMA_IfcAxis2PlacementLinear_Axis_IS_OPTIONAL
+#define SCHEMA_IfcAxis2PlacementLinear_HAS_RefDirection
+#define SCHEMA_IfcAxis2PlacementLinear_RefDirection_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBSplineCurve
+#define SCHEMA_IfcBSplineCurve_HAS_Degree
+#define SCHEMA_IfcBSplineCurve_HAS_ControlPointsList
+#define SCHEMA_IfcBSplineCurve_HAS_CurveForm
+#define SCHEMA_IfcBSplineCurve_HAS_ClosedCurve
+#define SCHEMA_IfcBSplineCurve_HAS_SelfIntersect
+#define SCHEMA_HAS_IfcBSplineCurveWithKnots
+#define SCHEMA_IfcBSplineCurveWithKnots_HAS_KnotMultiplicities
+#define SCHEMA_IfcBSplineCurveWithKnots_HAS_Knots
+#define SCHEMA_IfcBSplineCurveWithKnots_HAS_KnotSpec
+#define SCHEMA_HAS_IfcBSplineSurface
+#define SCHEMA_IfcBSplineSurface_HAS_UDegree
+#define SCHEMA_IfcBSplineSurface_HAS_VDegree
+#define SCHEMA_IfcBSplineSurface_HAS_ControlPointsList
+#define SCHEMA_IfcBSplineSurface_HAS_SurfaceForm
+#define SCHEMA_IfcBSplineSurface_HAS_UClosed
+#define SCHEMA_IfcBSplineSurface_HAS_VClosed
+#define SCHEMA_IfcBSplineSurface_HAS_SelfIntersect
+#define SCHEMA_HAS_IfcBSplineSurfaceWithKnots
+#define SCHEMA_IfcBSplineSurfaceWithKnots_HAS_UMultiplicities
+#define SCHEMA_IfcBSplineSurfaceWithKnots_HAS_VMultiplicities
+#define SCHEMA_IfcBSplineSurfaceWithKnots_HAS_UKnots
+#define SCHEMA_IfcBSplineSurfaceWithKnots_HAS_VKnots
+#define SCHEMA_IfcBSplineSurfaceWithKnots_HAS_KnotSpec
+#define SCHEMA_HAS_IfcBeam
+#define SCHEMA_IfcBeam_HAS_PredefinedType
+#define SCHEMA_IfcBeam_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBeamType
+#define SCHEMA_IfcBeamType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcBearing
+#define SCHEMA_IfcBearing_HAS_PredefinedType
+#define SCHEMA_IfcBearing_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBearingType
+#define SCHEMA_IfcBearingType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcBlobTexture
+#define SCHEMA_IfcBlobTexture_HAS_RasterFormat
+#define SCHEMA_IfcBlobTexture_HAS_RasterCode
+#define SCHEMA_HAS_IfcBlock
+#define SCHEMA_IfcBlock_HAS_XLength
+#define SCHEMA_IfcBlock_HAS_YLength
+#define SCHEMA_IfcBlock_HAS_ZLength
+#define SCHEMA_HAS_IfcBoiler
+#define SCHEMA_IfcBoiler_HAS_PredefinedType
+#define SCHEMA_IfcBoiler_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBoilerType
+#define SCHEMA_IfcBoilerType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcBooleanClippingResult
+#define SCHEMA_HAS_IfcBooleanResult
+#define SCHEMA_IfcBooleanResult_HAS_Operator
+#define SCHEMA_IfcBooleanResult_HAS_FirstOperand
+#define SCHEMA_IfcBooleanResult_HAS_SecondOperand
+#define SCHEMA_HAS_IfcBorehole
+#define SCHEMA_HAS_IfcBoundaryCondition
+#define SCHEMA_IfcBoundaryCondition_HAS_Name
+#define SCHEMA_IfcBoundaryCondition_Name_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBoundaryCurve
+#define SCHEMA_HAS_IfcBoundaryEdgeCondition
+#define SCHEMA_IfcBoundaryEdgeCondition_HAS_TranslationalStiffnessByLengthX
+#define SCHEMA_IfcBoundaryEdgeCondition_TranslationalStiffnessByLengthX_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryEdgeCondition_HAS_TranslationalStiffnessByLengthY
+#define SCHEMA_IfcBoundaryEdgeCondition_TranslationalStiffnessByLengthY_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryEdgeCondition_HAS_TranslationalStiffnessByLengthZ
+#define SCHEMA_IfcBoundaryEdgeCondition_TranslationalStiffnessByLengthZ_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryEdgeCondition_HAS_RotationalStiffnessByLengthX
+#define SCHEMA_IfcBoundaryEdgeCondition_RotationalStiffnessByLengthX_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryEdgeCondition_HAS_RotationalStiffnessByLengthY
+#define SCHEMA_IfcBoundaryEdgeCondition_RotationalStiffnessByLengthY_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryEdgeCondition_HAS_RotationalStiffnessByLengthZ
+#define SCHEMA_IfcBoundaryEdgeCondition_RotationalStiffnessByLengthZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBoundaryFaceCondition
+#define SCHEMA_IfcBoundaryFaceCondition_HAS_TranslationalStiffnessByAreaX
+#define SCHEMA_IfcBoundaryFaceCondition_TranslationalStiffnessByAreaX_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryFaceCondition_HAS_TranslationalStiffnessByAreaY
+#define SCHEMA_IfcBoundaryFaceCondition_TranslationalStiffnessByAreaY_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryFaceCondition_HAS_TranslationalStiffnessByAreaZ
+#define SCHEMA_IfcBoundaryFaceCondition_TranslationalStiffnessByAreaZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBoundaryNodeCondition
+#define SCHEMA_IfcBoundaryNodeCondition_HAS_TranslationalStiffnessX
+#define SCHEMA_IfcBoundaryNodeCondition_TranslationalStiffnessX_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryNodeCondition_HAS_TranslationalStiffnessY
+#define SCHEMA_IfcBoundaryNodeCondition_TranslationalStiffnessY_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryNodeCondition_HAS_TranslationalStiffnessZ
+#define SCHEMA_IfcBoundaryNodeCondition_TranslationalStiffnessZ_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryNodeCondition_HAS_RotationalStiffnessX
+#define SCHEMA_IfcBoundaryNodeCondition_RotationalStiffnessX_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryNodeCondition_HAS_RotationalStiffnessY
+#define SCHEMA_IfcBoundaryNodeCondition_RotationalStiffnessY_IS_OPTIONAL
+#define SCHEMA_IfcBoundaryNodeCondition_HAS_RotationalStiffnessZ
+#define SCHEMA_IfcBoundaryNodeCondition_RotationalStiffnessZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBoundaryNodeConditionWarping
+#define SCHEMA_IfcBoundaryNodeConditionWarping_HAS_WarpingStiffness
+#define SCHEMA_IfcBoundaryNodeConditionWarping_WarpingStiffness_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBoundedCurve
+#define SCHEMA_HAS_IfcBoundedSurface
+#define SCHEMA_HAS_IfcBoundingBox
+#define SCHEMA_IfcBoundingBox_HAS_Corner
+#define SCHEMA_IfcBoundingBox_HAS_XDim
+#define SCHEMA_IfcBoundingBox_HAS_YDim
+#define SCHEMA_IfcBoundingBox_HAS_ZDim
+#define SCHEMA_HAS_IfcBoxedHalfSpace
+#define SCHEMA_IfcBoxedHalfSpace_HAS_Enclosure
+#define SCHEMA_HAS_IfcBridge
+#define SCHEMA_IfcBridge_HAS_PredefinedType
+#define SCHEMA_IfcBridge_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBridgePart
+#define SCHEMA_IfcBridgePart_HAS_PredefinedType
+#define SCHEMA_IfcBridgePart_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBuilding
+#define SCHEMA_IfcBuilding_HAS_ElevationOfRefHeight
+#define SCHEMA_IfcBuilding_ElevationOfRefHeight_IS_OPTIONAL
+#define SCHEMA_IfcBuilding_HAS_ElevationOfTerrain
+#define SCHEMA_IfcBuilding_ElevationOfTerrain_IS_OPTIONAL
+#define SCHEMA_IfcBuilding_HAS_BuildingAddress
+#define SCHEMA_IfcBuilding_BuildingAddress_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBuildingElementPart
+#define SCHEMA_IfcBuildingElementPart_HAS_PredefinedType
+#define SCHEMA_IfcBuildingElementPart_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBuildingElementPartType
+#define SCHEMA_IfcBuildingElementPartType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcBuildingElementProxy
+#define SCHEMA_IfcBuildingElementProxy_HAS_PredefinedType
+#define SCHEMA_IfcBuildingElementProxy_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBuildingElementProxyType
+#define SCHEMA_IfcBuildingElementProxyType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcBuildingStorey
+#define SCHEMA_IfcBuildingStorey_HAS_Elevation
+#define SCHEMA_IfcBuildingStorey_Elevation_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBuildingSystem
+#define SCHEMA_IfcBuildingSystem_HAS_PredefinedType
+#define SCHEMA_IfcBuildingSystem_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcBuildingSystem_HAS_LongName
+#define SCHEMA_IfcBuildingSystem_LongName_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBuiltElement
+#define SCHEMA_HAS_IfcBuiltElementType
+#define SCHEMA_HAS_IfcBuiltSystem
+#define SCHEMA_IfcBuiltSystem_HAS_PredefinedType
+#define SCHEMA_IfcBuiltSystem_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcBuiltSystem_HAS_LongName
+#define SCHEMA_IfcBuiltSystem_LongName_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBurner
+#define SCHEMA_IfcBurner_HAS_PredefinedType
+#define SCHEMA_IfcBurner_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcBurnerType
+#define SCHEMA_IfcBurnerType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCShapeProfileDef
+#define SCHEMA_IfcCShapeProfileDef_HAS_Depth
+#define SCHEMA_IfcCShapeProfileDef_HAS_Width
+#define SCHEMA_IfcCShapeProfileDef_HAS_WallThickness
+#define SCHEMA_IfcCShapeProfileDef_HAS_Girth
+#define SCHEMA_IfcCShapeProfileDef_HAS_InternalFilletRadius
+#define SCHEMA_IfcCShapeProfileDef_InternalFilletRadius_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCableCarrierFitting
+#define SCHEMA_IfcCableCarrierFitting_HAS_PredefinedType
+#define SCHEMA_IfcCableCarrierFitting_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCableCarrierFittingType
+#define SCHEMA_IfcCableCarrierFittingType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCableCarrierSegment
+#define SCHEMA_IfcCableCarrierSegment_HAS_PredefinedType
+#define SCHEMA_IfcCableCarrierSegment_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCableCarrierSegmentType
+#define SCHEMA_IfcCableCarrierSegmentType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCableFitting
+#define SCHEMA_IfcCableFitting_HAS_PredefinedType
+#define SCHEMA_IfcCableFitting_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCableFittingType
+#define SCHEMA_IfcCableFittingType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCableSegment
+#define SCHEMA_IfcCableSegment_HAS_PredefinedType
+#define SCHEMA_IfcCableSegment_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCableSegmentType
+#define SCHEMA_IfcCableSegmentType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCaissonFoundation
+#define SCHEMA_IfcCaissonFoundation_HAS_PredefinedType
+#define SCHEMA_IfcCaissonFoundation_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCaissonFoundationType
+#define SCHEMA_IfcCaissonFoundationType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCartesianPoint
+#define SCHEMA_IfcCartesianPoint_HAS_Coordinates
+#define SCHEMA_HAS_IfcCartesianPointList
+#define SCHEMA_HAS_IfcCartesianPointList2D
+#define SCHEMA_IfcCartesianPointList2D_HAS_CoordList
+#define SCHEMA_IfcCartesianPointList2D_HAS_TagList
+#define SCHEMA_IfcCartesianPointList2D_TagList_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCartesianPointList3D
+#define SCHEMA_IfcCartesianPointList3D_HAS_CoordList
+#define SCHEMA_IfcCartesianPointList3D_HAS_TagList
+#define SCHEMA_IfcCartesianPointList3D_TagList_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCartesianTransformationOperator
+#define SCHEMA_IfcCartesianTransformationOperator_HAS_Axis1
+#define SCHEMA_IfcCartesianTransformationOperator_Axis1_IS_OPTIONAL
+#define SCHEMA_IfcCartesianTransformationOperator_HAS_Axis2
+#define SCHEMA_IfcCartesianTransformationOperator_Axis2_IS_OPTIONAL
+#define SCHEMA_IfcCartesianTransformationOperator_HAS_LocalOrigin
+#define SCHEMA_IfcCartesianTransformationOperator_HAS_Scale
+#define SCHEMA_IfcCartesianTransformationOperator_Scale_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCartesianTransformationOperator2D
+#define SCHEMA_HAS_IfcCartesianTransformationOperator2DnonUniform
+#define SCHEMA_IfcCartesianTransformationOperator2DnonUniform_HAS_Scale2
+#define SCHEMA_IfcCartesianTransformationOperator2DnonUniform_Scale2_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCartesianTransformationOperator3D
+#define SCHEMA_IfcCartesianTransformationOperator3D_HAS_Axis3
+#define SCHEMA_IfcCartesianTransformationOperator3D_Axis3_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCartesianTransformationOperator3DnonUniform
+#define SCHEMA_IfcCartesianTransformationOperator3DnonUniform_HAS_Scale2
+#define SCHEMA_IfcCartesianTransformationOperator3DnonUniform_Scale2_IS_OPTIONAL
+#define SCHEMA_IfcCartesianTransformationOperator3DnonUniform_HAS_Scale3
+#define SCHEMA_IfcCartesianTransformationOperator3DnonUniform_Scale3_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCenterLineProfileDef
+#define SCHEMA_IfcCenterLineProfileDef_HAS_Thickness
+#define SCHEMA_HAS_IfcChiller
+#define SCHEMA_IfcChiller_HAS_PredefinedType
+#define SCHEMA_IfcChiller_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcChillerType
+#define SCHEMA_IfcChillerType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcChimney
+#define SCHEMA_IfcChimney_HAS_PredefinedType
+#define SCHEMA_IfcChimney_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcChimneyType
+#define SCHEMA_IfcChimneyType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCircle
+#define SCHEMA_IfcCircle_HAS_Radius
+#define SCHEMA_HAS_IfcCircleHollowProfileDef
+#define SCHEMA_IfcCircleHollowProfileDef_HAS_WallThickness
+#define SCHEMA_HAS_IfcCircleProfileDef
+#define SCHEMA_IfcCircleProfileDef_HAS_Radius
+#define SCHEMA_HAS_IfcCivilElement
+#define SCHEMA_HAS_IfcCivilElementType
+#define SCHEMA_HAS_IfcClassification
+#define SCHEMA_IfcClassification_HAS_Source
+#define SCHEMA_IfcClassification_Source_IS_OPTIONAL
+#define SCHEMA_IfcClassification_HAS_Edition
+#define SCHEMA_IfcClassification_Edition_IS_OPTIONAL
+#define SCHEMA_IfcClassification_HAS_EditionDate
+#define SCHEMA_IfcClassification_EditionDate_IS_OPTIONAL
+#define SCHEMA_IfcClassification_HAS_Name
+#define SCHEMA_IfcClassification_HAS_Description
+#define SCHEMA_IfcClassification_Description_IS_OPTIONAL
+#define SCHEMA_IfcClassification_HAS_Specification
+#define SCHEMA_IfcClassification_Specification_IS_OPTIONAL
+#define SCHEMA_IfcClassification_HAS_ReferenceTokens
+#define SCHEMA_IfcClassification_ReferenceTokens_IS_OPTIONAL
+#define SCHEMA_IfcClassification_HAS_ClassificationForObjects
+#define SCHEMA_IfcClassification_HAS_HasReferences
+#define SCHEMA_HAS_IfcClassificationReference
+#define SCHEMA_IfcClassificationReference_HAS_ReferencedSource
+#define SCHEMA_IfcClassificationReference_ReferencedSource_IS_OPTIONAL
+#define SCHEMA_IfcClassificationReference_HAS_Description
+#define SCHEMA_IfcClassificationReference_Description_IS_OPTIONAL
+#define SCHEMA_IfcClassificationReference_HAS_Sort
+#define SCHEMA_IfcClassificationReference_Sort_IS_OPTIONAL
+#define SCHEMA_IfcClassificationReference_HAS_ClassificationRefForObjects
+#define SCHEMA_IfcClassificationReference_HAS_HasReferences
+#define SCHEMA_HAS_IfcClosedShell
+#define SCHEMA_HAS_IfcClothoid
+#define SCHEMA_IfcClothoid_HAS_ClothoidConstant
+#define SCHEMA_HAS_IfcCoil
+#define SCHEMA_IfcCoil_HAS_PredefinedType
+#define SCHEMA_IfcCoil_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCoilType
+#define SCHEMA_IfcCoilType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcColourRgb
+#define SCHEMA_IfcColourRgb_HAS_Red
+#define SCHEMA_IfcColourRgb_HAS_Green
+#define SCHEMA_IfcColourRgb_HAS_Blue
+#define SCHEMA_HAS_IfcColourRgbList
+#define SCHEMA_IfcColourRgbList_HAS_ColourList
+#define SCHEMA_HAS_IfcColourSpecification
+#define SCHEMA_IfcColourSpecification_HAS_Name
+#define SCHEMA_IfcColourSpecification_Name_IS_OPTIONAL
+#define SCHEMA_HAS_IfcColumn
+#define SCHEMA_IfcColumn_HAS_PredefinedType
+#define SCHEMA_IfcColumn_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcColumnType
+#define SCHEMA_IfcColumnType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCommunicationsAppliance
+#define SCHEMA_IfcCommunicationsAppliance_HAS_PredefinedType
+#define SCHEMA_IfcCommunicationsAppliance_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCommunicationsApplianceType
+#define SCHEMA_IfcCommunicationsApplianceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcComplexProperty
+#define SCHEMA_IfcComplexProperty_HAS_UsageName
+#define SCHEMA_IfcComplexProperty_HAS_HasProperties
+#define SCHEMA_HAS_IfcComplexPropertyTemplate
+#define SCHEMA_IfcComplexPropertyTemplate_HAS_UsageName
+#define SCHEMA_IfcComplexPropertyTemplate_UsageName_IS_OPTIONAL
+#define SCHEMA_IfcComplexPropertyTemplate_HAS_TemplateType
+#define SCHEMA_IfcComplexPropertyTemplate_TemplateType_IS_OPTIONAL
+#define SCHEMA_IfcComplexPropertyTemplate_HAS_HasPropertyTemplates
+#define SCHEMA_IfcComplexPropertyTemplate_HasPropertyTemplates_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCompositeCurve
+#define SCHEMA_IfcCompositeCurve_HAS_Segments
+#define SCHEMA_IfcCompositeCurve_HAS_SelfIntersect
+#define SCHEMA_HAS_IfcCompositeCurveOnSurface
+#define SCHEMA_HAS_IfcCompositeCurveSegment
+#define SCHEMA_IfcCompositeCurveSegment_HAS_SameSense
+#define SCHEMA_IfcCompositeCurveSegment_HAS_ParentCurve
+#define SCHEMA_HAS_IfcCompositeProfileDef
+#define SCHEMA_IfcCompositeProfileDef_HAS_Profiles
+#define SCHEMA_IfcCompositeProfileDef_HAS_Label
+#define SCHEMA_IfcCompositeProfileDef_Label_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCompressor
+#define SCHEMA_IfcCompressor_HAS_PredefinedType
+#define SCHEMA_IfcCompressor_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCompressorType
+#define SCHEMA_IfcCompressorType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCondenser
+#define SCHEMA_IfcCondenser_HAS_PredefinedType
+#define SCHEMA_IfcCondenser_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCondenserType
+#define SCHEMA_IfcCondenserType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcConic
+#define SCHEMA_IfcConic_HAS_Position
+#define SCHEMA_HAS_IfcConnectedFaceSet
+#define SCHEMA_IfcConnectedFaceSet_HAS_CfsFaces
+#define SCHEMA_HAS_IfcConnectionCurveGeometry
+#define SCHEMA_IfcConnectionCurveGeometry_HAS_CurveOnRelatingElement
+#define SCHEMA_IfcConnectionCurveGeometry_HAS_CurveOnRelatedElement
+#define SCHEMA_IfcConnectionCurveGeometry_CurveOnRelatedElement_IS_OPTIONAL
+#define SCHEMA_HAS_IfcConnectionGeometry
+#define SCHEMA_HAS_IfcConnectionPointEccentricity
+#define SCHEMA_IfcConnectionPointEccentricity_HAS_EccentricityInX
+#define SCHEMA_IfcConnectionPointEccentricity_EccentricityInX_IS_OPTIONAL
+#define SCHEMA_IfcConnectionPointEccentricity_HAS_EccentricityInY
+#define SCHEMA_IfcConnectionPointEccentricity_EccentricityInY_IS_OPTIONAL
+#define SCHEMA_IfcConnectionPointEccentricity_HAS_EccentricityInZ
+#define SCHEMA_IfcConnectionPointEccentricity_EccentricityInZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcConnectionPointGeometry
+#define SCHEMA_IfcConnectionPointGeometry_HAS_PointOnRelatingElement
+#define SCHEMA_IfcConnectionPointGeometry_HAS_PointOnRelatedElement
+#define SCHEMA_IfcConnectionPointGeometry_PointOnRelatedElement_IS_OPTIONAL
+#define SCHEMA_HAS_IfcConnectionSurfaceGeometry
+#define SCHEMA_IfcConnectionSurfaceGeometry_HAS_SurfaceOnRelatingElement
+#define SCHEMA_IfcConnectionSurfaceGeometry_HAS_SurfaceOnRelatedElement
+#define SCHEMA_IfcConnectionSurfaceGeometry_SurfaceOnRelatedElement_IS_OPTIONAL
+#define SCHEMA_HAS_IfcConnectionVolumeGeometry
+#define SCHEMA_IfcConnectionVolumeGeometry_HAS_VolumeOnRelatingElement
+#define SCHEMA_IfcConnectionVolumeGeometry_HAS_VolumeOnRelatedElement
+#define SCHEMA_IfcConnectionVolumeGeometry_VolumeOnRelatedElement_IS_OPTIONAL
+#define SCHEMA_HAS_IfcConstraint
+#define SCHEMA_IfcConstraint_HAS_Name
+#define SCHEMA_IfcConstraint_HAS_Description
+#define SCHEMA_IfcConstraint_Description_IS_OPTIONAL
+#define SCHEMA_IfcConstraint_HAS_ConstraintGrade
+#define SCHEMA_IfcConstraint_HAS_ConstraintSource
+#define SCHEMA_IfcConstraint_ConstraintSource_IS_OPTIONAL
+#define SCHEMA_IfcConstraint_HAS_CreatingActor
+#define SCHEMA_IfcConstraint_CreatingActor_IS_OPTIONAL
+#define SCHEMA_IfcConstraint_HAS_CreationTime
+#define SCHEMA_IfcConstraint_CreationTime_IS_OPTIONAL
+#define SCHEMA_IfcConstraint_HAS_UserDefinedGrade
+#define SCHEMA_IfcConstraint_UserDefinedGrade_IS_OPTIONAL
+#define SCHEMA_IfcConstraint_HAS_HasExternalReferences
+#define SCHEMA_IfcConstraint_HAS_PropertiesForConstraint
+#define SCHEMA_HAS_IfcConstructionEquipmentResource
+#define SCHEMA_IfcConstructionEquipmentResource_HAS_PredefinedType
+#define SCHEMA_IfcConstructionEquipmentResource_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcConstructionEquipmentResourceType
+#define SCHEMA_IfcConstructionEquipmentResourceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcConstructionMaterialResource
+#define SCHEMA_IfcConstructionMaterialResource_HAS_PredefinedType
+#define SCHEMA_IfcConstructionMaterialResource_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcConstructionMaterialResourceType
+#define SCHEMA_IfcConstructionMaterialResourceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcConstructionProductResource
+#define SCHEMA_IfcConstructionProductResource_HAS_PredefinedType
+#define SCHEMA_IfcConstructionProductResource_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcConstructionProductResourceType
+#define SCHEMA_IfcConstructionProductResourceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcConstructionResource
+#define SCHEMA_IfcConstructionResource_HAS_Usage
+#define SCHEMA_IfcConstructionResource_Usage_IS_OPTIONAL
+#define SCHEMA_IfcConstructionResource_HAS_BaseCosts
+#define SCHEMA_IfcConstructionResource_BaseCosts_IS_OPTIONAL
+#define SCHEMA_IfcConstructionResource_HAS_BaseQuantity
+#define SCHEMA_IfcConstructionResource_BaseQuantity_IS_OPTIONAL
+#define SCHEMA_HAS_IfcConstructionResourceType
+#define SCHEMA_IfcConstructionResourceType_HAS_BaseCosts
+#define SCHEMA_IfcConstructionResourceType_BaseCosts_IS_OPTIONAL
+#define SCHEMA_IfcConstructionResourceType_HAS_BaseQuantity
+#define SCHEMA_IfcConstructionResourceType_BaseQuantity_IS_OPTIONAL
+#define SCHEMA_HAS_IfcContext
+#define SCHEMA_IfcContext_HAS_ObjectType
+#define SCHEMA_IfcContext_ObjectType_IS_OPTIONAL
+#define SCHEMA_IfcContext_HAS_LongName
+#define SCHEMA_IfcContext_LongName_IS_OPTIONAL
+#define SCHEMA_IfcContext_HAS_Phase
+#define SCHEMA_IfcContext_Phase_IS_OPTIONAL
+#define SCHEMA_IfcContext_HAS_RepresentationContexts
+#define SCHEMA_IfcContext_RepresentationContexts_IS_OPTIONAL
+#define SCHEMA_IfcContext_HAS_UnitsInContext
+#define SCHEMA_IfcContext_UnitsInContext_IS_OPTIONAL
+#define SCHEMA_IfcContext_HAS_IsDefinedBy
+#define SCHEMA_IfcContext_HAS_Declares
+#define SCHEMA_HAS_IfcContextDependentUnit
+#define SCHEMA_IfcContextDependentUnit_HAS_Name
+#define SCHEMA_IfcContextDependentUnit_HAS_HasExternalReference
+#define SCHEMA_HAS_IfcControl
+#define SCHEMA_IfcControl_HAS_Identification
+#define SCHEMA_IfcControl_Identification_IS_OPTIONAL
+#define SCHEMA_IfcControl_HAS_Controls
+#define SCHEMA_HAS_IfcController
+#define SCHEMA_IfcController_HAS_PredefinedType
+#define SCHEMA_IfcController_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcControllerType
+#define SCHEMA_IfcControllerType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcConversionBasedUnit
+#define SCHEMA_IfcConversionBasedUnit_HAS_Name
+#define SCHEMA_IfcConversionBasedUnit_HAS_ConversionFactor
+#define SCHEMA_IfcConversionBasedUnit_HAS_HasExternalReference
+#define SCHEMA_HAS_IfcConversionBasedUnitWithOffset
+#define SCHEMA_IfcConversionBasedUnitWithOffset_HAS_ConversionOffset
+#define SCHEMA_HAS_IfcConveyorSegment
+#define SCHEMA_IfcConveyorSegment_HAS_PredefinedType
+#define SCHEMA_IfcConveyorSegment_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcConveyorSegmentType
+#define SCHEMA_IfcConveyorSegmentType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCooledBeam
+#define SCHEMA_IfcCooledBeam_HAS_PredefinedType
+#define SCHEMA_IfcCooledBeam_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCooledBeamType
+#define SCHEMA_IfcCooledBeamType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCoolingTower
+#define SCHEMA_IfcCoolingTower_HAS_PredefinedType
+#define SCHEMA_IfcCoolingTower_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCoolingTowerType
+#define SCHEMA_IfcCoolingTowerType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCoordinateOperation
+#define SCHEMA_IfcCoordinateOperation_HAS_SourceCRS
+#define SCHEMA_IfcCoordinateOperation_HAS_TargetCRS
+#define SCHEMA_HAS_IfcCoordinateReferenceSystem
+#define SCHEMA_IfcCoordinateReferenceSystem_HAS_Name
+#define SCHEMA_IfcCoordinateReferenceSystem_Name_IS_OPTIONAL
+#define SCHEMA_IfcCoordinateReferenceSystem_HAS_Description
+#define SCHEMA_IfcCoordinateReferenceSystem_Description_IS_OPTIONAL
+#define SCHEMA_IfcCoordinateReferenceSystem_HAS_HasCoordinateOperation
+#define SCHEMA_IfcCoordinateReferenceSystem_HAS_WellKnownText
+#define SCHEMA_HAS_IfcCosineSpiral
+#define SCHEMA_IfcCosineSpiral_HAS_CosineTerm
+#define SCHEMA_IfcCosineSpiral_HAS_ConstantTerm
+#define SCHEMA_IfcCosineSpiral_ConstantTerm_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCostItem
+#define SCHEMA_IfcCostItem_HAS_PredefinedType
+#define SCHEMA_IfcCostItem_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcCostItem_HAS_CostValues
+#define SCHEMA_IfcCostItem_CostValues_IS_OPTIONAL
+#define SCHEMA_IfcCostItem_HAS_CostQuantities
+#define SCHEMA_IfcCostItem_CostQuantities_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCostSchedule
+#define SCHEMA_IfcCostSchedule_HAS_PredefinedType
+#define SCHEMA_IfcCostSchedule_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcCostSchedule_HAS_Status
+#define SCHEMA_IfcCostSchedule_Status_IS_OPTIONAL
+#define SCHEMA_IfcCostSchedule_HAS_SubmittedOn
+#define SCHEMA_IfcCostSchedule_SubmittedOn_IS_OPTIONAL
+#define SCHEMA_IfcCostSchedule_HAS_UpdateDate
+#define SCHEMA_IfcCostSchedule_UpdateDate_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCostValue
+#define SCHEMA_HAS_IfcCourse
+#define SCHEMA_IfcCourse_HAS_PredefinedType
+#define SCHEMA_IfcCourse_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCourseType
+#define SCHEMA_IfcCourseType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCovering
+#define SCHEMA_IfcCovering_HAS_PredefinedType
+#define SCHEMA_IfcCovering_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcCovering_HAS_CoversSpaces
+#define SCHEMA_IfcCovering_HAS_CoversElements
+#define SCHEMA_HAS_IfcCoveringType
+#define SCHEMA_IfcCoveringType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCrewResource
+#define SCHEMA_IfcCrewResource_HAS_PredefinedType
+#define SCHEMA_IfcCrewResource_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCrewResourceType
+#define SCHEMA_IfcCrewResourceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCsgPrimitive3D
+#define SCHEMA_IfcCsgPrimitive3D_HAS_Position
+#define SCHEMA_HAS_IfcCsgSolid
+#define SCHEMA_IfcCsgSolid_HAS_TreeRootExpression
+#define SCHEMA_HAS_IfcCurrencyRelationship
+#define SCHEMA_IfcCurrencyRelationship_HAS_RelatingMonetaryUnit
+#define SCHEMA_IfcCurrencyRelationship_HAS_RelatedMonetaryUnit
+#define SCHEMA_IfcCurrencyRelationship_HAS_ExchangeRate
+#define SCHEMA_IfcCurrencyRelationship_HAS_RateDateTime
+#define SCHEMA_IfcCurrencyRelationship_RateDateTime_IS_OPTIONAL
+#define SCHEMA_IfcCurrencyRelationship_HAS_RateSource
+#define SCHEMA_IfcCurrencyRelationship_RateSource_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCurtainWall
+#define SCHEMA_IfcCurtainWall_HAS_PredefinedType
+#define SCHEMA_IfcCurtainWall_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCurtainWallType
+#define SCHEMA_IfcCurtainWallType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcCurve
+#define SCHEMA_HAS_IfcCurveBoundedPlane
+#define SCHEMA_IfcCurveBoundedPlane_HAS_BasisSurface
+#define SCHEMA_IfcCurveBoundedPlane_HAS_OuterBoundary
+#define SCHEMA_IfcCurveBoundedPlane_HAS_InnerBoundaries
+#define SCHEMA_HAS_IfcCurveBoundedSurface
+#define SCHEMA_IfcCurveBoundedSurface_HAS_BasisSurface
+#define SCHEMA_IfcCurveBoundedSurface_HAS_Boundaries
+#define SCHEMA_IfcCurveBoundedSurface_HAS_ImplicitOuter
+#define SCHEMA_HAS_IfcCurveSegment
+#define SCHEMA_IfcCurveSegment_HAS_Placement
+#define SCHEMA_IfcCurveSegment_HAS_SegmentStart
+#define SCHEMA_IfcCurveSegment_HAS_SegmentLength
+#define SCHEMA_IfcCurveSegment_HAS_ParentCurve
+#define SCHEMA_HAS_IfcCurveStyle
+#define SCHEMA_IfcCurveStyle_HAS_CurveFont
+#define SCHEMA_IfcCurveStyle_CurveFont_IS_OPTIONAL
+#define SCHEMA_IfcCurveStyle_HAS_CurveWidth
+#define SCHEMA_IfcCurveStyle_CurveWidth_IS_OPTIONAL
+#define SCHEMA_IfcCurveStyle_HAS_CurveColour
+#define SCHEMA_IfcCurveStyle_CurveColour_IS_OPTIONAL
+#define SCHEMA_IfcCurveStyle_HAS_ModelOrDraughting
+#define SCHEMA_IfcCurveStyle_ModelOrDraughting_IS_OPTIONAL
+#define SCHEMA_HAS_IfcCurveStyleFont
+#define SCHEMA_IfcCurveStyleFont_HAS_Name
+#define SCHEMA_IfcCurveStyleFont_Name_IS_OPTIONAL
+#define SCHEMA_IfcCurveStyleFont_HAS_PatternList
+#define SCHEMA_HAS_IfcCurveStyleFontAndScaling
+#define SCHEMA_IfcCurveStyleFontAndScaling_HAS_Name
+#define SCHEMA_IfcCurveStyleFontAndScaling_Name_IS_OPTIONAL
+#define SCHEMA_IfcCurveStyleFontAndScaling_HAS_CurveStyleFont
+#define SCHEMA_IfcCurveStyleFontAndScaling_HAS_CurveFontScaling
+#define SCHEMA_HAS_IfcCurveStyleFontPattern
+#define SCHEMA_IfcCurveStyleFontPattern_HAS_VisibleSegmentLength
+#define SCHEMA_IfcCurveStyleFontPattern_HAS_InvisibleSegmentLength
+#define SCHEMA_HAS_IfcCylindricalSurface
+#define SCHEMA_IfcCylindricalSurface_HAS_Radius
+#define SCHEMA_HAS_IfcDamper
+#define SCHEMA_IfcDamper_HAS_PredefinedType
+#define SCHEMA_IfcDamper_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDamperType
+#define SCHEMA_IfcDamperType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcDeepFoundation
+#define SCHEMA_HAS_IfcDeepFoundationType
+#define SCHEMA_HAS_IfcDerivedProfileDef
+#define SCHEMA_IfcDerivedProfileDef_HAS_ParentProfile
+#define SCHEMA_IfcDerivedProfileDef_HAS_Operator
+#define SCHEMA_IfcDerivedProfileDef_HAS_Label
+#define SCHEMA_IfcDerivedProfileDef_Label_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDerivedUnit
+#define SCHEMA_IfcDerivedUnit_HAS_Elements
+#define SCHEMA_IfcDerivedUnit_HAS_UnitType
+#define SCHEMA_IfcDerivedUnit_HAS_UserDefinedType
+#define SCHEMA_IfcDerivedUnit_UserDefinedType_IS_OPTIONAL
+#define SCHEMA_IfcDerivedUnit_HAS_Name
+#define SCHEMA_IfcDerivedUnit_Name_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDerivedUnitElement
+#define SCHEMA_IfcDerivedUnitElement_HAS_Unit
+#define SCHEMA_IfcDerivedUnitElement_HAS_Exponent
+#define SCHEMA_HAS_IfcDimensionalExponents
+#define SCHEMA_IfcDimensionalExponents_HAS_LengthExponent
+#define SCHEMA_IfcDimensionalExponents_HAS_MassExponent
+#define SCHEMA_IfcDimensionalExponents_HAS_TimeExponent
+#define SCHEMA_IfcDimensionalExponents_HAS_ElectricCurrentExponent
+#define SCHEMA_IfcDimensionalExponents_HAS_ThermodynamicTemperatureExponent
+#define SCHEMA_IfcDimensionalExponents_HAS_AmountOfSubstanceExponent
+#define SCHEMA_IfcDimensionalExponents_HAS_LuminousIntensityExponent
+#define SCHEMA_HAS_IfcDirection
+#define SCHEMA_IfcDirection_HAS_DirectionRatios
+#define SCHEMA_HAS_IfcDirectrixCurveSweptAreaSolid
+#define SCHEMA_IfcDirectrixCurveSweptAreaSolid_HAS_Directrix
+#define SCHEMA_IfcDirectrixCurveSweptAreaSolid_HAS_StartParam
+#define SCHEMA_IfcDirectrixCurveSweptAreaSolid_StartParam_IS_OPTIONAL
+#define SCHEMA_IfcDirectrixCurveSweptAreaSolid_HAS_EndParam
+#define SCHEMA_IfcDirectrixCurveSweptAreaSolid_EndParam_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDirectrixDerivedReferenceSweptAreaSolid
+#define SCHEMA_HAS_IfcDiscreteAccessory
+#define SCHEMA_IfcDiscreteAccessory_HAS_PredefinedType
+#define SCHEMA_IfcDiscreteAccessory_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDiscreteAccessoryType
+#define SCHEMA_IfcDiscreteAccessoryType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcDistributionBoard
+#define SCHEMA_IfcDistributionBoard_HAS_PredefinedType
+#define SCHEMA_IfcDistributionBoard_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDistributionBoardType
+#define SCHEMA_IfcDistributionBoardType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcDistributionChamberElement
+#define SCHEMA_IfcDistributionChamberElement_HAS_PredefinedType
+#define SCHEMA_IfcDistributionChamberElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDistributionChamberElementType
+#define SCHEMA_IfcDistributionChamberElementType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcDistributionCircuit
+#define SCHEMA_HAS_IfcDistributionControlElement
+#define SCHEMA_IfcDistributionControlElement_HAS_AssignedToFlowElement
+#define SCHEMA_HAS_IfcDistributionControlElementType
+#define SCHEMA_HAS_IfcDistributionElement
+#define SCHEMA_IfcDistributionElement_HAS_HasPorts
+#define SCHEMA_HAS_IfcDistributionElementType
+#define SCHEMA_HAS_IfcDistributionFlowElement
+#define SCHEMA_IfcDistributionFlowElement_HAS_HasControlElements
+#define SCHEMA_HAS_IfcDistributionFlowElementType
+#define SCHEMA_HAS_IfcDistributionPort
+#define SCHEMA_IfcDistributionPort_HAS_FlowDirection
+#define SCHEMA_IfcDistributionPort_FlowDirection_IS_OPTIONAL
+#define SCHEMA_IfcDistributionPort_HAS_PredefinedType
+#define SCHEMA_IfcDistributionPort_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcDistributionPort_HAS_SystemType
+#define SCHEMA_IfcDistributionPort_SystemType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDistributionSystem
+#define SCHEMA_IfcDistributionSystem_HAS_LongName
+#define SCHEMA_IfcDistributionSystem_LongName_IS_OPTIONAL
+#define SCHEMA_IfcDistributionSystem_HAS_PredefinedType
+#define SCHEMA_IfcDistributionSystem_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDocumentInformation
+#define SCHEMA_IfcDocumentInformation_HAS_Identification
+#define SCHEMA_IfcDocumentInformation_HAS_Name
+#define SCHEMA_IfcDocumentInformation_HAS_Description
+#define SCHEMA_IfcDocumentInformation_Description_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_Location
+#define SCHEMA_IfcDocumentInformation_Location_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_Purpose
+#define SCHEMA_IfcDocumentInformation_Purpose_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_IntendedUse
+#define SCHEMA_IfcDocumentInformation_IntendedUse_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_Scope
+#define SCHEMA_IfcDocumentInformation_Scope_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_Revision
+#define SCHEMA_IfcDocumentInformation_Revision_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_DocumentOwner
+#define SCHEMA_IfcDocumentInformation_DocumentOwner_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_Editors
+#define SCHEMA_IfcDocumentInformation_Editors_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_CreationTime
+#define SCHEMA_IfcDocumentInformation_CreationTime_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_LastRevisionTime
+#define SCHEMA_IfcDocumentInformation_LastRevisionTime_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_ElectronicFormat
+#define SCHEMA_IfcDocumentInformation_ElectronicFormat_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_ValidFrom
+#define SCHEMA_IfcDocumentInformation_ValidFrom_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_ValidUntil
+#define SCHEMA_IfcDocumentInformation_ValidUntil_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_Confidentiality
+#define SCHEMA_IfcDocumentInformation_Confidentiality_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_Status
+#define SCHEMA_IfcDocumentInformation_Status_IS_OPTIONAL
+#define SCHEMA_IfcDocumentInformation_HAS_DocumentInfoForObjects
+#define SCHEMA_IfcDocumentInformation_HAS_HasDocumentReferences
+#define SCHEMA_IfcDocumentInformation_HAS_IsPointedTo
+#define SCHEMA_IfcDocumentInformation_HAS_IsPointer
+#define SCHEMA_HAS_IfcDocumentInformationRelationship
+#define SCHEMA_IfcDocumentInformationRelationship_HAS_RelatingDocument
+#define SCHEMA_IfcDocumentInformationRelationship_HAS_RelatedDocuments
+#define SCHEMA_IfcDocumentInformationRelationship_HAS_RelationshipType
+#define SCHEMA_IfcDocumentInformationRelationship_RelationshipType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDocumentReference
+#define SCHEMA_IfcDocumentReference_HAS_Description
+#define SCHEMA_IfcDocumentReference_Description_IS_OPTIONAL
+#define SCHEMA_IfcDocumentReference_HAS_ReferencedDocument
+#define SCHEMA_IfcDocumentReference_ReferencedDocument_IS_OPTIONAL
+#define SCHEMA_IfcDocumentReference_HAS_DocumentRefForObjects
+#define SCHEMA_HAS_IfcDoor
+#define SCHEMA_IfcDoor_HAS_OverallHeight
+#define SCHEMA_IfcDoor_OverallHeight_IS_OPTIONAL
+#define SCHEMA_IfcDoor_HAS_OverallWidth
+#define SCHEMA_IfcDoor_OverallWidth_IS_OPTIONAL
+#define SCHEMA_IfcDoor_HAS_PredefinedType
+#define SCHEMA_IfcDoor_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcDoor_HAS_OperationType
+#define SCHEMA_IfcDoor_OperationType_IS_OPTIONAL
+#define SCHEMA_IfcDoor_HAS_UserDefinedOperationType
+#define SCHEMA_IfcDoor_UserDefinedOperationType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDoorLiningProperties
+#define SCHEMA_IfcDoorLiningProperties_HAS_LiningDepth
+#define SCHEMA_IfcDoorLiningProperties_LiningDepth_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_LiningThickness
+#define SCHEMA_IfcDoorLiningProperties_LiningThickness_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_ThresholdDepth
+#define SCHEMA_IfcDoorLiningProperties_ThresholdDepth_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_ThresholdThickness
+#define SCHEMA_IfcDoorLiningProperties_ThresholdThickness_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_TransomThickness
+#define SCHEMA_IfcDoorLiningProperties_TransomThickness_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_TransomOffset
+#define SCHEMA_IfcDoorLiningProperties_TransomOffset_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_LiningOffset
+#define SCHEMA_IfcDoorLiningProperties_LiningOffset_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_ThresholdOffset
+#define SCHEMA_IfcDoorLiningProperties_ThresholdOffset_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_CasingThickness
+#define SCHEMA_IfcDoorLiningProperties_CasingThickness_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_CasingDepth
+#define SCHEMA_IfcDoorLiningProperties_CasingDepth_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_ShapeAspectStyle
+#define SCHEMA_IfcDoorLiningProperties_ShapeAspectStyle_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_LiningToPanelOffsetX
+#define SCHEMA_IfcDoorLiningProperties_LiningToPanelOffsetX_IS_OPTIONAL
+#define SCHEMA_IfcDoorLiningProperties_HAS_LiningToPanelOffsetY
+#define SCHEMA_IfcDoorLiningProperties_LiningToPanelOffsetY_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDoorPanelProperties
+#define SCHEMA_IfcDoorPanelProperties_HAS_PanelDepth
+#define SCHEMA_IfcDoorPanelProperties_PanelDepth_IS_OPTIONAL
+#define SCHEMA_IfcDoorPanelProperties_HAS_PanelOperation
+#define SCHEMA_IfcDoorPanelProperties_HAS_PanelWidth
+#define SCHEMA_IfcDoorPanelProperties_PanelWidth_IS_OPTIONAL
+#define SCHEMA_IfcDoorPanelProperties_HAS_PanelPosition
+#define SCHEMA_IfcDoorPanelProperties_HAS_ShapeAspectStyle
+#define SCHEMA_IfcDoorPanelProperties_ShapeAspectStyle_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDoorType
+#define SCHEMA_IfcDoorType_HAS_PredefinedType
+#define SCHEMA_IfcDoorType_HAS_OperationType
+#define SCHEMA_IfcDoorType_HAS_ParameterTakesPrecedence
+#define SCHEMA_IfcDoorType_ParameterTakesPrecedence_IS_OPTIONAL
+#define SCHEMA_IfcDoorType_HAS_UserDefinedOperationType
+#define SCHEMA_IfcDoorType_UserDefinedOperationType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDraughtingPreDefinedColour
+#define SCHEMA_HAS_IfcDraughtingPreDefinedCurveFont
+#define SCHEMA_HAS_IfcDuctFitting
+#define SCHEMA_IfcDuctFitting_HAS_PredefinedType
+#define SCHEMA_IfcDuctFitting_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDuctFittingType
+#define SCHEMA_IfcDuctFittingType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcDuctSegment
+#define SCHEMA_IfcDuctSegment_HAS_PredefinedType
+#define SCHEMA_IfcDuctSegment_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDuctSegmentType
+#define SCHEMA_IfcDuctSegmentType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcDuctSilencer
+#define SCHEMA_IfcDuctSilencer_HAS_PredefinedType
+#define SCHEMA_IfcDuctSilencer_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcDuctSilencerType
+#define SCHEMA_IfcDuctSilencerType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcEarthworksCut
+#define SCHEMA_IfcEarthworksCut_HAS_PredefinedType
+#define SCHEMA_IfcEarthworksCut_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcEarthworksElement
+#define SCHEMA_HAS_IfcEarthworksFill
+#define SCHEMA_IfcEarthworksFill_HAS_PredefinedType
+#define SCHEMA_IfcEarthworksFill_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcEdge
+#define SCHEMA_IfcEdge_HAS_EdgeStart
+#define SCHEMA_IfcEdge_HAS_EdgeEnd
+#define SCHEMA_HAS_IfcEdgeCurve
+#define SCHEMA_IfcEdgeCurve_HAS_EdgeGeometry
+#define SCHEMA_IfcEdgeCurve_HAS_SameSense
+#define SCHEMA_HAS_IfcEdgeLoop
+#define SCHEMA_IfcEdgeLoop_HAS_EdgeList
+#define SCHEMA_HAS_IfcElectricAppliance
+#define SCHEMA_IfcElectricAppliance_HAS_PredefinedType
+#define SCHEMA_IfcElectricAppliance_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcElectricApplianceType
+#define SCHEMA_IfcElectricApplianceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcElectricDistributionBoard
+#define SCHEMA_IfcElectricDistributionBoard_HAS_PredefinedType
+#define SCHEMA_IfcElectricDistributionBoard_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcElectricDistributionBoardType
+#define SCHEMA_IfcElectricDistributionBoardType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcElectricFlowStorageDevice
+#define SCHEMA_IfcElectricFlowStorageDevice_HAS_PredefinedType
+#define SCHEMA_IfcElectricFlowStorageDevice_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcElectricFlowStorageDeviceType
+#define SCHEMA_IfcElectricFlowStorageDeviceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcElectricFlowTreatmentDevice
+#define SCHEMA_IfcElectricFlowTreatmentDevice_HAS_PredefinedType
+#define SCHEMA_IfcElectricFlowTreatmentDevice_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcElectricFlowTreatmentDeviceType
+#define SCHEMA_IfcElectricFlowTreatmentDeviceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcElectricGenerator
+#define SCHEMA_IfcElectricGenerator_HAS_PredefinedType
+#define SCHEMA_IfcElectricGenerator_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcElectricGeneratorType
+#define SCHEMA_IfcElectricGeneratorType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcElectricMotor
+#define SCHEMA_IfcElectricMotor_HAS_PredefinedType
+#define SCHEMA_IfcElectricMotor_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcElectricMotorType
+#define SCHEMA_IfcElectricMotorType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcElectricTimeControl
+#define SCHEMA_IfcElectricTimeControl_HAS_PredefinedType
+#define SCHEMA_IfcElectricTimeControl_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcElectricTimeControlType
+#define SCHEMA_IfcElectricTimeControlType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcElement
+#define SCHEMA_IfcElement_HAS_Tag
+#define SCHEMA_IfcElement_Tag_IS_OPTIONAL
+#define SCHEMA_IfcElement_HAS_FillsVoids
+#define SCHEMA_IfcElement_HAS_ConnectedTo
+#define SCHEMA_IfcElement_HAS_IsInterferedByElements
+#define SCHEMA_IfcElement_HAS_InterferesElements
+#define SCHEMA_IfcElement_HAS_HasProjections
+#define SCHEMA_IfcElement_HAS_HasOpenings
+#define SCHEMA_IfcElement_HAS_IsConnectionRealization
+#define SCHEMA_IfcElement_HAS_ProvidesBoundaries
+#define SCHEMA_IfcElement_HAS_ConnectedFrom
+#define SCHEMA_IfcElement_HAS_ContainedInStructure
+#define SCHEMA_IfcElement_HAS_HasCoverings
+#define SCHEMA_IfcElement_HAS_HasSurfaceFeatures
+#define SCHEMA_HAS_IfcElementAssembly
+#define SCHEMA_IfcElementAssembly_HAS_AssemblyPlace
+#define SCHEMA_IfcElementAssembly_AssemblyPlace_IS_OPTIONAL
+#define SCHEMA_IfcElementAssembly_HAS_PredefinedType
+#define SCHEMA_IfcElementAssembly_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcElementAssemblyType
+#define SCHEMA_IfcElementAssemblyType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcElementComponent
+#define SCHEMA_HAS_IfcElementComponentType
+#define SCHEMA_HAS_IfcElementQuantity
+#define SCHEMA_IfcElementQuantity_HAS_MethodOfMeasurement
+#define SCHEMA_IfcElementQuantity_MethodOfMeasurement_IS_OPTIONAL
+#define SCHEMA_IfcElementQuantity_HAS_Quantities
+#define SCHEMA_HAS_IfcElementType
+#define SCHEMA_IfcElementType_HAS_ElementType
+#define SCHEMA_IfcElementType_ElementType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcElementarySurface
+#define SCHEMA_IfcElementarySurface_HAS_Position
+#define SCHEMA_HAS_IfcEllipse
+#define SCHEMA_IfcEllipse_HAS_SemiAxis1
+#define SCHEMA_IfcEllipse_HAS_SemiAxis2
+#define SCHEMA_HAS_IfcEllipseProfileDef
+#define SCHEMA_IfcEllipseProfileDef_HAS_SemiAxis1
+#define SCHEMA_IfcEllipseProfileDef_HAS_SemiAxis2
+#define SCHEMA_HAS_IfcEnergyConversionDevice
+#define SCHEMA_HAS_IfcEnergyConversionDeviceType
+#define SCHEMA_HAS_IfcEngine
+#define SCHEMA_IfcEngine_HAS_PredefinedType
+#define SCHEMA_IfcEngine_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcEngineType
+#define SCHEMA_IfcEngineType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcEvaporativeCooler
+#define SCHEMA_IfcEvaporativeCooler_HAS_PredefinedType
+#define SCHEMA_IfcEvaporativeCooler_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcEvaporativeCoolerType
+#define SCHEMA_IfcEvaporativeCoolerType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcEvaporator
+#define SCHEMA_IfcEvaporator_HAS_PredefinedType
+#define SCHEMA_IfcEvaporator_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcEvaporatorType
+#define SCHEMA_IfcEvaporatorType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcEvent
+#define SCHEMA_IfcEvent_HAS_PredefinedType
+#define SCHEMA_IfcEvent_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcEvent_HAS_EventTriggerType
+#define SCHEMA_IfcEvent_EventTriggerType_IS_OPTIONAL
+#define SCHEMA_IfcEvent_HAS_UserDefinedEventTriggerType
+#define SCHEMA_IfcEvent_UserDefinedEventTriggerType_IS_OPTIONAL
+#define SCHEMA_IfcEvent_HAS_EventOccurenceTime
+#define SCHEMA_IfcEvent_EventOccurenceTime_IS_OPTIONAL
+#define SCHEMA_HAS_IfcEventTime
+#define SCHEMA_IfcEventTime_HAS_ActualDate
+#define SCHEMA_IfcEventTime_ActualDate_IS_OPTIONAL
+#define SCHEMA_IfcEventTime_HAS_EarlyDate
+#define SCHEMA_IfcEventTime_EarlyDate_IS_OPTIONAL
+#define SCHEMA_IfcEventTime_HAS_LateDate
+#define SCHEMA_IfcEventTime_LateDate_IS_OPTIONAL
+#define SCHEMA_IfcEventTime_HAS_ScheduleDate
+#define SCHEMA_IfcEventTime_ScheduleDate_IS_OPTIONAL
+#define SCHEMA_HAS_IfcEventType
+#define SCHEMA_IfcEventType_HAS_PredefinedType
+#define SCHEMA_IfcEventType_HAS_EventTriggerType
+#define SCHEMA_IfcEventType_HAS_UserDefinedEventTriggerType
+#define SCHEMA_IfcEventType_UserDefinedEventTriggerType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcExtendedProperties
+#define SCHEMA_IfcExtendedProperties_HAS_Name
+#define SCHEMA_IfcExtendedProperties_Name_IS_OPTIONAL
+#define SCHEMA_IfcExtendedProperties_HAS_Description
+#define SCHEMA_IfcExtendedProperties_Description_IS_OPTIONAL
+#define SCHEMA_IfcExtendedProperties_HAS_Properties
+#define SCHEMA_HAS_IfcExternalInformation
+#define SCHEMA_HAS_IfcExternalReference
+#define SCHEMA_IfcExternalReference_HAS_Location
+#define SCHEMA_IfcExternalReference_Location_IS_OPTIONAL
+#define SCHEMA_IfcExternalReference_HAS_Identification
+#define SCHEMA_IfcExternalReference_Identification_IS_OPTIONAL
+#define SCHEMA_IfcExternalReference_HAS_Name
+#define SCHEMA_IfcExternalReference_Name_IS_OPTIONAL
+#define SCHEMA_IfcExternalReference_HAS_ExternalReferenceForResources
+#define SCHEMA_HAS_IfcExternalReferenceRelationship
+#define SCHEMA_IfcExternalReferenceRelationship_HAS_RelatingReference
+#define SCHEMA_IfcExternalReferenceRelationship_HAS_RelatedResourceObjects
+#define SCHEMA_HAS_IfcExternalSpatialElement
+#define SCHEMA_IfcExternalSpatialElement_HAS_PredefinedType
+#define SCHEMA_IfcExternalSpatialElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcExternalSpatialElement_HAS_BoundedBy
+#define SCHEMA_HAS_IfcExternalSpatialStructureElement
+#define SCHEMA_HAS_IfcExternallyDefinedHatchStyle
+#define SCHEMA_HAS_IfcExternallyDefinedSurfaceStyle
+#define SCHEMA_HAS_IfcExternallyDefinedTextFont
+#define SCHEMA_HAS_IfcExtrudedAreaSolid
+#define SCHEMA_IfcExtrudedAreaSolid_HAS_ExtrudedDirection
+#define SCHEMA_IfcExtrudedAreaSolid_HAS_Depth
+#define SCHEMA_HAS_IfcExtrudedAreaSolidTapered
+#define SCHEMA_IfcExtrudedAreaSolidTapered_HAS_EndSweptArea
+#define SCHEMA_HAS_IfcFace
+#define SCHEMA_IfcFace_HAS_Bounds
+#define SCHEMA_IfcFace_HAS_HasTextureMaps
+#define SCHEMA_HAS_IfcFaceBasedSurfaceModel
+#define SCHEMA_IfcFaceBasedSurfaceModel_HAS_FbsmFaces
+#define SCHEMA_HAS_IfcFaceBound
+#define SCHEMA_IfcFaceBound_HAS_Bound
+#define SCHEMA_IfcFaceBound_HAS_Orientation
+#define SCHEMA_HAS_IfcFaceOuterBound
+#define SCHEMA_HAS_IfcFaceSurface
+#define SCHEMA_IfcFaceSurface_HAS_FaceSurface
+#define SCHEMA_IfcFaceSurface_HAS_SameSense
+#define SCHEMA_HAS_IfcFacetedBrep
+#define SCHEMA_HAS_IfcFacetedBrepWithVoids
+#define SCHEMA_IfcFacetedBrepWithVoids_HAS_Voids
+#define SCHEMA_HAS_IfcFacility
+#define SCHEMA_HAS_IfcFacilityPart
+#define SCHEMA_IfcFacilityPart_HAS_UsageType
+#define SCHEMA_HAS_IfcFacilityPartCommon
+#define SCHEMA_IfcFacilityPartCommon_HAS_PredefinedType
+#define SCHEMA_IfcFacilityPartCommon_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFailureConnectionCondition
+#define SCHEMA_IfcFailureConnectionCondition_HAS_TensionFailureX
+#define SCHEMA_IfcFailureConnectionCondition_TensionFailureX_IS_OPTIONAL
+#define SCHEMA_IfcFailureConnectionCondition_HAS_TensionFailureY
+#define SCHEMA_IfcFailureConnectionCondition_TensionFailureY_IS_OPTIONAL
+#define SCHEMA_IfcFailureConnectionCondition_HAS_TensionFailureZ
+#define SCHEMA_IfcFailureConnectionCondition_TensionFailureZ_IS_OPTIONAL
+#define SCHEMA_IfcFailureConnectionCondition_HAS_CompressionFailureX
+#define SCHEMA_IfcFailureConnectionCondition_CompressionFailureX_IS_OPTIONAL
+#define SCHEMA_IfcFailureConnectionCondition_HAS_CompressionFailureY
+#define SCHEMA_IfcFailureConnectionCondition_CompressionFailureY_IS_OPTIONAL
+#define SCHEMA_IfcFailureConnectionCondition_HAS_CompressionFailureZ
+#define SCHEMA_IfcFailureConnectionCondition_CompressionFailureZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFan
+#define SCHEMA_IfcFan_HAS_PredefinedType
+#define SCHEMA_IfcFan_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFanType
+#define SCHEMA_IfcFanType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcFastener
+#define SCHEMA_IfcFastener_HAS_PredefinedType
+#define SCHEMA_IfcFastener_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFastenerType
+#define SCHEMA_IfcFastenerType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcFeatureElement
+#define SCHEMA_HAS_IfcFeatureElementAddition
+#define SCHEMA_IfcFeatureElementAddition_HAS_ProjectsElements
+#define SCHEMA_HAS_IfcFeatureElementSubtraction
+#define SCHEMA_IfcFeatureElementSubtraction_HAS_VoidsElements
+#define SCHEMA_HAS_IfcFillAreaStyle
+#define SCHEMA_IfcFillAreaStyle_HAS_FillStyles
+#define SCHEMA_IfcFillAreaStyle_HAS_ModelOrDraughting
+#define SCHEMA_IfcFillAreaStyle_ModelOrDraughting_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFillAreaStyleHatching
+#define SCHEMA_IfcFillAreaStyleHatching_HAS_HatchLineAppearance
+#define SCHEMA_IfcFillAreaStyleHatching_HAS_StartOfNextHatchLine
+#define SCHEMA_IfcFillAreaStyleHatching_HAS_PointOfReferenceHatchLine
+#define SCHEMA_IfcFillAreaStyleHatching_PointOfReferenceHatchLine_IS_OPTIONAL
+#define SCHEMA_IfcFillAreaStyleHatching_HAS_PatternStart
+#define SCHEMA_IfcFillAreaStyleHatching_PatternStart_IS_OPTIONAL
+#define SCHEMA_IfcFillAreaStyleHatching_HAS_HatchLineAngle
+#define SCHEMA_HAS_IfcFillAreaStyleTiles
+#define SCHEMA_IfcFillAreaStyleTiles_HAS_TilingPattern
+#define SCHEMA_IfcFillAreaStyleTiles_HAS_Tiles
+#define SCHEMA_IfcFillAreaStyleTiles_HAS_TilingScale
+#define SCHEMA_HAS_IfcFilter
+#define SCHEMA_IfcFilter_HAS_PredefinedType
+#define SCHEMA_IfcFilter_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFilterType
+#define SCHEMA_IfcFilterType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcFireSuppressionTerminal
+#define SCHEMA_IfcFireSuppressionTerminal_HAS_PredefinedType
+#define SCHEMA_IfcFireSuppressionTerminal_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFireSuppressionTerminalType
+#define SCHEMA_IfcFireSuppressionTerminalType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcFixedReferenceSweptAreaSolid
+#define SCHEMA_IfcFixedReferenceSweptAreaSolid_HAS_FixedReference
+#define SCHEMA_HAS_IfcFlowController
+#define SCHEMA_HAS_IfcFlowControllerType
+#define SCHEMA_HAS_IfcFlowFitting
+#define SCHEMA_HAS_IfcFlowFittingType
+#define SCHEMA_HAS_IfcFlowInstrument
+#define SCHEMA_IfcFlowInstrument_HAS_PredefinedType
+#define SCHEMA_IfcFlowInstrument_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFlowInstrumentType
+#define SCHEMA_IfcFlowInstrumentType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcFlowMeter
+#define SCHEMA_IfcFlowMeter_HAS_PredefinedType
+#define SCHEMA_IfcFlowMeter_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFlowMeterType
+#define SCHEMA_IfcFlowMeterType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcFlowMovingDevice
+#define SCHEMA_HAS_IfcFlowMovingDeviceType
+#define SCHEMA_HAS_IfcFlowSegment
+#define SCHEMA_HAS_IfcFlowSegmentType
+#define SCHEMA_HAS_IfcFlowStorageDevice
+#define SCHEMA_HAS_IfcFlowStorageDeviceType
+#define SCHEMA_HAS_IfcFlowTerminal
+#define SCHEMA_HAS_IfcFlowTerminalType
+#define SCHEMA_HAS_IfcFlowTreatmentDevice
+#define SCHEMA_HAS_IfcFlowTreatmentDeviceType
+#define SCHEMA_HAS_IfcFooting
+#define SCHEMA_IfcFooting_HAS_PredefinedType
+#define SCHEMA_IfcFooting_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFootingType
+#define SCHEMA_IfcFootingType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcFurnishingElement
+#define SCHEMA_HAS_IfcFurnishingElementType
+#define SCHEMA_HAS_IfcFurniture
+#define SCHEMA_IfcFurniture_HAS_PredefinedType
+#define SCHEMA_IfcFurniture_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcFurnitureType
+#define SCHEMA_IfcFurnitureType_HAS_AssemblyPlace
+#define SCHEMA_IfcFurnitureType_HAS_PredefinedType
+#define SCHEMA_IfcFurnitureType_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcGeographicCRS
+#define SCHEMA_IfcGeographicCRS_HAS_GeodeticDatum
+#define SCHEMA_IfcGeographicCRS_GeodeticDatum_IS_OPTIONAL
+#define SCHEMA_IfcGeographicCRS_HAS_PrimeMeridian
+#define SCHEMA_IfcGeographicCRS_PrimeMeridian_IS_OPTIONAL
+#define SCHEMA_IfcGeographicCRS_HAS_Unit
+#define SCHEMA_IfcGeographicCRS_Unit_IS_OPTIONAL
+#define SCHEMA_HAS_IfcGeographicElement
+#define SCHEMA_IfcGeographicElement_HAS_PredefinedType
+#define SCHEMA_IfcGeographicElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcGeographicElementType
+#define SCHEMA_IfcGeographicElementType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcGeometricCurveSet
+#define SCHEMA_HAS_IfcGeometricRepresentationContext
+#define SCHEMA_IfcGeometricRepresentationContext_HAS_CoordinateSpaceDimension
+#define SCHEMA_IfcGeometricRepresentationContext_HAS_Precision
+#define SCHEMA_IfcGeometricRepresentationContext_Precision_IS_OPTIONAL
+#define SCHEMA_IfcGeometricRepresentationContext_HAS_WorldCoordinateSystem
+#define SCHEMA_IfcGeometricRepresentationContext_HAS_TrueNorth
+#define SCHEMA_IfcGeometricRepresentationContext_TrueNorth_IS_OPTIONAL
+#define SCHEMA_IfcGeometricRepresentationContext_HAS_HasSubContexts
+#define SCHEMA_IfcGeometricRepresentationContext_HAS_HasCoordinateOperation
+#define SCHEMA_HAS_IfcGeometricRepresentationItem
+#define SCHEMA_HAS_IfcGeometricRepresentationSubContext
+#define SCHEMA_IfcGeometricRepresentationSubContext_HAS_ParentContext
+#define SCHEMA_IfcGeometricRepresentationSubContext_HAS_TargetScale
+#define SCHEMA_IfcGeometricRepresentationSubContext_TargetScale_IS_OPTIONAL
+#define SCHEMA_IfcGeometricRepresentationSubContext_HAS_TargetView
+#define SCHEMA_IfcGeometricRepresentationSubContext_HAS_UserDefinedTargetView
+#define SCHEMA_IfcGeometricRepresentationSubContext_UserDefinedTargetView_IS_OPTIONAL
+#define SCHEMA_HAS_IfcGeometricSet
+#define SCHEMA_IfcGeometricSet_HAS_Elements
+#define SCHEMA_HAS_IfcGeomodel
+#define SCHEMA_HAS_IfcGeoslice
+#define SCHEMA_HAS_IfcGeotechnicalAssembly
+#define SCHEMA_HAS_IfcGeotechnicalElement
+#define SCHEMA_HAS_IfcGeotechnicalStratum
+#define SCHEMA_IfcGeotechnicalStratum_HAS_PredefinedType
+#define SCHEMA_IfcGeotechnicalStratum_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcGradientCurve
+#define SCHEMA_IfcGradientCurve_HAS_BaseCurve
+#define SCHEMA_IfcGradientCurve_HAS_EndPoint
+#define SCHEMA_IfcGradientCurve_EndPoint_IS_OPTIONAL
+#define SCHEMA_HAS_IfcGrid
+#define SCHEMA_IfcGrid_HAS_UAxes
+#define SCHEMA_IfcGrid_HAS_VAxes
+#define SCHEMA_IfcGrid_HAS_WAxes
+#define SCHEMA_IfcGrid_WAxes_IS_OPTIONAL
+#define SCHEMA_IfcGrid_HAS_PredefinedType
+#define SCHEMA_IfcGrid_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcGridAxis
+#define SCHEMA_IfcGridAxis_HAS_AxisTag
+#define SCHEMA_IfcGridAxis_AxisTag_IS_OPTIONAL
+#define SCHEMA_IfcGridAxis_HAS_AxisCurve
+#define SCHEMA_IfcGridAxis_HAS_SameSense
+#define SCHEMA_IfcGridAxis_HAS_PartOfW
+#define SCHEMA_IfcGridAxis_HAS_PartOfV
+#define SCHEMA_IfcGridAxis_HAS_PartOfU
+#define SCHEMA_IfcGridAxis_HAS_HasIntersections
+#define SCHEMA_HAS_IfcGridPlacement
+#define SCHEMA_IfcGridPlacement_HAS_PlacementLocation
+#define SCHEMA_IfcGridPlacement_HAS_PlacementRefDirection
+#define SCHEMA_IfcGridPlacement_PlacementRefDirection_IS_OPTIONAL
+#define SCHEMA_HAS_IfcGroup
+#define SCHEMA_IfcGroup_HAS_IsGroupedBy
+#define SCHEMA_IfcGroup_HAS_ReferencedInStructures
+#define SCHEMA_HAS_IfcHalfSpaceSolid
+#define SCHEMA_IfcHalfSpaceSolid_HAS_BaseSurface
+#define SCHEMA_IfcHalfSpaceSolid_HAS_AgreementFlag
+#define SCHEMA_HAS_IfcHeatExchanger
+#define SCHEMA_IfcHeatExchanger_HAS_PredefinedType
+#define SCHEMA_IfcHeatExchanger_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcHeatExchangerType
+#define SCHEMA_IfcHeatExchangerType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcHumidifier
+#define SCHEMA_IfcHumidifier_HAS_PredefinedType
+#define SCHEMA_IfcHumidifier_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcHumidifierType
+#define SCHEMA_IfcHumidifierType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcIShapeProfileDef
+#define SCHEMA_IfcIShapeProfileDef_HAS_OverallWidth
+#define SCHEMA_IfcIShapeProfileDef_HAS_OverallDepth
+#define SCHEMA_IfcIShapeProfileDef_HAS_WebThickness
+#define SCHEMA_IfcIShapeProfileDef_HAS_FlangeThickness
+#define SCHEMA_IfcIShapeProfileDef_HAS_FilletRadius
+#define SCHEMA_IfcIShapeProfileDef_FilletRadius_IS_OPTIONAL
+#define SCHEMA_IfcIShapeProfileDef_HAS_FlangeEdgeRadius
+#define SCHEMA_IfcIShapeProfileDef_FlangeEdgeRadius_IS_OPTIONAL
+#define SCHEMA_IfcIShapeProfileDef_HAS_FlangeSlope
+#define SCHEMA_IfcIShapeProfileDef_FlangeSlope_IS_OPTIONAL
+#define SCHEMA_HAS_IfcImageTexture
+#define SCHEMA_IfcImageTexture_HAS_URLReference
+#define SCHEMA_HAS_IfcImpactProtectionDevice
+#define SCHEMA_IfcImpactProtectionDevice_HAS_PredefinedType
+#define SCHEMA_IfcImpactProtectionDevice_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcImpactProtectionDeviceType
+#define SCHEMA_IfcImpactProtectionDeviceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcIndexedColourMap
+#define SCHEMA_IfcIndexedColourMap_HAS_MappedTo
+#define SCHEMA_IfcIndexedColourMap_HAS_Opacity
+#define SCHEMA_IfcIndexedColourMap_Opacity_IS_OPTIONAL
+#define SCHEMA_IfcIndexedColourMap_HAS_Colours
+#define SCHEMA_IfcIndexedColourMap_HAS_ColourIndex
+#define SCHEMA_HAS_IfcIndexedPolyCurve
+#define SCHEMA_IfcIndexedPolyCurve_HAS_Points
+#define SCHEMA_IfcIndexedPolyCurve_HAS_Segments
+#define SCHEMA_IfcIndexedPolyCurve_Segments_IS_OPTIONAL
+#define SCHEMA_IfcIndexedPolyCurve_HAS_SelfIntersect
+#define SCHEMA_IfcIndexedPolyCurve_SelfIntersect_IS_OPTIONAL
+#define SCHEMA_HAS_IfcIndexedPolygonalFace
+#define SCHEMA_IfcIndexedPolygonalFace_HAS_CoordIndex
+#define SCHEMA_IfcIndexedPolygonalFace_HAS_ToFaceSet
+#define SCHEMA_IfcIndexedPolygonalFace_HAS_HasTexCoords
+#define SCHEMA_HAS_IfcIndexedPolygonalFaceWithVoids
+#define SCHEMA_IfcIndexedPolygonalFaceWithVoids_HAS_InnerCoordIndices
+#define SCHEMA_HAS_IfcIndexedPolygonalTextureMap
+#define SCHEMA_IfcIndexedPolygonalTextureMap_HAS_TexCoordIndices
+#define SCHEMA_HAS_IfcIndexedTextureMap
+#define SCHEMA_IfcIndexedTextureMap_HAS_MappedTo
+#define SCHEMA_IfcIndexedTextureMap_HAS_TexCoords
+#define SCHEMA_HAS_IfcIndexedTriangleTextureMap
+#define SCHEMA_IfcIndexedTriangleTextureMap_HAS_TexCoordIndex
+#define SCHEMA_IfcIndexedTriangleTextureMap_TexCoordIndex_IS_OPTIONAL
+#define SCHEMA_HAS_IfcInterceptor
+#define SCHEMA_IfcInterceptor_HAS_PredefinedType
+#define SCHEMA_IfcInterceptor_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcInterceptorType
+#define SCHEMA_IfcInterceptorType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcIntersectionCurve
+#define SCHEMA_HAS_IfcInventory
+#define SCHEMA_IfcInventory_HAS_PredefinedType
+#define SCHEMA_IfcInventory_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcInventory_HAS_Jurisdiction
+#define SCHEMA_IfcInventory_Jurisdiction_IS_OPTIONAL
+#define SCHEMA_IfcInventory_HAS_ResponsiblePersons
+#define SCHEMA_IfcInventory_ResponsiblePersons_IS_OPTIONAL
+#define SCHEMA_IfcInventory_HAS_LastUpdateDate
+#define SCHEMA_IfcInventory_LastUpdateDate_IS_OPTIONAL
+#define SCHEMA_IfcInventory_HAS_CurrentValue
+#define SCHEMA_IfcInventory_CurrentValue_IS_OPTIONAL
+#define SCHEMA_IfcInventory_HAS_OriginalValue
+#define SCHEMA_IfcInventory_OriginalValue_IS_OPTIONAL
+#define SCHEMA_HAS_IfcIrregularTimeSeries
+#define SCHEMA_IfcIrregularTimeSeries_HAS_Values
+#define SCHEMA_HAS_IfcIrregularTimeSeriesValue
+#define SCHEMA_IfcIrregularTimeSeriesValue_HAS_TimeStamp
+#define SCHEMA_IfcIrregularTimeSeriesValue_HAS_ListValues
+#define SCHEMA_HAS_IfcJunctionBox
+#define SCHEMA_IfcJunctionBox_HAS_PredefinedType
+#define SCHEMA_IfcJunctionBox_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcJunctionBoxType
+#define SCHEMA_IfcJunctionBoxType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcKerb
+#define SCHEMA_IfcKerb_HAS_PredefinedType
+#define SCHEMA_IfcKerb_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcKerbType
+#define SCHEMA_IfcKerbType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcLShapeProfileDef
+#define SCHEMA_IfcLShapeProfileDef_HAS_Depth
+#define SCHEMA_IfcLShapeProfileDef_HAS_Width
+#define SCHEMA_IfcLShapeProfileDef_Width_IS_OPTIONAL
+#define SCHEMA_IfcLShapeProfileDef_HAS_Thickness
+#define SCHEMA_IfcLShapeProfileDef_HAS_FilletRadius
+#define SCHEMA_IfcLShapeProfileDef_FilletRadius_IS_OPTIONAL
+#define SCHEMA_IfcLShapeProfileDef_HAS_EdgeRadius
+#define SCHEMA_IfcLShapeProfileDef_EdgeRadius_IS_OPTIONAL
+#define SCHEMA_IfcLShapeProfileDef_HAS_LegSlope
+#define SCHEMA_IfcLShapeProfileDef_LegSlope_IS_OPTIONAL
+#define SCHEMA_HAS_IfcLaborResource
+#define SCHEMA_IfcLaborResource_HAS_PredefinedType
+#define SCHEMA_IfcLaborResource_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcLaborResourceType
+#define SCHEMA_IfcLaborResourceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcLagTime
+#define SCHEMA_IfcLagTime_HAS_LagValue
+#define SCHEMA_IfcLagTime_HAS_DurationType
+#define SCHEMA_HAS_IfcLamp
+#define SCHEMA_IfcLamp_HAS_PredefinedType
+#define SCHEMA_IfcLamp_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcLampType
+#define SCHEMA_IfcLampType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcLibraryInformation
+#define SCHEMA_IfcLibraryInformation_HAS_Name
+#define SCHEMA_IfcLibraryInformation_HAS_Version
+#define SCHEMA_IfcLibraryInformation_Version_IS_OPTIONAL
+#define SCHEMA_IfcLibraryInformation_HAS_Publisher
+#define SCHEMA_IfcLibraryInformation_Publisher_IS_OPTIONAL
+#define SCHEMA_IfcLibraryInformation_HAS_VersionDate
+#define SCHEMA_IfcLibraryInformation_VersionDate_IS_OPTIONAL
+#define SCHEMA_IfcLibraryInformation_HAS_Location
+#define SCHEMA_IfcLibraryInformation_Location_IS_OPTIONAL
+#define SCHEMA_IfcLibraryInformation_HAS_Description
+#define SCHEMA_IfcLibraryInformation_Description_IS_OPTIONAL
+#define SCHEMA_IfcLibraryInformation_HAS_LibraryInfoForObjects
+#define SCHEMA_IfcLibraryInformation_HAS_HasLibraryReferences
+#define SCHEMA_HAS_IfcLibraryReference
+#define SCHEMA_IfcLibraryReference_HAS_Description
+#define SCHEMA_IfcLibraryReference_Description_IS_OPTIONAL
+#define SCHEMA_IfcLibraryReference_HAS_Language
+#define SCHEMA_IfcLibraryReference_Language_IS_OPTIONAL
+#define SCHEMA_IfcLibraryReference_HAS_ReferencedLibrary
+#define SCHEMA_IfcLibraryReference_ReferencedLibrary_IS_OPTIONAL
+#define SCHEMA_IfcLibraryReference_HAS_LibraryRefForObjects
+#define SCHEMA_HAS_IfcLightDistributionData
+#define SCHEMA_IfcLightDistributionData_HAS_MainPlaneAngle
+#define SCHEMA_IfcLightDistributionData_HAS_SecondaryPlaneAngle
+#define SCHEMA_IfcLightDistributionData_HAS_LuminousIntensity
+#define SCHEMA_HAS_IfcLightFixture
+#define SCHEMA_IfcLightFixture_HAS_PredefinedType
+#define SCHEMA_IfcLightFixture_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcLightFixtureType
+#define SCHEMA_IfcLightFixtureType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcLightIntensityDistribution
+#define SCHEMA_IfcLightIntensityDistribution_HAS_LightDistributionCurve
+#define SCHEMA_IfcLightIntensityDistribution_HAS_DistributionData
+#define SCHEMA_HAS_IfcLightSource
+#define SCHEMA_IfcLightSource_HAS_Name
+#define SCHEMA_IfcLightSource_Name_IS_OPTIONAL
+#define SCHEMA_IfcLightSource_HAS_LightColour
+#define SCHEMA_IfcLightSource_HAS_AmbientIntensity
+#define SCHEMA_IfcLightSource_AmbientIntensity_IS_OPTIONAL
+#define SCHEMA_IfcLightSource_HAS_Intensity
+#define SCHEMA_IfcLightSource_Intensity_IS_OPTIONAL
+#define SCHEMA_HAS_IfcLightSourceAmbient
+#define SCHEMA_HAS_IfcLightSourceDirectional
+#define SCHEMA_IfcLightSourceDirectional_HAS_Orientation
+#define SCHEMA_HAS_IfcLightSourceGoniometric
+#define SCHEMA_IfcLightSourceGoniometric_HAS_Position
+#define SCHEMA_IfcLightSourceGoniometric_HAS_ColourAppearance
+#define SCHEMA_IfcLightSourceGoniometric_ColourAppearance_IS_OPTIONAL
+#define SCHEMA_IfcLightSourceGoniometric_HAS_ColourTemperature
+#define SCHEMA_IfcLightSourceGoniometric_HAS_LuminousFlux
+#define SCHEMA_IfcLightSourceGoniometric_HAS_LightEmissionSource
+#define SCHEMA_IfcLightSourceGoniometric_HAS_LightDistributionDataSource
+#define SCHEMA_HAS_IfcLightSourcePositional
+#define SCHEMA_IfcLightSourcePositional_HAS_Position
+#define SCHEMA_IfcLightSourcePositional_HAS_Radius
+#define SCHEMA_IfcLightSourcePositional_HAS_ConstantAttenuation
+#define SCHEMA_IfcLightSourcePositional_HAS_DistanceAttenuation
+#define SCHEMA_IfcLightSourcePositional_HAS_QuadricAttenuation
+#define SCHEMA_HAS_IfcLightSourceSpot
+#define SCHEMA_IfcLightSourceSpot_HAS_Orientation
+#define SCHEMA_IfcLightSourceSpot_HAS_ConcentrationExponent
+#define SCHEMA_IfcLightSourceSpot_ConcentrationExponent_IS_OPTIONAL
+#define SCHEMA_IfcLightSourceSpot_HAS_SpreadAngle
+#define SCHEMA_IfcLightSourceSpot_HAS_BeamWidthAngle
+#define SCHEMA_HAS_IfcLine
+#define SCHEMA_IfcLine_HAS_Pnt
+#define SCHEMA_IfcLine_HAS_Dir
+#define SCHEMA_HAS_IfcLinearElement
+#define SCHEMA_HAS_IfcLinearPlacement
+#define SCHEMA_IfcLinearPlacement_HAS_RelativePlacement
+#define SCHEMA_IfcLinearPlacement_HAS_CartesianPosition
+#define SCHEMA_IfcLinearPlacement_CartesianPosition_IS_OPTIONAL
+#define SCHEMA_HAS_IfcLinearPositioningElement
+#define SCHEMA_HAS_IfcLiquidTerminal
+#define SCHEMA_IfcLiquidTerminal_HAS_PredefinedType
+#define SCHEMA_IfcLiquidTerminal_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcLiquidTerminalType
+#define SCHEMA_IfcLiquidTerminalType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcLocalPlacement
+#define SCHEMA_IfcLocalPlacement_HAS_RelativePlacement
+#define SCHEMA_HAS_IfcLoop
+#define SCHEMA_HAS_IfcManifoldSolidBrep
+#define SCHEMA_IfcManifoldSolidBrep_HAS_Outer
+#define SCHEMA_HAS_IfcMapConversion
+#define SCHEMA_IfcMapConversion_HAS_Eastings
+#define SCHEMA_IfcMapConversion_HAS_Northings
+#define SCHEMA_IfcMapConversion_HAS_OrthogonalHeight
+#define SCHEMA_IfcMapConversion_HAS_XAxisAbscissa
+#define SCHEMA_IfcMapConversion_XAxisAbscissa_IS_OPTIONAL
+#define SCHEMA_IfcMapConversion_HAS_XAxisOrdinate
+#define SCHEMA_IfcMapConversion_XAxisOrdinate_IS_OPTIONAL
+#define SCHEMA_IfcMapConversion_HAS_Scale
+#define SCHEMA_IfcMapConversion_Scale_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMapConversionScaled
+#define SCHEMA_IfcMapConversionScaled_HAS_ScaleX
+#define SCHEMA_IfcMapConversionScaled_HAS_ScaleY
+#define SCHEMA_IfcMapConversionScaled_HAS_ScaleZ
+#define SCHEMA_HAS_IfcMappedItem
+#define SCHEMA_IfcMappedItem_HAS_MappingSource
+#define SCHEMA_IfcMappedItem_HAS_MappingTarget
+#define SCHEMA_HAS_IfcMarineFacility
+#define SCHEMA_IfcMarineFacility_HAS_PredefinedType
+#define SCHEMA_IfcMarineFacility_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMarinePart
+#define SCHEMA_IfcMarinePart_HAS_PredefinedType
+#define SCHEMA_IfcMarinePart_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMaterial
+#define SCHEMA_IfcMaterial_HAS_Name
+#define SCHEMA_IfcMaterial_HAS_Description
+#define SCHEMA_IfcMaterial_Description_IS_OPTIONAL
+#define SCHEMA_IfcMaterial_HAS_Category
+#define SCHEMA_IfcMaterial_Category_IS_OPTIONAL
+#define SCHEMA_IfcMaterial_HAS_HasRepresentation
+#define SCHEMA_IfcMaterial_HAS_IsRelatedWith
+#define SCHEMA_IfcMaterial_HAS_RelatesTo
+#define SCHEMA_HAS_IfcMaterialClassificationRelationship
+#define SCHEMA_IfcMaterialClassificationRelationship_HAS_MaterialClassifications
+#define SCHEMA_IfcMaterialClassificationRelationship_HAS_ClassifiedMaterial
+#define SCHEMA_HAS_IfcMaterialConstituent
+#define SCHEMA_IfcMaterialConstituent_HAS_Name
+#define SCHEMA_IfcMaterialConstituent_Name_IS_OPTIONAL
+#define SCHEMA_IfcMaterialConstituent_HAS_Description
+#define SCHEMA_IfcMaterialConstituent_Description_IS_OPTIONAL
+#define SCHEMA_IfcMaterialConstituent_HAS_Material
+#define SCHEMA_IfcMaterialConstituent_HAS_Fraction
+#define SCHEMA_IfcMaterialConstituent_Fraction_IS_OPTIONAL
+#define SCHEMA_IfcMaterialConstituent_HAS_Category
+#define SCHEMA_IfcMaterialConstituent_Category_IS_OPTIONAL
+#define SCHEMA_IfcMaterialConstituent_HAS_ToMaterialConstituentSet
+#define SCHEMA_HAS_IfcMaterialConstituentSet
+#define SCHEMA_IfcMaterialConstituentSet_HAS_Name
+#define SCHEMA_IfcMaterialConstituentSet_Name_IS_OPTIONAL
+#define SCHEMA_IfcMaterialConstituentSet_HAS_Description
+#define SCHEMA_IfcMaterialConstituentSet_Description_IS_OPTIONAL
+#define SCHEMA_IfcMaterialConstituentSet_HAS_MaterialConstituents
+#define SCHEMA_IfcMaterialConstituentSet_MaterialConstituents_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMaterialDefinition
+#define SCHEMA_IfcMaterialDefinition_HAS_AssociatedTo
+#define SCHEMA_IfcMaterialDefinition_HAS_HasExternalReferences
+#define SCHEMA_IfcMaterialDefinition_HAS_HasProperties
+#define SCHEMA_HAS_IfcMaterialDefinitionRepresentation
+#define SCHEMA_IfcMaterialDefinitionRepresentation_HAS_RepresentedMaterial
+#define SCHEMA_HAS_IfcMaterialLayer
+#define SCHEMA_IfcMaterialLayer_HAS_Material
+#define SCHEMA_IfcMaterialLayer_Material_IS_OPTIONAL
+#define SCHEMA_IfcMaterialLayer_HAS_LayerThickness
+#define SCHEMA_IfcMaterialLayer_HAS_IsVentilated
+#define SCHEMA_IfcMaterialLayer_IsVentilated_IS_OPTIONAL
+#define SCHEMA_IfcMaterialLayer_HAS_Name
+#define SCHEMA_IfcMaterialLayer_Name_IS_OPTIONAL
+#define SCHEMA_IfcMaterialLayer_HAS_Description
+#define SCHEMA_IfcMaterialLayer_Description_IS_OPTIONAL
+#define SCHEMA_IfcMaterialLayer_HAS_Category
+#define SCHEMA_IfcMaterialLayer_Category_IS_OPTIONAL
+#define SCHEMA_IfcMaterialLayer_HAS_Priority
+#define SCHEMA_IfcMaterialLayer_Priority_IS_OPTIONAL
+#define SCHEMA_IfcMaterialLayer_HAS_ToMaterialLayerSet
+#define SCHEMA_HAS_IfcMaterialLayerSet
+#define SCHEMA_IfcMaterialLayerSet_HAS_MaterialLayers
+#define SCHEMA_IfcMaterialLayerSet_HAS_LayerSetName
+#define SCHEMA_IfcMaterialLayerSet_LayerSetName_IS_OPTIONAL
+#define SCHEMA_IfcMaterialLayerSet_HAS_Description
+#define SCHEMA_IfcMaterialLayerSet_Description_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMaterialLayerSetUsage
+#define SCHEMA_IfcMaterialLayerSetUsage_HAS_ForLayerSet
+#define SCHEMA_IfcMaterialLayerSetUsage_HAS_LayerSetDirection
+#define SCHEMA_IfcMaterialLayerSetUsage_HAS_DirectionSense
+#define SCHEMA_IfcMaterialLayerSetUsage_HAS_OffsetFromReferenceLine
+#define SCHEMA_IfcMaterialLayerSetUsage_HAS_ReferenceExtent
+#define SCHEMA_IfcMaterialLayerSetUsage_ReferenceExtent_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMaterialLayerWithOffsets
+#define SCHEMA_IfcMaterialLayerWithOffsets_HAS_OffsetDirection
+#define SCHEMA_IfcMaterialLayerWithOffsets_HAS_OffsetValues
+#define SCHEMA_HAS_IfcMaterialList
+#define SCHEMA_IfcMaterialList_HAS_Materials
+#define SCHEMA_HAS_IfcMaterialProfile
+#define SCHEMA_IfcMaterialProfile_HAS_Name
+#define SCHEMA_IfcMaterialProfile_Name_IS_OPTIONAL
+#define SCHEMA_IfcMaterialProfile_HAS_Description
+#define SCHEMA_IfcMaterialProfile_Description_IS_OPTIONAL
+#define SCHEMA_IfcMaterialProfile_HAS_Material
+#define SCHEMA_IfcMaterialProfile_Material_IS_OPTIONAL
+#define SCHEMA_IfcMaterialProfile_HAS_Profile
+#define SCHEMA_IfcMaterialProfile_HAS_Priority
+#define SCHEMA_IfcMaterialProfile_Priority_IS_OPTIONAL
+#define SCHEMA_IfcMaterialProfile_HAS_Category
+#define SCHEMA_IfcMaterialProfile_Category_IS_OPTIONAL
+#define SCHEMA_IfcMaterialProfile_HAS_ToMaterialProfileSet
+#define SCHEMA_HAS_IfcMaterialProfileSet
+#define SCHEMA_IfcMaterialProfileSet_HAS_Name
+#define SCHEMA_IfcMaterialProfileSet_Name_IS_OPTIONAL
+#define SCHEMA_IfcMaterialProfileSet_HAS_Description
+#define SCHEMA_IfcMaterialProfileSet_Description_IS_OPTIONAL
+#define SCHEMA_IfcMaterialProfileSet_HAS_MaterialProfiles
+#define SCHEMA_IfcMaterialProfileSet_HAS_CompositeProfile
+#define SCHEMA_IfcMaterialProfileSet_CompositeProfile_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMaterialProfileSetUsage
+#define SCHEMA_IfcMaterialProfileSetUsage_HAS_ForProfileSet
+#define SCHEMA_IfcMaterialProfileSetUsage_HAS_CardinalPoint
+#define SCHEMA_IfcMaterialProfileSetUsage_CardinalPoint_IS_OPTIONAL
+#define SCHEMA_IfcMaterialProfileSetUsage_HAS_ReferenceExtent
+#define SCHEMA_IfcMaterialProfileSetUsage_ReferenceExtent_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMaterialProfileSetUsageTapering
+#define SCHEMA_IfcMaterialProfileSetUsageTapering_HAS_ForProfileEndSet
+#define SCHEMA_IfcMaterialProfileSetUsageTapering_HAS_CardinalEndPoint
+#define SCHEMA_IfcMaterialProfileSetUsageTapering_CardinalEndPoint_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMaterialProfileWithOffsets
+#define SCHEMA_IfcMaterialProfileWithOffsets_HAS_OffsetValues
+#define SCHEMA_HAS_IfcMaterialProperties
+#define SCHEMA_IfcMaterialProperties_HAS_Material
+#define SCHEMA_HAS_IfcMaterialRelationship
+#define SCHEMA_IfcMaterialRelationship_HAS_RelatingMaterial
+#define SCHEMA_IfcMaterialRelationship_HAS_RelatedMaterials
+#define SCHEMA_IfcMaterialRelationship_HAS_MaterialExpression
+#define SCHEMA_IfcMaterialRelationship_MaterialExpression_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMaterialUsageDefinition
+#define SCHEMA_IfcMaterialUsageDefinition_HAS_AssociatedTo
+#define SCHEMA_HAS_IfcMeasureWithUnit
+#define SCHEMA_IfcMeasureWithUnit_HAS_ValueComponent
+#define SCHEMA_IfcMeasureWithUnit_HAS_UnitComponent
+#define SCHEMA_HAS_IfcMechanicalFastener
+#define SCHEMA_IfcMechanicalFastener_HAS_NominalDiameter
+#define SCHEMA_IfcMechanicalFastener_NominalDiameter_IS_OPTIONAL
+#define SCHEMA_IfcMechanicalFastener_HAS_NominalLength
+#define SCHEMA_IfcMechanicalFastener_NominalLength_IS_OPTIONAL
+#define SCHEMA_IfcMechanicalFastener_HAS_PredefinedType
+#define SCHEMA_IfcMechanicalFastener_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMechanicalFastenerType
+#define SCHEMA_IfcMechanicalFastenerType_HAS_PredefinedType
+#define SCHEMA_IfcMechanicalFastenerType_HAS_NominalDiameter
+#define SCHEMA_IfcMechanicalFastenerType_NominalDiameter_IS_OPTIONAL
+#define SCHEMA_IfcMechanicalFastenerType_HAS_NominalLength
+#define SCHEMA_IfcMechanicalFastenerType_NominalLength_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMedicalDevice
+#define SCHEMA_IfcMedicalDevice_HAS_PredefinedType
+#define SCHEMA_IfcMedicalDevice_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMedicalDeviceType
+#define SCHEMA_IfcMedicalDeviceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcMember
+#define SCHEMA_IfcMember_HAS_PredefinedType
+#define SCHEMA_IfcMember_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMemberType
+#define SCHEMA_IfcMemberType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcMetric
+#define SCHEMA_IfcMetric_HAS_Benchmark
+#define SCHEMA_IfcMetric_HAS_ValueSource
+#define SCHEMA_IfcMetric_ValueSource_IS_OPTIONAL
+#define SCHEMA_IfcMetric_HAS_DataValue
+#define SCHEMA_IfcMetric_DataValue_IS_OPTIONAL
+#define SCHEMA_IfcMetric_HAS_ReferencePath
+#define SCHEMA_IfcMetric_ReferencePath_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMirroredProfileDef
+#define SCHEMA_HAS_IfcMobileTelecommunicationsAppliance
+#define SCHEMA_IfcMobileTelecommunicationsAppliance_HAS_PredefinedType
+#define SCHEMA_IfcMobileTelecommunicationsAppliance_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMobileTelecommunicationsApplianceType
+#define SCHEMA_IfcMobileTelecommunicationsApplianceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcMonetaryUnit
+#define SCHEMA_IfcMonetaryUnit_HAS_Currency
+#define SCHEMA_HAS_IfcMooringDevice
+#define SCHEMA_IfcMooringDevice_HAS_PredefinedType
+#define SCHEMA_IfcMooringDevice_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMooringDeviceType
+#define SCHEMA_IfcMooringDeviceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcMotorConnection
+#define SCHEMA_IfcMotorConnection_HAS_PredefinedType
+#define SCHEMA_IfcMotorConnection_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcMotorConnectionType
+#define SCHEMA_IfcMotorConnectionType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcNamedUnit
+#define SCHEMA_IfcNamedUnit_HAS_Dimensions
+#define SCHEMA_IfcNamedUnit_HAS_UnitType
+#define SCHEMA_HAS_IfcNavigationElement
+#define SCHEMA_IfcNavigationElement_HAS_PredefinedType
+#define SCHEMA_IfcNavigationElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcNavigationElementType
+#define SCHEMA_IfcNavigationElementType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcObject
+#define SCHEMA_IfcObject_HAS_ObjectType
+#define SCHEMA_IfcObject_ObjectType_IS_OPTIONAL
+#define SCHEMA_IfcObject_HAS_IsDeclaredBy
+#define SCHEMA_IfcObject_HAS_Declares
+#define SCHEMA_IfcObject_HAS_IsTypedBy
+#define SCHEMA_IfcObject_HAS_IsDefinedBy
+#define SCHEMA_HAS_IfcObjectDefinition
+#define SCHEMA_IfcObjectDefinition_HAS_HasAssignments
+#define SCHEMA_IfcObjectDefinition_HAS_Nests
+#define SCHEMA_IfcObjectDefinition_HAS_IsNestedBy
+#define SCHEMA_IfcObjectDefinition_HAS_HasContext
+#define SCHEMA_IfcObjectDefinition_HAS_IsDecomposedBy
+#define SCHEMA_IfcObjectDefinition_HAS_Decomposes
+#define SCHEMA_IfcObjectDefinition_HAS_HasAssociations
+#define SCHEMA_HAS_IfcObjectPlacement
+#define SCHEMA_IfcObjectPlacement_HAS_PlacementRelTo
+#define SCHEMA_IfcObjectPlacement_PlacementRelTo_IS_OPTIONAL
+#define SCHEMA_IfcObjectPlacement_HAS_PlacesObject
+#define SCHEMA_IfcObjectPlacement_HAS_ReferencedByPlacements
+#define SCHEMA_HAS_IfcObjective
+#define SCHEMA_IfcObjective_HAS_BenchmarkValues
+#define SCHEMA_IfcObjective_BenchmarkValues_IS_OPTIONAL
+#define SCHEMA_IfcObjective_HAS_LogicalAggregator
+#define SCHEMA_IfcObjective_LogicalAggregator_IS_OPTIONAL
+#define SCHEMA_IfcObjective_HAS_ObjectiveQualifier
+#define SCHEMA_IfcObjective_HAS_UserDefinedQualifier
+#define SCHEMA_IfcObjective_UserDefinedQualifier_IS_OPTIONAL
+#define SCHEMA_HAS_IfcOccupant
+#define SCHEMA_IfcOccupant_HAS_PredefinedType
+#define SCHEMA_IfcOccupant_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcOffsetCurve
+#define SCHEMA_IfcOffsetCurve_HAS_BasisCurve
+#define SCHEMA_HAS_IfcOffsetCurve2D
+#define SCHEMA_IfcOffsetCurve2D_HAS_Distance
+#define SCHEMA_IfcOffsetCurve2D_HAS_SelfIntersect
+#define SCHEMA_HAS_IfcOffsetCurve3D
+#define SCHEMA_IfcOffsetCurve3D_HAS_Distance
+#define SCHEMA_IfcOffsetCurve3D_HAS_SelfIntersect
+#define SCHEMA_IfcOffsetCurve3D_HAS_RefDirection
+#define SCHEMA_HAS_IfcOffsetCurveByDistances
+#define SCHEMA_IfcOffsetCurveByDistances_HAS_OffsetValues
+#define SCHEMA_IfcOffsetCurveByDistances_HAS_Tag
+#define SCHEMA_IfcOffsetCurveByDistances_Tag_IS_OPTIONAL
+#define SCHEMA_HAS_IfcOpenCrossProfileDef
+#define SCHEMA_IfcOpenCrossProfileDef_HAS_HorizontalWidths
+#define SCHEMA_IfcOpenCrossProfileDef_HAS_Widths
+#define SCHEMA_IfcOpenCrossProfileDef_HAS_Slopes
+#define SCHEMA_IfcOpenCrossProfileDef_HAS_Tags
+#define SCHEMA_IfcOpenCrossProfileDef_Tags_IS_OPTIONAL
+#define SCHEMA_IfcOpenCrossProfileDef_HAS_OffsetPoint
+#define SCHEMA_IfcOpenCrossProfileDef_OffsetPoint_IS_OPTIONAL
+#define SCHEMA_HAS_IfcOpenShell
+#define SCHEMA_HAS_IfcOpeningElement
+#define SCHEMA_IfcOpeningElement_HAS_PredefinedType
+#define SCHEMA_IfcOpeningElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcOpeningElement_HAS_HasFillings
+#define SCHEMA_HAS_IfcOrganization
+#define SCHEMA_IfcOrganization_HAS_Identification
+#define SCHEMA_IfcOrganization_Identification_IS_OPTIONAL
+#define SCHEMA_IfcOrganization_HAS_Name
+#define SCHEMA_IfcOrganization_HAS_Description
+#define SCHEMA_IfcOrganization_Description_IS_OPTIONAL
+#define SCHEMA_IfcOrganization_HAS_Roles
+#define SCHEMA_IfcOrganization_Roles_IS_OPTIONAL
+#define SCHEMA_IfcOrganization_HAS_Addresses
+#define SCHEMA_IfcOrganization_Addresses_IS_OPTIONAL
+#define SCHEMA_IfcOrganization_HAS_IsRelatedBy
+#define SCHEMA_IfcOrganization_HAS_Relates
+#define SCHEMA_IfcOrganization_HAS_Engages
+#define SCHEMA_HAS_IfcOrganizationRelationship
+#define SCHEMA_IfcOrganizationRelationship_HAS_RelatingOrganization
+#define SCHEMA_IfcOrganizationRelationship_HAS_RelatedOrganizations
+#define SCHEMA_HAS_IfcOrientedEdge
+#define SCHEMA_IfcOrientedEdge_HAS_EdgeElement
+#define SCHEMA_IfcOrientedEdge_HAS_Orientation
+#define SCHEMA_HAS_IfcOuterBoundaryCurve
+#define SCHEMA_HAS_IfcOutlet
+#define SCHEMA_IfcOutlet_HAS_PredefinedType
+#define SCHEMA_IfcOutlet_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcOutletType
+#define SCHEMA_IfcOutletType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcOwnerHistory
+#define SCHEMA_IfcOwnerHistory_HAS_OwningUser
+#define SCHEMA_IfcOwnerHistory_HAS_OwningApplication
+#define SCHEMA_IfcOwnerHistory_HAS_State
+#define SCHEMA_IfcOwnerHistory_State_IS_OPTIONAL
+#define SCHEMA_IfcOwnerHistory_HAS_ChangeAction
+#define SCHEMA_IfcOwnerHistory_ChangeAction_IS_OPTIONAL
+#define SCHEMA_IfcOwnerHistory_HAS_LastModifiedDate
+#define SCHEMA_IfcOwnerHistory_LastModifiedDate_IS_OPTIONAL
+#define SCHEMA_IfcOwnerHistory_HAS_LastModifyingUser
+#define SCHEMA_IfcOwnerHistory_LastModifyingUser_IS_OPTIONAL
+#define SCHEMA_IfcOwnerHistory_HAS_LastModifyingApplication
+#define SCHEMA_IfcOwnerHistory_LastModifyingApplication_IS_OPTIONAL
+#define SCHEMA_IfcOwnerHistory_HAS_CreationDate
+#define SCHEMA_HAS_IfcParameterizedProfileDef
+#define SCHEMA_IfcParameterizedProfileDef_HAS_Position
+#define SCHEMA_IfcParameterizedProfileDef_Position_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPath
+#define SCHEMA_IfcPath_HAS_EdgeList
+#define SCHEMA_HAS_IfcPavement
+#define SCHEMA_IfcPavement_HAS_PredefinedType
+#define SCHEMA_IfcPavement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPavementType
+#define SCHEMA_IfcPavementType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcPcurve
+#define SCHEMA_IfcPcurve_HAS_BasisSurface
+#define SCHEMA_IfcPcurve_HAS_ReferenceCurve
+#define SCHEMA_HAS_IfcPerformanceHistory
+#define SCHEMA_IfcPerformanceHistory_HAS_LifeCyclePhase
+#define SCHEMA_IfcPerformanceHistory_HAS_PredefinedType
+#define SCHEMA_IfcPerformanceHistory_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPermeableCoveringProperties
+#define SCHEMA_IfcPermeableCoveringProperties_HAS_OperationType
+#define SCHEMA_IfcPermeableCoveringProperties_HAS_PanelPosition
+#define SCHEMA_IfcPermeableCoveringProperties_HAS_FrameDepth
+#define SCHEMA_IfcPermeableCoveringProperties_FrameDepth_IS_OPTIONAL
+#define SCHEMA_IfcPermeableCoveringProperties_HAS_FrameThickness
+#define SCHEMA_IfcPermeableCoveringProperties_FrameThickness_IS_OPTIONAL
+#define SCHEMA_IfcPermeableCoveringProperties_HAS_ShapeAspectStyle
+#define SCHEMA_IfcPermeableCoveringProperties_ShapeAspectStyle_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPermit
+#define SCHEMA_IfcPermit_HAS_PredefinedType
+#define SCHEMA_IfcPermit_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcPermit_HAS_Status
+#define SCHEMA_IfcPermit_Status_IS_OPTIONAL
+#define SCHEMA_IfcPermit_HAS_LongDescription
+#define SCHEMA_IfcPermit_LongDescription_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPerson
+#define SCHEMA_IfcPerson_HAS_Identification
+#define SCHEMA_IfcPerson_Identification_IS_OPTIONAL
+#define SCHEMA_IfcPerson_HAS_FamilyName
+#define SCHEMA_IfcPerson_FamilyName_IS_OPTIONAL
+#define SCHEMA_IfcPerson_HAS_GivenName
+#define SCHEMA_IfcPerson_GivenName_IS_OPTIONAL
+#define SCHEMA_IfcPerson_HAS_MiddleNames
+#define SCHEMA_IfcPerson_MiddleNames_IS_OPTIONAL
+#define SCHEMA_IfcPerson_HAS_PrefixTitles
+#define SCHEMA_IfcPerson_PrefixTitles_IS_OPTIONAL
+#define SCHEMA_IfcPerson_HAS_SuffixTitles
+#define SCHEMA_IfcPerson_SuffixTitles_IS_OPTIONAL
+#define SCHEMA_IfcPerson_HAS_Roles
+#define SCHEMA_IfcPerson_Roles_IS_OPTIONAL
+#define SCHEMA_IfcPerson_HAS_Addresses
+#define SCHEMA_IfcPerson_Addresses_IS_OPTIONAL
+#define SCHEMA_IfcPerson_HAS_EngagedIn
+#define SCHEMA_HAS_IfcPersonAndOrganization
+#define SCHEMA_IfcPersonAndOrganization_HAS_ThePerson
+#define SCHEMA_IfcPersonAndOrganization_HAS_TheOrganization
+#define SCHEMA_IfcPersonAndOrganization_HAS_Roles
+#define SCHEMA_IfcPersonAndOrganization_Roles_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPhysicalComplexQuantity
+#define SCHEMA_IfcPhysicalComplexQuantity_HAS_HasQuantities
+#define SCHEMA_IfcPhysicalComplexQuantity_HAS_Discrimination
+#define SCHEMA_IfcPhysicalComplexQuantity_HAS_Quality
+#define SCHEMA_IfcPhysicalComplexQuantity_Quality_IS_OPTIONAL
+#define SCHEMA_IfcPhysicalComplexQuantity_HAS_Usage
+#define SCHEMA_IfcPhysicalComplexQuantity_Usage_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPhysicalQuantity
+#define SCHEMA_IfcPhysicalQuantity_HAS_Name
+#define SCHEMA_IfcPhysicalQuantity_HAS_Description
+#define SCHEMA_IfcPhysicalQuantity_Description_IS_OPTIONAL
+#define SCHEMA_IfcPhysicalQuantity_HAS_HasExternalReferences
+#define SCHEMA_IfcPhysicalQuantity_HAS_PartOfComplex
+#define SCHEMA_HAS_IfcPhysicalSimpleQuantity
+#define SCHEMA_IfcPhysicalSimpleQuantity_HAS_Unit
+#define SCHEMA_IfcPhysicalSimpleQuantity_Unit_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPile
+#define SCHEMA_IfcPile_HAS_PredefinedType
+#define SCHEMA_IfcPile_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcPile_HAS_ConstructionType
+#define SCHEMA_IfcPile_ConstructionType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPileType
+#define SCHEMA_IfcPileType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcPipeFitting
+#define SCHEMA_IfcPipeFitting_HAS_PredefinedType
+#define SCHEMA_IfcPipeFitting_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPipeFittingType
+#define SCHEMA_IfcPipeFittingType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcPipeSegment
+#define SCHEMA_IfcPipeSegment_HAS_PredefinedType
+#define SCHEMA_IfcPipeSegment_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPipeSegmentType
+#define SCHEMA_IfcPipeSegmentType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcPixelTexture
+#define SCHEMA_IfcPixelTexture_HAS_Width
+#define SCHEMA_IfcPixelTexture_HAS_Height
+#define SCHEMA_IfcPixelTexture_HAS_ColourComponents
+#define SCHEMA_IfcPixelTexture_HAS_Pixel
+#define SCHEMA_HAS_IfcPlacement
+#define SCHEMA_IfcPlacement_HAS_Location
+#define SCHEMA_HAS_IfcPlanarBox
+#define SCHEMA_IfcPlanarBox_HAS_Placement
+#define SCHEMA_HAS_IfcPlanarExtent
+#define SCHEMA_IfcPlanarExtent_HAS_SizeInX
+#define SCHEMA_IfcPlanarExtent_HAS_SizeInY
+#define SCHEMA_HAS_IfcPlane
+#define SCHEMA_HAS_IfcPlate
+#define SCHEMA_IfcPlate_HAS_PredefinedType
+#define SCHEMA_IfcPlate_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPlateType
+#define SCHEMA_IfcPlateType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcPoint
+#define SCHEMA_HAS_IfcPointByDistanceExpression
+#define SCHEMA_IfcPointByDistanceExpression_HAS_DistanceAlong
+#define SCHEMA_IfcPointByDistanceExpression_HAS_OffsetLateral
+#define SCHEMA_IfcPointByDistanceExpression_OffsetLateral_IS_OPTIONAL
+#define SCHEMA_IfcPointByDistanceExpression_HAS_OffsetVertical
+#define SCHEMA_IfcPointByDistanceExpression_OffsetVertical_IS_OPTIONAL
+#define SCHEMA_IfcPointByDistanceExpression_HAS_OffsetLongitudinal
+#define SCHEMA_IfcPointByDistanceExpression_OffsetLongitudinal_IS_OPTIONAL
+#define SCHEMA_IfcPointByDistanceExpression_HAS_BasisCurve
+#define SCHEMA_HAS_IfcPointOnCurve
+#define SCHEMA_IfcPointOnCurve_HAS_BasisCurve
+#define SCHEMA_IfcPointOnCurve_HAS_PointParameter
+#define SCHEMA_HAS_IfcPointOnSurface
+#define SCHEMA_IfcPointOnSurface_HAS_BasisSurface
+#define SCHEMA_IfcPointOnSurface_HAS_PointParameterU
+#define SCHEMA_IfcPointOnSurface_HAS_PointParameterV
+#define SCHEMA_HAS_IfcPolyLoop
+#define SCHEMA_IfcPolyLoop_HAS_Polygon
+#define SCHEMA_HAS_IfcPolygonalBoundedHalfSpace
+#define SCHEMA_IfcPolygonalBoundedHalfSpace_HAS_Position
+#define SCHEMA_IfcPolygonalBoundedHalfSpace_HAS_PolygonalBoundary
+#define SCHEMA_HAS_IfcPolygonalFaceSet
+#define SCHEMA_IfcPolygonalFaceSet_HAS_Closed
+#define SCHEMA_IfcPolygonalFaceSet_Closed_IS_OPTIONAL
+#define SCHEMA_IfcPolygonalFaceSet_HAS_Faces
+#define SCHEMA_IfcPolygonalFaceSet_HAS_PnIndex
+#define SCHEMA_IfcPolygonalFaceSet_PnIndex_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPolyline
+#define SCHEMA_IfcPolyline_HAS_Points
+#define SCHEMA_HAS_IfcPolynomialCurve
+#define SCHEMA_IfcPolynomialCurve_HAS_Position
+#define SCHEMA_IfcPolynomialCurve_HAS_CoefficientsX
+#define SCHEMA_IfcPolynomialCurve_CoefficientsX_IS_OPTIONAL
+#define SCHEMA_IfcPolynomialCurve_HAS_CoefficientsY
+#define SCHEMA_IfcPolynomialCurve_CoefficientsY_IS_OPTIONAL
+#define SCHEMA_IfcPolynomialCurve_HAS_CoefficientsZ
+#define SCHEMA_IfcPolynomialCurve_CoefficientsZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPort
+#define SCHEMA_IfcPort_HAS_ContainedIn
+#define SCHEMA_IfcPort_HAS_ConnectedFrom
+#define SCHEMA_IfcPort_HAS_ConnectedTo
+#define SCHEMA_HAS_IfcPositioningElement
+#define SCHEMA_IfcPositioningElement_HAS_ContainedInStructure
+#define SCHEMA_IfcPositioningElement_HAS_Positions
+#define SCHEMA_HAS_IfcPostalAddress
+#define SCHEMA_IfcPostalAddress_HAS_InternalLocation
+#define SCHEMA_IfcPostalAddress_InternalLocation_IS_OPTIONAL
+#define SCHEMA_IfcPostalAddress_HAS_AddressLines
+#define SCHEMA_IfcPostalAddress_AddressLines_IS_OPTIONAL
+#define SCHEMA_IfcPostalAddress_HAS_PostalBox
+#define SCHEMA_IfcPostalAddress_PostalBox_IS_OPTIONAL
+#define SCHEMA_IfcPostalAddress_HAS_Town
+#define SCHEMA_IfcPostalAddress_Town_IS_OPTIONAL
+#define SCHEMA_IfcPostalAddress_HAS_Region
+#define SCHEMA_IfcPostalAddress_Region_IS_OPTIONAL
+#define SCHEMA_IfcPostalAddress_HAS_PostalCode
+#define SCHEMA_IfcPostalAddress_PostalCode_IS_OPTIONAL
+#define SCHEMA_IfcPostalAddress_HAS_Country
+#define SCHEMA_IfcPostalAddress_Country_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPreDefinedColour
+#define SCHEMA_HAS_IfcPreDefinedCurveFont
+#define SCHEMA_HAS_IfcPreDefinedItem
+#define SCHEMA_IfcPreDefinedItem_HAS_Name
+#define SCHEMA_HAS_IfcPreDefinedProperties
+#define SCHEMA_HAS_IfcPreDefinedPropertySet
+#define SCHEMA_HAS_IfcPreDefinedTextFont
+#define SCHEMA_HAS_IfcPresentationItem
+#define SCHEMA_HAS_IfcPresentationLayerAssignment
+#define SCHEMA_IfcPresentationLayerAssignment_HAS_Name
+#define SCHEMA_IfcPresentationLayerAssignment_HAS_Description
+#define SCHEMA_IfcPresentationLayerAssignment_Description_IS_OPTIONAL
+#define SCHEMA_IfcPresentationLayerAssignment_HAS_AssignedItems
+#define SCHEMA_IfcPresentationLayerAssignment_HAS_Identifier
+#define SCHEMA_IfcPresentationLayerAssignment_Identifier_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPresentationLayerWithStyle
+#define SCHEMA_IfcPresentationLayerWithStyle_HAS_LayerOn
+#define SCHEMA_IfcPresentationLayerWithStyle_HAS_LayerFrozen
+#define SCHEMA_IfcPresentationLayerWithStyle_HAS_LayerBlocked
+#define SCHEMA_IfcPresentationLayerWithStyle_HAS_LayerStyles
+#define SCHEMA_HAS_IfcPresentationStyle
+#define SCHEMA_IfcPresentationStyle_HAS_Name
+#define SCHEMA_IfcPresentationStyle_Name_IS_OPTIONAL
+#define SCHEMA_HAS_IfcProcedure
+#define SCHEMA_IfcProcedure_HAS_PredefinedType
+#define SCHEMA_IfcProcedure_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcProcedureType
+#define SCHEMA_IfcProcedureType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcProcess
+#define SCHEMA_IfcProcess_HAS_Identification
+#define SCHEMA_IfcProcess_Identification_IS_OPTIONAL
+#define SCHEMA_IfcProcess_HAS_LongDescription
+#define SCHEMA_IfcProcess_LongDescription_IS_OPTIONAL
+#define SCHEMA_IfcProcess_HAS_IsPredecessorTo
+#define SCHEMA_IfcProcess_HAS_IsSuccessorFrom
+#define SCHEMA_IfcProcess_HAS_OperatesOn
+#define SCHEMA_HAS_IfcProduct
+#define SCHEMA_IfcProduct_HAS_ObjectPlacement
+#define SCHEMA_IfcProduct_ObjectPlacement_IS_OPTIONAL
+#define SCHEMA_IfcProduct_HAS_Representation
+#define SCHEMA_IfcProduct_Representation_IS_OPTIONAL
+#define SCHEMA_IfcProduct_HAS_ReferencedBy
+#define SCHEMA_IfcProduct_HAS_PositionedRelativeTo
+#define SCHEMA_IfcProduct_HAS_ReferencedInStructures
+#define SCHEMA_HAS_IfcProductDefinitionShape
+#define SCHEMA_IfcProductDefinitionShape_HAS_ShapeOfProduct
+#define SCHEMA_IfcProductDefinitionShape_HAS_HasShapeAspects
+#define SCHEMA_HAS_IfcProductRepresentation
+#define SCHEMA_IfcProductRepresentation_HAS_Name
+#define SCHEMA_IfcProductRepresentation_Name_IS_OPTIONAL
+#define SCHEMA_IfcProductRepresentation_HAS_Description
+#define SCHEMA_IfcProductRepresentation_Description_IS_OPTIONAL
+#define SCHEMA_IfcProductRepresentation_HAS_Representations
+#define SCHEMA_HAS_IfcProfileDef
+#define SCHEMA_IfcProfileDef_HAS_ProfileType
+#define SCHEMA_IfcProfileDef_HAS_ProfileName
+#define SCHEMA_IfcProfileDef_ProfileName_IS_OPTIONAL
+#define SCHEMA_IfcProfileDef_HAS_HasExternalReference
+#define SCHEMA_IfcProfileDef_HAS_HasProperties
+#define SCHEMA_HAS_IfcProfileProperties
+#define SCHEMA_IfcProfileProperties_HAS_ProfileDefinition
+#define SCHEMA_HAS_IfcProject
+#define SCHEMA_HAS_IfcProjectLibrary
+#define SCHEMA_HAS_IfcProjectOrder
+#define SCHEMA_IfcProjectOrder_HAS_PredefinedType
+#define SCHEMA_IfcProjectOrder_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcProjectOrder_HAS_Status
+#define SCHEMA_IfcProjectOrder_Status_IS_OPTIONAL
+#define SCHEMA_IfcProjectOrder_HAS_LongDescription
+#define SCHEMA_IfcProjectOrder_LongDescription_IS_OPTIONAL
+#define SCHEMA_HAS_IfcProjectedCRS
+#define SCHEMA_IfcProjectedCRS_HAS_GeodeticDatum
+#define SCHEMA_IfcProjectedCRS_GeodeticDatum_IS_OPTIONAL
+#define SCHEMA_IfcProjectedCRS_HAS_VerticalDatum
+#define SCHEMA_IfcProjectedCRS_VerticalDatum_IS_OPTIONAL
+#define SCHEMA_IfcProjectedCRS_HAS_MapProjection
+#define SCHEMA_IfcProjectedCRS_MapProjection_IS_OPTIONAL
+#define SCHEMA_IfcProjectedCRS_HAS_MapZone
+#define SCHEMA_IfcProjectedCRS_MapZone_IS_OPTIONAL
+#define SCHEMA_IfcProjectedCRS_HAS_MapUnit
+#define SCHEMA_IfcProjectedCRS_MapUnit_IS_OPTIONAL
+#define SCHEMA_HAS_IfcProjectionElement
+#define SCHEMA_IfcProjectionElement_HAS_PredefinedType
+#define SCHEMA_IfcProjectionElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcProperty
+#define SCHEMA_IfcProperty_HAS_Name
+#define SCHEMA_IfcProperty_HAS_Specification
+#define SCHEMA_IfcProperty_Specification_IS_OPTIONAL
+#define SCHEMA_IfcProperty_HAS_PartOfPset
+#define SCHEMA_IfcProperty_HAS_PropertyForDependance
+#define SCHEMA_IfcProperty_HAS_PropertyDependsOn
+#define SCHEMA_IfcProperty_HAS_PartOfComplex
+#define SCHEMA_IfcProperty_HAS_HasConstraints
+#define SCHEMA_IfcProperty_HAS_HasApprovals
+#define SCHEMA_HAS_IfcPropertyAbstraction
+#define SCHEMA_IfcPropertyAbstraction_HAS_HasExternalReferences
+#define SCHEMA_HAS_IfcPropertyBoundedValue
+#define SCHEMA_IfcPropertyBoundedValue_HAS_UpperBoundValue
+#define SCHEMA_IfcPropertyBoundedValue_UpperBoundValue_IS_OPTIONAL
+#define SCHEMA_IfcPropertyBoundedValue_HAS_LowerBoundValue
+#define SCHEMA_IfcPropertyBoundedValue_LowerBoundValue_IS_OPTIONAL
+#define SCHEMA_IfcPropertyBoundedValue_HAS_Unit
+#define SCHEMA_IfcPropertyBoundedValue_Unit_IS_OPTIONAL
+#define SCHEMA_IfcPropertyBoundedValue_HAS_SetPointValue
+#define SCHEMA_IfcPropertyBoundedValue_SetPointValue_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPropertyDefinition
+#define SCHEMA_IfcPropertyDefinition_HAS_HasContext
+#define SCHEMA_IfcPropertyDefinition_HAS_HasAssociations
+#define SCHEMA_HAS_IfcPropertyDependencyRelationship
+#define SCHEMA_IfcPropertyDependencyRelationship_HAS_DependingProperty
+#define SCHEMA_IfcPropertyDependencyRelationship_HAS_DependantProperty
+#define SCHEMA_IfcPropertyDependencyRelationship_HAS_Expression
+#define SCHEMA_IfcPropertyDependencyRelationship_Expression_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPropertyEnumeratedValue
+#define SCHEMA_IfcPropertyEnumeratedValue_HAS_EnumerationValues
+#define SCHEMA_IfcPropertyEnumeratedValue_EnumerationValues_IS_OPTIONAL
+#define SCHEMA_IfcPropertyEnumeratedValue_HAS_EnumerationReference
+#define SCHEMA_IfcPropertyEnumeratedValue_EnumerationReference_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPropertyEnumeration
+#define SCHEMA_IfcPropertyEnumeration_HAS_Name
+#define SCHEMA_IfcPropertyEnumeration_HAS_EnumerationValues
+#define SCHEMA_IfcPropertyEnumeration_HAS_Unit
+#define SCHEMA_IfcPropertyEnumeration_Unit_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPropertyListValue
+#define SCHEMA_IfcPropertyListValue_HAS_ListValues
+#define SCHEMA_IfcPropertyListValue_ListValues_IS_OPTIONAL
+#define SCHEMA_IfcPropertyListValue_HAS_Unit
+#define SCHEMA_IfcPropertyListValue_Unit_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPropertyReferenceValue
+#define SCHEMA_IfcPropertyReferenceValue_HAS_UsageName
+#define SCHEMA_IfcPropertyReferenceValue_UsageName_IS_OPTIONAL
+#define SCHEMA_IfcPropertyReferenceValue_HAS_PropertyReference
+#define SCHEMA_IfcPropertyReferenceValue_PropertyReference_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPropertySet
+#define SCHEMA_IfcPropertySet_HAS_HasProperties
+#define SCHEMA_HAS_IfcPropertySetDefinition
+#define SCHEMA_IfcPropertySetDefinition_HAS_DefinesType
+#define SCHEMA_IfcPropertySetDefinition_HAS_IsDefinedBy
+#define SCHEMA_IfcPropertySetDefinition_HAS_DefinesOccurrence
+#define SCHEMA_HAS_IfcPropertySetTemplate
+#define SCHEMA_IfcPropertySetTemplate_HAS_TemplateType
+#define SCHEMA_IfcPropertySetTemplate_TemplateType_IS_OPTIONAL
+#define SCHEMA_IfcPropertySetTemplate_HAS_ApplicableEntity
+#define SCHEMA_IfcPropertySetTemplate_ApplicableEntity_IS_OPTIONAL
+#define SCHEMA_IfcPropertySetTemplate_HAS_HasPropertyTemplates
+#define SCHEMA_IfcPropertySetTemplate_HAS_Defines
+#define SCHEMA_HAS_IfcPropertySingleValue
+#define SCHEMA_IfcPropertySingleValue_HAS_NominalValue
+#define SCHEMA_IfcPropertySingleValue_NominalValue_IS_OPTIONAL
+#define SCHEMA_IfcPropertySingleValue_HAS_Unit
+#define SCHEMA_IfcPropertySingleValue_Unit_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPropertyTableValue
+#define SCHEMA_IfcPropertyTableValue_HAS_DefiningValues
+#define SCHEMA_IfcPropertyTableValue_DefiningValues_IS_OPTIONAL
+#define SCHEMA_IfcPropertyTableValue_HAS_DefinedValues
+#define SCHEMA_IfcPropertyTableValue_DefinedValues_IS_OPTIONAL
+#define SCHEMA_IfcPropertyTableValue_HAS_Expression
+#define SCHEMA_IfcPropertyTableValue_Expression_IS_OPTIONAL
+#define SCHEMA_IfcPropertyTableValue_HAS_DefiningUnit
+#define SCHEMA_IfcPropertyTableValue_DefiningUnit_IS_OPTIONAL
+#define SCHEMA_IfcPropertyTableValue_HAS_DefinedUnit
+#define SCHEMA_IfcPropertyTableValue_DefinedUnit_IS_OPTIONAL
+#define SCHEMA_IfcPropertyTableValue_HAS_CurveInterpolation
+#define SCHEMA_IfcPropertyTableValue_CurveInterpolation_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPropertyTemplate
+#define SCHEMA_IfcPropertyTemplate_HAS_PartOfComplexTemplate
+#define SCHEMA_IfcPropertyTemplate_HAS_PartOfPsetTemplate
+#define SCHEMA_HAS_IfcPropertyTemplateDefinition
+#define SCHEMA_HAS_IfcProtectiveDevice
+#define SCHEMA_IfcProtectiveDevice_HAS_PredefinedType
+#define SCHEMA_IfcProtectiveDevice_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcProtectiveDeviceTrippingUnit
+#define SCHEMA_IfcProtectiveDeviceTrippingUnit_HAS_PredefinedType
+#define SCHEMA_IfcProtectiveDeviceTrippingUnit_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcProtectiveDeviceTrippingUnitType
+#define SCHEMA_IfcProtectiveDeviceTrippingUnitType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcProtectiveDeviceType
+#define SCHEMA_IfcProtectiveDeviceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcPump
+#define SCHEMA_IfcPump_HAS_PredefinedType
+#define SCHEMA_IfcPump_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcPumpType
+#define SCHEMA_IfcPumpType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcQuantityArea
+#define SCHEMA_IfcQuantityArea_HAS_AreaValue
+#define SCHEMA_IfcQuantityArea_HAS_Formula
+#define SCHEMA_IfcQuantityArea_Formula_IS_OPTIONAL
+#define SCHEMA_HAS_IfcQuantityCount
+#define SCHEMA_IfcQuantityCount_HAS_CountValue
+#define SCHEMA_IfcQuantityCount_HAS_Formula
+#define SCHEMA_IfcQuantityCount_Formula_IS_OPTIONAL
+#define SCHEMA_HAS_IfcQuantityLength
+#define SCHEMA_IfcQuantityLength_HAS_LengthValue
+#define SCHEMA_IfcQuantityLength_HAS_Formula
+#define SCHEMA_IfcQuantityLength_Formula_IS_OPTIONAL
+#define SCHEMA_HAS_IfcQuantityNumber
+#define SCHEMA_IfcQuantityNumber_HAS_NumberValue
+#define SCHEMA_IfcQuantityNumber_HAS_Formula
+#define SCHEMA_IfcQuantityNumber_Formula_IS_OPTIONAL
+#define SCHEMA_HAS_IfcQuantitySet
+#define SCHEMA_HAS_IfcQuantityTime
+#define SCHEMA_IfcQuantityTime_HAS_TimeValue
+#define SCHEMA_IfcQuantityTime_HAS_Formula
+#define SCHEMA_IfcQuantityTime_Formula_IS_OPTIONAL
+#define SCHEMA_HAS_IfcQuantityVolume
+#define SCHEMA_IfcQuantityVolume_HAS_VolumeValue
+#define SCHEMA_IfcQuantityVolume_HAS_Formula
+#define SCHEMA_IfcQuantityVolume_Formula_IS_OPTIONAL
+#define SCHEMA_HAS_IfcQuantityWeight
+#define SCHEMA_IfcQuantityWeight_HAS_WeightValue
+#define SCHEMA_IfcQuantityWeight_HAS_Formula
+#define SCHEMA_IfcQuantityWeight_Formula_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRail
+#define SCHEMA_IfcRail_HAS_PredefinedType
+#define SCHEMA_IfcRail_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRailType
+#define SCHEMA_IfcRailType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcRailing
+#define SCHEMA_IfcRailing_HAS_PredefinedType
+#define SCHEMA_IfcRailing_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRailingType
+#define SCHEMA_IfcRailingType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcRailway
+#define SCHEMA_IfcRailway_HAS_PredefinedType
+#define SCHEMA_IfcRailway_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRailwayPart
+#define SCHEMA_IfcRailwayPart_HAS_PredefinedType
+#define SCHEMA_IfcRailwayPart_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRamp
+#define SCHEMA_IfcRamp_HAS_PredefinedType
+#define SCHEMA_IfcRamp_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRampFlight
+#define SCHEMA_IfcRampFlight_HAS_PredefinedType
+#define SCHEMA_IfcRampFlight_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRampFlightType
+#define SCHEMA_IfcRampFlightType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcRampType
+#define SCHEMA_IfcRampType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcRationalBSplineCurveWithKnots
+#define SCHEMA_IfcRationalBSplineCurveWithKnots_HAS_WeightsData
+#define SCHEMA_HAS_IfcRationalBSplineSurfaceWithKnots
+#define SCHEMA_IfcRationalBSplineSurfaceWithKnots_HAS_WeightsData
+#define SCHEMA_HAS_IfcRectangleHollowProfileDef
+#define SCHEMA_IfcRectangleHollowProfileDef_HAS_WallThickness
+#define SCHEMA_IfcRectangleHollowProfileDef_HAS_InnerFilletRadius
+#define SCHEMA_IfcRectangleHollowProfileDef_InnerFilletRadius_IS_OPTIONAL
+#define SCHEMA_IfcRectangleHollowProfileDef_HAS_OuterFilletRadius
+#define SCHEMA_IfcRectangleHollowProfileDef_OuterFilletRadius_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRectangleProfileDef
+#define SCHEMA_IfcRectangleProfileDef_HAS_XDim
+#define SCHEMA_IfcRectangleProfileDef_HAS_YDim
+#define SCHEMA_HAS_IfcRectangularPyramid
+#define SCHEMA_IfcRectangularPyramid_HAS_XLength
+#define SCHEMA_IfcRectangularPyramid_HAS_YLength
+#define SCHEMA_IfcRectangularPyramid_HAS_Height
+#define SCHEMA_HAS_IfcRectangularTrimmedSurface
+#define SCHEMA_IfcRectangularTrimmedSurface_HAS_BasisSurface
+#define SCHEMA_IfcRectangularTrimmedSurface_HAS_U1
+#define SCHEMA_IfcRectangularTrimmedSurface_HAS_V1
+#define SCHEMA_IfcRectangularTrimmedSurface_HAS_U2
+#define SCHEMA_IfcRectangularTrimmedSurface_HAS_V2
+#define SCHEMA_IfcRectangularTrimmedSurface_HAS_Usense
+#define SCHEMA_IfcRectangularTrimmedSurface_HAS_Vsense
+#define SCHEMA_HAS_IfcRecurrencePattern
+#define SCHEMA_IfcRecurrencePattern_HAS_RecurrenceType
+#define SCHEMA_IfcRecurrencePattern_HAS_DayComponent
+#define SCHEMA_IfcRecurrencePattern_DayComponent_IS_OPTIONAL
+#define SCHEMA_IfcRecurrencePattern_HAS_WeekdayComponent
+#define SCHEMA_IfcRecurrencePattern_WeekdayComponent_IS_OPTIONAL
+#define SCHEMA_IfcRecurrencePattern_HAS_MonthComponent
+#define SCHEMA_IfcRecurrencePattern_MonthComponent_IS_OPTIONAL
+#define SCHEMA_IfcRecurrencePattern_HAS_Position
+#define SCHEMA_IfcRecurrencePattern_Position_IS_OPTIONAL
+#define SCHEMA_IfcRecurrencePattern_HAS_Interval
+#define SCHEMA_IfcRecurrencePattern_Interval_IS_OPTIONAL
+#define SCHEMA_IfcRecurrencePattern_HAS_Occurrences
+#define SCHEMA_IfcRecurrencePattern_Occurrences_IS_OPTIONAL
+#define SCHEMA_IfcRecurrencePattern_HAS_TimePeriods
+#define SCHEMA_IfcRecurrencePattern_TimePeriods_IS_OPTIONAL
+#define SCHEMA_HAS_IfcReference
+#define SCHEMA_IfcReference_HAS_TypeIdentifier
+#define SCHEMA_IfcReference_TypeIdentifier_IS_OPTIONAL
+#define SCHEMA_IfcReference_HAS_AttributeIdentifier
+#define SCHEMA_IfcReference_AttributeIdentifier_IS_OPTIONAL
+#define SCHEMA_IfcReference_HAS_InstanceName
+#define SCHEMA_IfcReference_InstanceName_IS_OPTIONAL
+#define SCHEMA_IfcReference_HAS_ListPositions
+#define SCHEMA_IfcReference_ListPositions_IS_OPTIONAL
+#define SCHEMA_IfcReference_HAS_InnerReference
+#define SCHEMA_IfcReference_InnerReference_IS_OPTIONAL
+#define SCHEMA_HAS_IfcReferent
+#define SCHEMA_IfcReferent_HAS_PredefinedType
+#define SCHEMA_IfcReferent_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRegularTimeSeries
+#define SCHEMA_IfcRegularTimeSeries_HAS_TimeStep
+#define SCHEMA_IfcRegularTimeSeries_HAS_Values
+#define SCHEMA_HAS_IfcReinforcedSoil
+#define SCHEMA_IfcReinforcedSoil_HAS_PredefinedType
+#define SCHEMA_IfcReinforcedSoil_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcReinforcementBarProperties
+#define SCHEMA_IfcReinforcementBarProperties_HAS_TotalCrossSectionArea
+#define SCHEMA_IfcReinforcementBarProperties_HAS_SteelGrade
+#define SCHEMA_IfcReinforcementBarProperties_HAS_BarSurface
+#define SCHEMA_IfcReinforcementBarProperties_BarSurface_IS_OPTIONAL
+#define SCHEMA_IfcReinforcementBarProperties_HAS_EffectiveDepth
+#define SCHEMA_IfcReinforcementBarProperties_EffectiveDepth_IS_OPTIONAL
+#define SCHEMA_IfcReinforcementBarProperties_HAS_NominalBarDiameter
+#define SCHEMA_IfcReinforcementBarProperties_NominalBarDiameter_IS_OPTIONAL
+#define SCHEMA_IfcReinforcementBarProperties_HAS_BarCount
+#define SCHEMA_IfcReinforcementBarProperties_BarCount_IS_OPTIONAL
+#define SCHEMA_HAS_IfcReinforcementDefinitionProperties
+#define SCHEMA_IfcReinforcementDefinitionProperties_HAS_DefinitionType
+#define SCHEMA_IfcReinforcementDefinitionProperties_DefinitionType_IS_OPTIONAL
+#define SCHEMA_IfcReinforcementDefinitionProperties_HAS_ReinforcementSectionDefinitions
+#define SCHEMA_HAS_IfcReinforcingBar
+#define SCHEMA_IfcReinforcingBar_HAS_NominalDiameter
+#define SCHEMA_IfcReinforcingBar_NominalDiameter_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingBar_HAS_CrossSectionArea
+#define SCHEMA_IfcReinforcingBar_CrossSectionArea_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingBar_HAS_BarLength
+#define SCHEMA_IfcReinforcingBar_BarLength_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingBar_HAS_PredefinedType
+#define SCHEMA_IfcReinforcingBar_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingBar_HAS_BarSurface
+#define SCHEMA_IfcReinforcingBar_BarSurface_IS_OPTIONAL
+#define SCHEMA_HAS_IfcReinforcingBarType
+#define SCHEMA_IfcReinforcingBarType_HAS_PredefinedType
+#define SCHEMA_IfcReinforcingBarType_HAS_NominalDiameter
+#define SCHEMA_IfcReinforcingBarType_NominalDiameter_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingBarType_HAS_CrossSectionArea
+#define SCHEMA_IfcReinforcingBarType_CrossSectionArea_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingBarType_HAS_BarLength
+#define SCHEMA_IfcReinforcingBarType_BarLength_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingBarType_HAS_BarSurface
+#define SCHEMA_IfcReinforcingBarType_BarSurface_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingBarType_HAS_BendingShapeCode
+#define SCHEMA_IfcReinforcingBarType_BendingShapeCode_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingBarType_HAS_BendingParameters
+#define SCHEMA_IfcReinforcingBarType_BendingParameters_IS_OPTIONAL
+#define SCHEMA_HAS_IfcReinforcingElement
+#define SCHEMA_IfcReinforcingElement_HAS_SteelGrade
+#define SCHEMA_IfcReinforcingElement_SteelGrade_IS_OPTIONAL
+#define SCHEMA_HAS_IfcReinforcingElementType
+#define SCHEMA_HAS_IfcReinforcingMesh
+#define SCHEMA_IfcReinforcingMesh_HAS_MeshLength
+#define SCHEMA_IfcReinforcingMesh_MeshLength_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMesh_HAS_MeshWidth
+#define SCHEMA_IfcReinforcingMesh_MeshWidth_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMesh_HAS_LongitudinalBarNominalDiameter
+#define SCHEMA_IfcReinforcingMesh_LongitudinalBarNominalDiameter_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMesh_HAS_TransverseBarNominalDiameter
+#define SCHEMA_IfcReinforcingMesh_TransverseBarNominalDiameter_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMesh_HAS_LongitudinalBarCrossSectionArea
+#define SCHEMA_IfcReinforcingMesh_LongitudinalBarCrossSectionArea_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMesh_HAS_TransverseBarCrossSectionArea
+#define SCHEMA_IfcReinforcingMesh_TransverseBarCrossSectionArea_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMesh_HAS_LongitudinalBarSpacing
+#define SCHEMA_IfcReinforcingMesh_LongitudinalBarSpacing_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMesh_HAS_TransverseBarSpacing
+#define SCHEMA_IfcReinforcingMesh_TransverseBarSpacing_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMesh_HAS_PredefinedType
+#define SCHEMA_IfcReinforcingMesh_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcReinforcingMeshType
+#define SCHEMA_IfcReinforcingMeshType_HAS_PredefinedType
+#define SCHEMA_IfcReinforcingMeshType_HAS_MeshLength
+#define SCHEMA_IfcReinforcingMeshType_MeshLength_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMeshType_HAS_MeshWidth
+#define SCHEMA_IfcReinforcingMeshType_MeshWidth_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMeshType_HAS_LongitudinalBarNominalDiameter
+#define SCHEMA_IfcReinforcingMeshType_LongitudinalBarNominalDiameter_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMeshType_HAS_TransverseBarNominalDiameter
+#define SCHEMA_IfcReinforcingMeshType_TransverseBarNominalDiameter_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMeshType_HAS_LongitudinalBarCrossSectionArea
+#define SCHEMA_IfcReinforcingMeshType_LongitudinalBarCrossSectionArea_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMeshType_HAS_TransverseBarCrossSectionArea
+#define SCHEMA_IfcReinforcingMeshType_TransverseBarCrossSectionArea_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMeshType_HAS_LongitudinalBarSpacing
+#define SCHEMA_IfcReinforcingMeshType_LongitudinalBarSpacing_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMeshType_HAS_TransverseBarSpacing
+#define SCHEMA_IfcReinforcingMeshType_TransverseBarSpacing_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMeshType_HAS_BendingShapeCode
+#define SCHEMA_IfcReinforcingMeshType_BendingShapeCode_IS_OPTIONAL
+#define SCHEMA_IfcReinforcingMeshType_HAS_BendingParameters
+#define SCHEMA_IfcReinforcingMeshType_BendingParameters_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRelAdheresToElement
+#define SCHEMA_IfcRelAdheresToElement_HAS_RelatingElement
+#define SCHEMA_IfcRelAdheresToElement_HAS_RelatedSurfaceFeatures
+#define SCHEMA_HAS_IfcRelAggregates
+#define SCHEMA_IfcRelAggregates_HAS_RelatingObject
+#define SCHEMA_IfcRelAggregates_HAS_RelatedObjects
+#define SCHEMA_HAS_IfcRelAssigns
+#define SCHEMA_IfcRelAssigns_HAS_RelatedObjects
+#define SCHEMA_IfcRelAssigns_HAS_RelatedObjectsType
+#define SCHEMA_IfcRelAssigns_RelatedObjectsType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRelAssignsToActor
+#define SCHEMA_IfcRelAssignsToActor_HAS_RelatingActor
+#define SCHEMA_IfcRelAssignsToActor_HAS_ActingRole
+#define SCHEMA_IfcRelAssignsToActor_ActingRole_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRelAssignsToControl
+#define SCHEMA_IfcRelAssignsToControl_HAS_RelatingControl
+#define SCHEMA_HAS_IfcRelAssignsToGroup
+#define SCHEMA_IfcRelAssignsToGroup_HAS_RelatingGroup
+#define SCHEMA_HAS_IfcRelAssignsToGroupByFactor
+#define SCHEMA_IfcRelAssignsToGroupByFactor_HAS_Factor
+#define SCHEMA_HAS_IfcRelAssignsToProcess
+#define SCHEMA_IfcRelAssignsToProcess_HAS_RelatingProcess
+#define SCHEMA_IfcRelAssignsToProcess_HAS_QuantityInProcess
+#define SCHEMA_IfcRelAssignsToProcess_QuantityInProcess_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRelAssignsToProduct
+#define SCHEMA_IfcRelAssignsToProduct_HAS_RelatingProduct
+#define SCHEMA_HAS_IfcRelAssignsToResource
+#define SCHEMA_IfcRelAssignsToResource_HAS_RelatingResource
+#define SCHEMA_HAS_IfcRelAssociates
+#define SCHEMA_IfcRelAssociates_HAS_RelatedObjects
+#define SCHEMA_HAS_IfcRelAssociatesApproval
+#define SCHEMA_IfcRelAssociatesApproval_HAS_RelatingApproval
+#define SCHEMA_HAS_IfcRelAssociatesClassification
+#define SCHEMA_IfcRelAssociatesClassification_HAS_RelatingClassification
+#define SCHEMA_HAS_IfcRelAssociatesConstraint
+#define SCHEMA_IfcRelAssociatesConstraint_HAS_Intent
+#define SCHEMA_IfcRelAssociatesConstraint_Intent_IS_OPTIONAL
+#define SCHEMA_IfcRelAssociatesConstraint_HAS_RelatingConstraint
+#define SCHEMA_HAS_IfcRelAssociatesDocument
+#define SCHEMA_IfcRelAssociatesDocument_HAS_RelatingDocument
+#define SCHEMA_HAS_IfcRelAssociatesLibrary
+#define SCHEMA_IfcRelAssociatesLibrary_HAS_RelatingLibrary
+#define SCHEMA_HAS_IfcRelAssociatesMaterial
+#define SCHEMA_IfcRelAssociatesMaterial_HAS_RelatingMaterial
+#define SCHEMA_HAS_IfcRelAssociatesProfileDef
+#define SCHEMA_IfcRelAssociatesProfileDef_HAS_RelatingProfileDef
+#define SCHEMA_HAS_IfcRelConnects
+#define SCHEMA_HAS_IfcRelConnectsElements
+#define SCHEMA_IfcRelConnectsElements_HAS_ConnectionGeometry
+#define SCHEMA_IfcRelConnectsElements_ConnectionGeometry_IS_OPTIONAL
+#define SCHEMA_IfcRelConnectsElements_HAS_RelatingElement
+#define SCHEMA_IfcRelConnectsElements_HAS_RelatedElement
+#define SCHEMA_HAS_IfcRelConnectsPathElements
+#define SCHEMA_IfcRelConnectsPathElements_HAS_RelatingPriorities
+#define SCHEMA_IfcRelConnectsPathElements_HAS_RelatedPriorities
+#define SCHEMA_IfcRelConnectsPathElements_HAS_RelatedConnectionType
+#define SCHEMA_IfcRelConnectsPathElements_HAS_RelatingConnectionType
+#define SCHEMA_HAS_IfcRelConnectsPortToElement
+#define SCHEMA_IfcRelConnectsPortToElement_HAS_RelatingPort
+#define SCHEMA_IfcRelConnectsPortToElement_HAS_RelatedElement
+#define SCHEMA_HAS_IfcRelConnectsPorts
+#define SCHEMA_IfcRelConnectsPorts_HAS_RelatingPort
+#define SCHEMA_IfcRelConnectsPorts_HAS_RelatedPort
+#define SCHEMA_IfcRelConnectsPorts_HAS_RealizingElement
+#define SCHEMA_IfcRelConnectsPorts_RealizingElement_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRelConnectsStructuralActivity
+#define SCHEMA_IfcRelConnectsStructuralActivity_HAS_RelatingElement
+#define SCHEMA_IfcRelConnectsStructuralActivity_HAS_RelatedStructuralActivity
+#define SCHEMA_HAS_IfcRelConnectsStructuralMember
+#define SCHEMA_IfcRelConnectsStructuralMember_HAS_RelatingStructuralMember
+#define SCHEMA_IfcRelConnectsStructuralMember_HAS_RelatedStructuralConnection
+#define SCHEMA_IfcRelConnectsStructuralMember_HAS_AppliedCondition
+#define SCHEMA_IfcRelConnectsStructuralMember_AppliedCondition_IS_OPTIONAL
+#define SCHEMA_IfcRelConnectsStructuralMember_HAS_AdditionalConditions
+#define SCHEMA_IfcRelConnectsStructuralMember_AdditionalConditions_IS_OPTIONAL
+#define SCHEMA_IfcRelConnectsStructuralMember_HAS_SupportedLength
+#define SCHEMA_IfcRelConnectsStructuralMember_SupportedLength_IS_OPTIONAL
+#define SCHEMA_IfcRelConnectsStructuralMember_HAS_ConditionCoordinateSystem
+#define SCHEMA_IfcRelConnectsStructuralMember_ConditionCoordinateSystem_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRelConnectsWithEccentricity
+#define SCHEMA_IfcRelConnectsWithEccentricity_HAS_ConnectionConstraint
+#define SCHEMA_HAS_IfcRelConnectsWithRealizingElements
+#define SCHEMA_IfcRelConnectsWithRealizingElements_HAS_RealizingElements
+#define SCHEMA_IfcRelConnectsWithRealizingElements_HAS_ConnectionType
+#define SCHEMA_IfcRelConnectsWithRealizingElements_ConnectionType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRelContainedInSpatialStructure
+#define SCHEMA_IfcRelContainedInSpatialStructure_HAS_RelatedElements
+#define SCHEMA_IfcRelContainedInSpatialStructure_HAS_RelatingStructure
+#define SCHEMA_HAS_IfcRelCoversBldgElements
+#define SCHEMA_IfcRelCoversBldgElements_HAS_RelatingBuildingElement
+#define SCHEMA_IfcRelCoversBldgElements_HAS_RelatedCoverings
+#define SCHEMA_HAS_IfcRelCoversSpaces
+#define SCHEMA_IfcRelCoversSpaces_HAS_RelatingSpace
+#define SCHEMA_IfcRelCoversSpaces_HAS_RelatedCoverings
+#define SCHEMA_HAS_IfcRelDeclares
+#define SCHEMA_IfcRelDeclares_HAS_RelatingContext
+#define SCHEMA_IfcRelDeclares_HAS_RelatedDefinitions
+#define SCHEMA_HAS_IfcRelDecomposes
+#define SCHEMA_HAS_IfcRelDefines
+#define SCHEMA_HAS_IfcRelDefinesByObject
+#define SCHEMA_IfcRelDefinesByObject_HAS_RelatedObjects
+#define SCHEMA_IfcRelDefinesByObject_HAS_RelatingObject
+#define SCHEMA_HAS_IfcRelDefinesByProperties
+#define SCHEMA_IfcRelDefinesByProperties_HAS_RelatedObjects
+#define SCHEMA_IfcRelDefinesByProperties_HAS_RelatingPropertyDefinition
+#define SCHEMA_HAS_IfcRelDefinesByTemplate
+#define SCHEMA_IfcRelDefinesByTemplate_HAS_RelatedPropertySets
+#define SCHEMA_IfcRelDefinesByTemplate_HAS_RelatingTemplate
+#define SCHEMA_HAS_IfcRelDefinesByType
+#define SCHEMA_IfcRelDefinesByType_HAS_RelatedObjects
+#define SCHEMA_IfcRelDefinesByType_HAS_RelatingType
+#define SCHEMA_HAS_IfcRelFillsElement
+#define SCHEMA_IfcRelFillsElement_HAS_RelatingOpeningElement
+#define SCHEMA_IfcRelFillsElement_HAS_RelatedBuildingElement
+#define SCHEMA_HAS_IfcRelFlowControlElements
+#define SCHEMA_IfcRelFlowControlElements_HAS_RelatedControlElements
+#define SCHEMA_IfcRelFlowControlElements_HAS_RelatingFlowElement
+#define SCHEMA_HAS_IfcRelInterferesElements
+#define SCHEMA_IfcRelInterferesElements_HAS_RelatingElement
+#define SCHEMA_IfcRelInterferesElements_HAS_RelatedElement
+#define SCHEMA_IfcRelInterferesElements_HAS_InterferenceGeometry
+#define SCHEMA_IfcRelInterferesElements_InterferenceGeometry_IS_OPTIONAL
+#define SCHEMA_IfcRelInterferesElements_HAS_InterferenceType
+#define SCHEMA_IfcRelInterferesElements_InterferenceType_IS_OPTIONAL
+#define SCHEMA_IfcRelInterferesElements_HAS_ImpliedOrder
+#define SCHEMA_IfcRelInterferesElements_HAS_InterferenceSpace
+#define SCHEMA_IfcRelInterferesElements_InterferenceSpace_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRelNests
+#define SCHEMA_IfcRelNests_HAS_RelatingObject
+#define SCHEMA_IfcRelNests_HAS_RelatedObjects
+#define SCHEMA_HAS_IfcRelPositions
+#define SCHEMA_IfcRelPositions_HAS_RelatingPositioningElement
+#define SCHEMA_IfcRelPositions_HAS_RelatedProducts
+#define SCHEMA_HAS_IfcRelProjectsElement
+#define SCHEMA_IfcRelProjectsElement_HAS_RelatingElement
+#define SCHEMA_IfcRelProjectsElement_HAS_RelatedFeatureElement
+#define SCHEMA_HAS_IfcRelReferencedInSpatialStructure
+#define SCHEMA_IfcRelReferencedInSpatialStructure_HAS_RelatedElements
+#define SCHEMA_IfcRelReferencedInSpatialStructure_HAS_RelatingStructure
+#define SCHEMA_HAS_IfcRelSequence
+#define SCHEMA_IfcRelSequence_HAS_RelatingProcess
+#define SCHEMA_IfcRelSequence_HAS_RelatedProcess
+#define SCHEMA_IfcRelSequence_HAS_TimeLag
+#define SCHEMA_IfcRelSequence_TimeLag_IS_OPTIONAL
+#define SCHEMA_IfcRelSequence_HAS_SequenceType
+#define SCHEMA_IfcRelSequence_SequenceType_IS_OPTIONAL
+#define SCHEMA_IfcRelSequence_HAS_UserDefinedSequenceType
+#define SCHEMA_IfcRelSequence_UserDefinedSequenceType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRelServicesBuildings
+#define SCHEMA_IfcRelServicesBuildings_HAS_RelatingSystem
+#define SCHEMA_IfcRelServicesBuildings_HAS_RelatedBuildings
+#define SCHEMA_HAS_IfcRelSpaceBoundary
+#define SCHEMA_IfcRelSpaceBoundary_HAS_RelatingSpace
+#define SCHEMA_IfcRelSpaceBoundary_HAS_RelatedBuildingElement
+#define SCHEMA_IfcRelSpaceBoundary_HAS_ConnectionGeometry
+#define SCHEMA_IfcRelSpaceBoundary_ConnectionGeometry_IS_OPTIONAL
+#define SCHEMA_IfcRelSpaceBoundary_HAS_PhysicalOrVirtualBoundary
+#define SCHEMA_IfcRelSpaceBoundary_HAS_InternalOrExternalBoundary
+#define SCHEMA_HAS_IfcRelSpaceBoundary1stLevel
+#define SCHEMA_IfcRelSpaceBoundary1stLevel_HAS_ParentBoundary
+#define SCHEMA_IfcRelSpaceBoundary1stLevel_ParentBoundary_IS_OPTIONAL
+#define SCHEMA_IfcRelSpaceBoundary1stLevel_HAS_InnerBoundaries
+#define SCHEMA_HAS_IfcRelSpaceBoundary2ndLevel
+#define SCHEMA_IfcRelSpaceBoundary2ndLevel_HAS_CorrespondingBoundary
+#define SCHEMA_IfcRelSpaceBoundary2ndLevel_CorrespondingBoundary_IS_OPTIONAL
+#define SCHEMA_IfcRelSpaceBoundary2ndLevel_HAS_Corresponds
+#define SCHEMA_HAS_IfcRelVoidsElement
+#define SCHEMA_IfcRelVoidsElement_HAS_RelatingBuildingElement
+#define SCHEMA_IfcRelVoidsElement_HAS_RelatedOpeningElement
+#define SCHEMA_HAS_IfcRelationship
+#define SCHEMA_HAS_IfcReparametrisedCompositeCurveSegment
+#define SCHEMA_IfcReparametrisedCompositeCurveSegment_HAS_ParamLength
+#define SCHEMA_HAS_IfcRepresentation
+#define SCHEMA_IfcRepresentation_HAS_ContextOfItems
+#define SCHEMA_IfcRepresentation_HAS_RepresentationIdentifier
+#define SCHEMA_IfcRepresentation_RepresentationIdentifier_IS_OPTIONAL
+#define SCHEMA_IfcRepresentation_HAS_RepresentationType
+#define SCHEMA_IfcRepresentation_RepresentationType_IS_OPTIONAL
+#define SCHEMA_IfcRepresentation_HAS_Items
+#define SCHEMA_IfcRepresentation_HAS_RepresentationMap
+#define SCHEMA_IfcRepresentation_HAS_LayerAssignments
+#define SCHEMA_IfcRepresentation_HAS_OfProductRepresentation
+#define SCHEMA_HAS_IfcRepresentationContext
+#define SCHEMA_IfcRepresentationContext_HAS_ContextIdentifier
+#define SCHEMA_IfcRepresentationContext_ContextIdentifier_IS_OPTIONAL
+#define SCHEMA_IfcRepresentationContext_HAS_ContextType
+#define SCHEMA_IfcRepresentationContext_ContextType_IS_OPTIONAL
+#define SCHEMA_IfcRepresentationContext_HAS_RepresentationsInContext
+#define SCHEMA_HAS_IfcRepresentationItem
+#define SCHEMA_IfcRepresentationItem_HAS_LayerAssignment
+#define SCHEMA_IfcRepresentationItem_HAS_StyledByItem
+#define SCHEMA_HAS_IfcRepresentationMap
+#define SCHEMA_IfcRepresentationMap_HAS_MappingOrigin
+#define SCHEMA_IfcRepresentationMap_HAS_MappedRepresentation
+#define SCHEMA_IfcRepresentationMap_HAS_HasShapeAspects
+#define SCHEMA_IfcRepresentationMap_HAS_MapUsage
+#define SCHEMA_HAS_IfcResource
+#define SCHEMA_IfcResource_HAS_Identification
+#define SCHEMA_IfcResource_Identification_IS_OPTIONAL
+#define SCHEMA_IfcResource_HAS_LongDescription
+#define SCHEMA_IfcResource_LongDescription_IS_OPTIONAL
+#define SCHEMA_IfcResource_HAS_ResourceOf
+#define SCHEMA_HAS_IfcResourceApprovalRelationship
+#define SCHEMA_IfcResourceApprovalRelationship_HAS_RelatedResourceObjects
+#define SCHEMA_IfcResourceApprovalRelationship_HAS_RelatingApproval
+#define SCHEMA_HAS_IfcResourceConstraintRelationship
+#define SCHEMA_IfcResourceConstraintRelationship_HAS_RelatingConstraint
+#define SCHEMA_IfcResourceConstraintRelationship_HAS_RelatedResourceObjects
+#define SCHEMA_HAS_IfcResourceLevelRelationship
+#define SCHEMA_IfcResourceLevelRelationship_HAS_Name
+#define SCHEMA_IfcResourceLevelRelationship_Name_IS_OPTIONAL
+#define SCHEMA_IfcResourceLevelRelationship_HAS_Description
+#define SCHEMA_IfcResourceLevelRelationship_Description_IS_OPTIONAL
+#define SCHEMA_HAS_IfcResourceTime
+#define SCHEMA_IfcResourceTime_HAS_ScheduleWork
+#define SCHEMA_IfcResourceTime_ScheduleWork_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_ScheduleUsage
+#define SCHEMA_IfcResourceTime_ScheduleUsage_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_ScheduleStart
+#define SCHEMA_IfcResourceTime_ScheduleStart_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_ScheduleFinish
+#define SCHEMA_IfcResourceTime_ScheduleFinish_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_ScheduleContour
+#define SCHEMA_IfcResourceTime_ScheduleContour_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_LevelingDelay
+#define SCHEMA_IfcResourceTime_LevelingDelay_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_IsOverAllocated
+#define SCHEMA_IfcResourceTime_IsOverAllocated_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_StatusTime
+#define SCHEMA_IfcResourceTime_StatusTime_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_ActualWork
+#define SCHEMA_IfcResourceTime_ActualWork_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_ActualUsage
+#define SCHEMA_IfcResourceTime_ActualUsage_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_ActualStart
+#define SCHEMA_IfcResourceTime_ActualStart_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_ActualFinish
+#define SCHEMA_IfcResourceTime_ActualFinish_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_RemainingWork
+#define SCHEMA_IfcResourceTime_RemainingWork_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_RemainingUsage
+#define SCHEMA_IfcResourceTime_RemainingUsage_IS_OPTIONAL
+#define SCHEMA_IfcResourceTime_HAS_Completion
+#define SCHEMA_IfcResourceTime_Completion_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRevolvedAreaSolid
+#define SCHEMA_IfcRevolvedAreaSolid_HAS_Axis
+#define SCHEMA_IfcRevolvedAreaSolid_HAS_Angle
+#define SCHEMA_HAS_IfcRevolvedAreaSolidTapered
+#define SCHEMA_IfcRevolvedAreaSolidTapered_HAS_EndSweptArea
+#define SCHEMA_HAS_IfcRightCircularCone
+#define SCHEMA_IfcRightCircularCone_HAS_Height
+#define SCHEMA_IfcRightCircularCone_HAS_BottomRadius
+#define SCHEMA_HAS_IfcRightCircularCylinder
+#define SCHEMA_IfcRightCircularCylinder_HAS_Height
+#define SCHEMA_IfcRightCircularCylinder_HAS_Radius
+#define SCHEMA_HAS_IfcRigidOperation
+#define SCHEMA_IfcRigidOperation_HAS_FirstCoordinate
+#define SCHEMA_IfcRigidOperation_HAS_SecondCoordinate
+#define SCHEMA_IfcRigidOperation_HAS_Height
+#define SCHEMA_HAS_IfcRoad
+#define SCHEMA_IfcRoad_HAS_PredefinedType
+#define SCHEMA_IfcRoad_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRoadPart
+#define SCHEMA_IfcRoadPart_HAS_PredefinedType
+#define SCHEMA_IfcRoadPart_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRoof
+#define SCHEMA_IfcRoof_HAS_PredefinedType
+#define SCHEMA_IfcRoof_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRoofType
+#define SCHEMA_IfcRoofType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcRoot
+#define SCHEMA_IfcRoot_HAS_GlobalId
+#define SCHEMA_IfcRoot_HAS_OwnerHistory
+#define SCHEMA_IfcRoot_OwnerHistory_IS_OPTIONAL
+#define SCHEMA_IfcRoot_HAS_Name
+#define SCHEMA_IfcRoot_Name_IS_OPTIONAL
+#define SCHEMA_IfcRoot_HAS_Description
+#define SCHEMA_IfcRoot_Description_IS_OPTIONAL
+#define SCHEMA_HAS_IfcRoundedRectangleProfileDef
+#define SCHEMA_IfcRoundedRectangleProfileDef_HAS_RoundingRadius
+#define SCHEMA_HAS_IfcSIUnit
+#define SCHEMA_IfcSIUnit_HAS_Prefix
+#define SCHEMA_IfcSIUnit_Prefix_IS_OPTIONAL
+#define SCHEMA_IfcSIUnit_HAS_Name
+#define SCHEMA_HAS_IfcSanitaryTerminal
+#define SCHEMA_IfcSanitaryTerminal_HAS_PredefinedType
+#define SCHEMA_IfcSanitaryTerminal_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSanitaryTerminalType
+#define SCHEMA_IfcSanitaryTerminalType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcSchedulingTime
+#define SCHEMA_IfcSchedulingTime_HAS_Name
+#define SCHEMA_IfcSchedulingTime_Name_IS_OPTIONAL
+#define SCHEMA_IfcSchedulingTime_HAS_DataOrigin
+#define SCHEMA_IfcSchedulingTime_DataOrigin_IS_OPTIONAL
+#define SCHEMA_IfcSchedulingTime_HAS_UserDefinedDataOrigin
+#define SCHEMA_IfcSchedulingTime_UserDefinedDataOrigin_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSeamCurve
+#define SCHEMA_HAS_IfcSecondOrderPolynomialSpiral
+#define SCHEMA_IfcSecondOrderPolynomialSpiral_HAS_QuadraticTerm
+#define SCHEMA_IfcSecondOrderPolynomialSpiral_HAS_LinearTerm
+#define SCHEMA_IfcSecondOrderPolynomialSpiral_LinearTerm_IS_OPTIONAL
+#define SCHEMA_IfcSecondOrderPolynomialSpiral_HAS_ConstantTerm
+#define SCHEMA_IfcSecondOrderPolynomialSpiral_ConstantTerm_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSectionProperties
+#define SCHEMA_IfcSectionProperties_HAS_SectionType
+#define SCHEMA_IfcSectionProperties_HAS_StartProfile
+#define SCHEMA_IfcSectionProperties_HAS_EndProfile
+#define SCHEMA_IfcSectionProperties_EndProfile_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSectionReinforcementProperties
+#define SCHEMA_IfcSectionReinforcementProperties_HAS_LongitudinalStartPosition
+#define SCHEMA_IfcSectionReinforcementProperties_HAS_LongitudinalEndPosition
+#define SCHEMA_IfcSectionReinforcementProperties_HAS_TransversePosition
+#define SCHEMA_IfcSectionReinforcementProperties_TransversePosition_IS_OPTIONAL
+#define SCHEMA_IfcSectionReinforcementProperties_HAS_ReinforcementRole
+#define SCHEMA_IfcSectionReinforcementProperties_HAS_SectionDefinition
+#define SCHEMA_IfcSectionReinforcementProperties_HAS_CrossSectionReinforcementDefinitions
+#define SCHEMA_HAS_IfcSectionedSolid
+#define SCHEMA_IfcSectionedSolid_HAS_Directrix
+#define SCHEMA_IfcSectionedSolid_HAS_CrossSections
+#define SCHEMA_HAS_IfcSectionedSolidHorizontal
+#define SCHEMA_IfcSectionedSolidHorizontal_HAS_CrossSectionPositions
+#define SCHEMA_HAS_IfcSectionedSpine
+#define SCHEMA_IfcSectionedSpine_HAS_SpineCurve
+#define SCHEMA_IfcSectionedSpine_HAS_CrossSections
+#define SCHEMA_IfcSectionedSpine_HAS_CrossSectionPositions
+#define SCHEMA_HAS_IfcSectionedSurface
+#define SCHEMA_IfcSectionedSurface_HAS_Directrix
+#define SCHEMA_IfcSectionedSurface_HAS_CrossSectionPositions
+#define SCHEMA_IfcSectionedSurface_HAS_CrossSections
+#define SCHEMA_HAS_IfcSegment
+#define SCHEMA_IfcSegment_HAS_Transition
+#define SCHEMA_IfcSegment_HAS_UsingCurves
+#define SCHEMA_HAS_IfcSegmentedReferenceCurve
+#define SCHEMA_IfcSegmentedReferenceCurve_HAS_BaseCurve
+#define SCHEMA_IfcSegmentedReferenceCurve_HAS_EndPoint
+#define SCHEMA_IfcSegmentedReferenceCurve_EndPoint_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSensor
+#define SCHEMA_IfcSensor_HAS_PredefinedType
+#define SCHEMA_IfcSensor_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSensorType
+#define SCHEMA_IfcSensorType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcSeventhOrderPolynomialSpiral
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_HAS_SepticTerm
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_HAS_SexticTerm
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_SexticTerm_IS_OPTIONAL
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_HAS_QuinticTerm
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_QuinticTerm_IS_OPTIONAL
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_HAS_QuarticTerm
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_QuarticTerm_IS_OPTIONAL
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_HAS_CubicTerm
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_CubicTerm_IS_OPTIONAL
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_HAS_QuadraticTerm
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_QuadraticTerm_IS_OPTIONAL
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_HAS_LinearTerm
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_LinearTerm_IS_OPTIONAL
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_HAS_ConstantTerm
+#define SCHEMA_IfcSeventhOrderPolynomialSpiral_ConstantTerm_IS_OPTIONAL
+#define SCHEMA_HAS_IfcShadingDevice
+#define SCHEMA_IfcShadingDevice_HAS_PredefinedType
+#define SCHEMA_IfcShadingDevice_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcShadingDeviceType
+#define SCHEMA_IfcShadingDeviceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcShapeAspect
+#define SCHEMA_IfcShapeAspect_HAS_ShapeRepresentations
+#define SCHEMA_IfcShapeAspect_HAS_Name
+#define SCHEMA_IfcShapeAspect_Name_IS_OPTIONAL
+#define SCHEMA_IfcShapeAspect_HAS_Description
+#define SCHEMA_IfcShapeAspect_Description_IS_OPTIONAL
+#define SCHEMA_IfcShapeAspect_HAS_ProductDefinitional
+#define SCHEMA_IfcShapeAspect_HAS_PartOfProductDefinitionShape
+#define SCHEMA_IfcShapeAspect_PartOfProductDefinitionShape_IS_OPTIONAL
+#define SCHEMA_IfcShapeAspect_HAS_HasExternalReferences
+#define SCHEMA_HAS_IfcShapeModel
+#define SCHEMA_IfcShapeModel_HAS_OfShapeAspect
+#define SCHEMA_HAS_IfcShapeRepresentation
+#define SCHEMA_HAS_IfcShellBasedSurfaceModel
+#define SCHEMA_IfcShellBasedSurfaceModel_HAS_SbsmBoundary
+#define SCHEMA_HAS_IfcSign
+#define SCHEMA_IfcSign_HAS_PredefinedType
+#define SCHEMA_IfcSign_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSignType
+#define SCHEMA_IfcSignType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcSignal
+#define SCHEMA_IfcSignal_HAS_PredefinedType
+#define SCHEMA_IfcSignal_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSignalType
+#define SCHEMA_IfcSignalType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcSimpleProperty
+#define SCHEMA_HAS_IfcSimplePropertyTemplate
+#define SCHEMA_IfcSimplePropertyTemplate_HAS_TemplateType
+#define SCHEMA_IfcSimplePropertyTemplate_TemplateType_IS_OPTIONAL
+#define SCHEMA_IfcSimplePropertyTemplate_HAS_PrimaryMeasureType
+#define SCHEMA_IfcSimplePropertyTemplate_PrimaryMeasureType_IS_OPTIONAL
+#define SCHEMA_IfcSimplePropertyTemplate_HAS_SecondaryMeasureType
+#define SCHEMA_IfcSimplePropertyTemplate_SecondaryMeasureType_IS_OPTIONAL
+#define SCHEMA_IfcSimplePropertyTemplate_HAS_Enumerators
+#define SCHEMA_IfcSimplePropertyTemplate_Enumerators_IS_OPTIONAL
+#define SCHEMA_IfcSimplePropertyTemplate_HAS_PrimaryUnit
+#define SCHEMA_IfcSimplePropertyTemplate_PrimaryUnit_IS_OPTIONAL
+#define SCHEMA_IfcSimplePropertyTemplate_HAS_SecondaryUnit
+#define SCHEMA_IfcSimplePropertyTemplate_SecondaryUnit_IS_OPTIONAL
+#define SCHEMA_IfcSimplePropertyTemplate_HAS_Expression
+#define SCHEMA_IfcSimplePropertyTemplate_Expression_IS_OPTIONAL
+#define SCHEMA_IfcSimplePropertyTemplate_HAS_AccessState
+#define SCHEMA_IfcSimplePropertyTemplate_AccessState_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSineSpiral
+#define SCHEMA_IfcSineSpiral_HAS_SineTerm
+#define SCHEMA_IfcSineSpiral_HAS_LinearTerm
+#define SCHEMA_IfcSineSpiral_LinearTerm_IS_OPTIONAL
+#define SCHEMA_IfcSineSpiral_HAS_ConstantTerm
+#define SCHEMA_IfcSineSpiral_ConstantTerm_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSite
+#define SCHEMA_IfcSite_HAS_RefLatitude
+#define SCHEMA_IfcSite_RefLatitude_IS_OPTIONAL
+#define SCHEMA_IfcSite_HAS_RefLongitude
+#define SCHEMA_IfcSite_RefLongitude_IS_OPTIONAL
+#define SCHEMA_IfcSite_HAS_RefElevation
+#define SCHEMA_IfcSite_RefElevation_IS_OPTIONAL
+#define SCHEMA_IfcSite_HAS_LandTitleNumber
+#define SCHEMA_IfcSite_LandTitleNumber_IS_OPTIONAL
+#define SCHEMA_IfcSite_HAS_SiteAddress
+#define SCHEMA_IfcSite_SiteAddress_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSlab
+#define SCHEMA_IfcSlab_HAS_PredefinedType
+#define SCHEMA_IfcSlab_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSlabType
+#define SCHEMA_IfcSlabType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcSlippageConnectionCondition
+#define SCHEMA_IfcSlippageConnectionCondition_HAS_SlippageX
+#define SCHEMA_IfcSlippageConnectionCondition_SlippageX_IS_OPTIONAL
+#define SCHEMA_IfcSlippageConnectionCondition_HAS_SlippageY
+#define SCHEMA_IfcSlippageConnectionCondition_SlippageY_IS_OPTIONAL
+#define SCHEMA_IfcSlippageConnectionCondition_HAS_SlippageZ
+#define SCHEMA_IfcSlippageConnectionCondition_SlippageZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSolarDevice
+#define SCHEMA_IfcSolarDevice_HAS_PredefinedType
+#define SCHEMA_IfcSolarDevice_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSolarDeviceType
+#define SCHEMA_IfcSolarDeviceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcSolidModel
+#define SCHEMA_HAS_IfcSpace
+#define SCHEMA_IfcSpace_HAS_PredefinedType
+#define SCHEMA_IfcSpace_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcSpace_HAS_ElevationWithFlooring
+#define SCHEMA_IfcSpace_ElevationWithFlooring_IS_OPTIONAL
+#define SCHEMA_IfcSpace_HAS_HasCoverings
+#define SCHEMA_IfcSpace_HAS_BoundedBy
+#define SCHEMA_HAS_IfcSpaceHeater
+#define SCHEMA_IfcSpaceHeater_HAS_PredefinedType
+#define SCHEMA_IfcSpaceHeater_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSpaceHeaterType
+#define SCHEMA_IfcSpaceHeaterType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcSpaceType
+#define SCHEMA_IfcSpaceType_HAS_PredefinedType
+#define SCHEMA_IfcSpaceType_HAS_LongName
+#define SCHEMA_IfcSpaceType_LongName_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSpatialElement
+#define SCHEMA_IfcSpatialElement_HAS_LongName
+#define SCHEMA_IfcSpatialElement_LongName_IS_OPTIONAL
+#define SCHEMA_IfcSpatialElement_HAS_ContainsElements
+#define SCHEMA_IfcSpatialElement_HAS_ServicedBySystems
+#define SCHEMA_IfcSpatialElement_HAS_ReferencesElements
+#define SCHEMA_IfcSpatialElement_HAS_IsInterferedByElements
+#define SCHEMA_IfcSpatialElement_HAS_InterferesElements
+#define SCHEMA_HAS_IfcSpatialElementType
+#define SCHEMA_IfcSpatialElementType_HAS_ElementType
+#define SCHEMA_IfcSpatialElementType_ElementType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSpatialStructureElement
+#define SCHEMA_IfcSpatialStructureElement_HAS_CompositionType
+#define SCHEMA_IfcSpatialStructureElement_CompositionType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSpatialStructureElementType
+#define SCHEMA_HAS_IfcSpatialZone
+#define SCHEMA_IfcSpatialZone_HAS_PredefinedType
+#define SCHEMA_IfcSpatialZone_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSpatialZoneType
+#define SCHEMA_IfcSpatialZoneType_HAS_PredefinedType
+#define SCHEMA_IfcSpatialZoneType_HAS_LongName
+#define SCHEMA_IfcSpatialZoneType_LongName_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSphere
+#define SCHEMA_IfcSphere_HAS_Radius
+#define SCHEMA_HAS_IfcSphericalSurface
+#define SCHEMA_IfcSphericalSurface_HAS_Radius
+#define SCHEMA_HAS_IfcSpiral
+#define SCHEMA_IfcSpiral_HAS_Position
+#define SCHEMA_IfcSpiral_Position_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStackTerminal
+#define SCHEMA_IfcStackTerminal_HAS_PredefinedType
+#define SCHEMA_IfcStackTerminal_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStackTerminalType
+#define SCHEMA_IfcStackTerminalType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcStair
+#define SCHEMA_IfcStair_HAS_PredefinedType
+#define SCHEMA_IfcStair_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStairFlight
+#define SCHEMA_IfcStairFlight_HAS_NumberOfRisers
+#define SCHEMA_IfcStairFlight_NumberOfRisers_IS_OPTIONAL
+#define SCHEMA_IfcStairFlight_HAS_NumberOfTreads
+#define SCHEMA_IfcStairFlight_NumberOfTreads_IS_OPTIONAL
+#define SCHEMA_IfcStairFlight_HAS_RiserHeight
+#define SCHEMA_IfcStairFlight_RiserHeight_IS_OPTIONAL
+#define SCHEMA_IfcStairFlight_HAS_TreadLength
+#define SCHEMA_IfcStairFlight_TreadLength_IS_OPTIONAL
+#define SCHEMA_IfcStairFlight_HAS_PredefinedType
+#define SCHEMA_IfcStairFlight_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStairFlightType
+#define SCHEMA_IfcStairFlightType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcStairType
+#define SCHEMA_IfcStairType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcStructuralAction
+#define SCHEMA_IfcStructuralAction_HAS_DestabilizingLoad
+#define SCHEMA_IfcStructuralAction_DestabilizingLoad_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralActivity
+#define SCHEMA_IfcStructuralActivity_HAS_AppliedLoad
+#define SCHEMA_IfcStructuralActivity_HAS_GlobalOrLocal
+#define SCHEMA_IfcStructuralActivity_HAS_AssignedToStructuralItem
+#define SCHEMA_HAS_IfcStructuralAnalysisModel
+#define SCHEMA_IfcStructuralAnalysisModel_HAS_PredefinedType
+#define SCHEMA_IfcStructuralAnalysisModel_HAS_OrientationOf2DPlane
+#define SCHEMA_IfcStructuralAnalysisModel_OrientationOf2DPlane_IS_OPTIONAL
+#define SCHEMA_IfcStructuralAnalysisModel_HAS_LoadedBy
+#define SCHEMA_IfcStructuralAnalysisModel_LoadedBy_IS_OPTIONAL
+#define SCHEMA_IfcStructuralAnalysisModel_HAS_HasResults
+#define SCHEMA_IfcStructuralAnalysisModel_HasResults_IS_OPTIONAL
+#define SCHEMA_IfcStructuralAnalysisModel_HAS_SharedPlacement
+#define SCHEMA_IfcStructuralAnalysisModel_SharedPlacement_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralConnection
+#define SCHEMA_IfcStructuralConnection_HAS_AppliedCondition
+#define SCHEMA_IfcStructuralConnection_AppliedCondition_IS_OPTIONAL
+#define SCHEMA_IfcStructuralConnection_HAS_ConnectsStructuralMembers
+#define SCHEMA_HAS_IfcStructuralConnectionCondition
+#define SCHEMA_IfcStructuralConnectionCondition_HAS_Name
+#define SCHEMA_IfcStructuralConnectionCondition_Name_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralCurveAction
+#define SCHEMA_IfcStructuralCurveAction_HAS_ProjectedOrTrue
+#define SCHEMA_IfcStructuralCurveAction_ProjectedOrTrue_IS_OPTIONAL
+#define SCHEMA_IfcStructuralCurveAction_HAS_PredefinedType
+#define SCHEMA_HAS_IfcStructuralCurveConnection
+#define SCHEMA_IfcStructuralCurveConnection_HAS_AxisDirection
+#define SCHEMA_HAS_IfcStructuralCurveMember
+#define SCHEMA_IfcStructuralCurveMember_HAS_PredefinedType
+#define SCHEMA_IfcStructuralCurveMember_HAS_Axis
+#define SCHEMA_HAS_IfcStructuralCurveMemberVarying
+#define SCHEMA_HAS_IfcStructuralCurveReaction
+#define SCHEMA_IfcStructuralCurveReaction_HAS_PredefinedType
+#define SCHEMA_HAS_IfcStructuralItem
+#define SCHEMA_IfcStructuralItem_HAS_AssignedStructuralActivity
+#define SCHEMA_HAS_IfcStructuralLinearAction
+#define SCHEMA_HAS_IfcStructuralLoad
+#define SCHEMA_IfcStructuralLoad_HAS_Name
+#define SCHEMA_IfcStructuralLoad_Name_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralLoadCase
+#define SCHEMA_IfcStructuralLoadCase_HAS_SelfWeightCoefficients
+#define SCHEMA_IfcStructuralLoadCase_SelfWeightCoefficients_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralLoadConfiguration
+#define SCHEMA_IfcStructuralLoadConfiguration_HAS_Values
+#define SCHEMA_IfcStructuralLoadConfiguration_HAS_Locations
+#define SCHEMA_IfcStructuralLoadConfiguration_Locations_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralLoadGroup
+#define SCHEMA_IfcStructuralLoadGroup_HAS_PredefinedType
+#define SCHEMA_IfcStructuralLoadGroup_HAS_ActionType
+#define SCHEMA_IfcStructuralLoadGroup_HAS_ActionSource
+#define SCHEMA_IfcStructuralLoadGroup_HAS_Coefficient
+#define SCHEMA_IfcStructuralLoadGroup_Coefficient_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadGroup_HAS_Purpose
+#define SCHEMA_IfcStructuralLoadGroup_Purpose_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadGroup_HAS_SourceOfResultGroup
+#define SCHEMA_IfcStructuralLoadGroup_HAS_LoadGroupFor
+#define SCHEMA_HAS_IfcStructuralLoadLinearForce
+#define SCHEMA_IfcStructuralLoadLinearForce_HAS_LinearForceX
+#define SCHEMA_IfcStructuralLoadLinearForce_LinearForceX_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadLinearForce_HAS_LinearForceY
+#define SCHEMA_IfcStructuralLoadLinearForce_LinearForceY_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadLinearForce_HAS_LinearForceZ
+#define SCHEMA_IfcStructuralLoadLinearForce_LinearForceZ_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadLinearForce_HAS_LinearMomentX
+#define SCHEMA_IfcStructuralLoadLinearForce_LinearMomentX_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadLinearForce_HAS_LinearMomentY
+#define SCHEMA_IfcStructuralLoadLinearForce_LinearMomentY_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadLinearForce_HAS_LinearMomentZ
+#define SCHEMA_IfcStructuralLoadLinearForce_LinearMomentZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralLoadOrResult
+#define SCHEMA_HAS_IfcStructuralLoadPlanarForce
+#define SCHEMA_IfcStructuralLoadPlanarForce_HAS_PlanarForceX
+#define SCHEMA_IfcStructuralLoadPlanarForce_PlanarForceX_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadPlanarForce_HAS_PlanarForceY
+#define SCHEMA_IfcStructuralLoadPlanarForce_PlanarForceY_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadPlanarForce_HAS_PlanarForceZ
+#define SCHEMA_IfcStructuralLoadPlanarForce_PlanarForceZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralLoadSingleDisplacement
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_HAS_DisplacementX
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_DisplacementX_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_HAS_DisplacementY
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_DisplacementY_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_HAS_DisplacementZ
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_DisplacementZ_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_HAS_RotationalDisplacementRX
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_RotationalDisplacementRX_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_HAS_RotationalDisplacementRY
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_RotationalDisplacementRY_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_HAS_RotationalDisplacementRZ
+#define SCHEMA_IfcStructuralLoadSingleDisplacement_RotationalDisplacementRZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralLoadSingleDisplacementDistortion
+#define SCHEMA_IfcStructuralLoadSingleDisplacementDistortion_HAS_Distortion
+#define SCHEMA_IfcStructuralLoadSingleDisplacementDistortion_Distortion_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralLoadSingleForce
+#define SCHEMA_IfcStructuralLoadSingleForce_HAS_ForceX
+#define SCHEMA_IfcStructuralLoadSingleForce_ForceX_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadSingleForce_HAS_ForceY
+#define SCHEMA_IfcStructuralLoadSingleForce_ForceY_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadSingleForce_HAS_ForceZ
+#define SCHEMA_IfcStructuralLoadSingleForce_ForceZ_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadSingleForce_HAS_MomentX
+#define SCHEMA_IfcStructuralLoadSingleForce_MomentX_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadSingleForce_HAS_MomentY
+#define SCHEMA_IfcStructuralLoadSingleForce_MomentY_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadSingleForce_HAS_MomentZ
+#define SCHEMA_IfcStructuralLoadSingleForce_MomentZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralLoadSingleForceWarping
+#define SCHEMA_IfcStructuralLoadSingleForceWarping_HAS_WarpingMoment
+#define SCHEMA_IfcStructuralLoadSingleForceWarping_WarpingMoment_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralLoadStatic
+#define SCHEMA_HAS_IfcStructuralLoadTemperature
+#define SCHEMA_IfcStructuralLoadTemperature_HAS_DeltaTConstant
+#define SCHEMA_IfcStructuralLoadTemperature_DeltaTConstant_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadTemperature_HAS_DeltaTY
+#define SCHEMA_IfcStructuralLoadTemperature_DeltaTY_IS_OPTIONAL
+#define SCHEMA_IfcStructuralLoadTemperature_HAS_DeltaTZ
+#define SCHEMA_IfcStructuralLoadTemperature_DeltaTZ_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralMember
+#define SCHEMA_IfcStructuralMember_HAS_ConnectedBy
+#define SCHEMA_HAS_IfcStructuralPlanarAction
+#define SCHEMA_HAS_IfcStructuralPointAction
+#define SCHEMA_HAS_IfcStructuralPointConnection
+#define SCHEMA_IfcStructuralPointConnection_HAS_ConditionCoordinateSystem
+#define SCHEMA_IfcStructuralPointConnection_ConditionCoordinateSystem_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralPointReaction
+#define SCHEMA_HAS_IfcStructuralReaction
+#define SCHEMA_HAS_IfcStructuralResultGroup
+#define SCHEMA_IfcStructuralResultGroup_HAS_TheoryType
+#define SCHEMA_IfcStructuralResultGroup_HAS_ResultForLoadGroup
+#define SCHEMA_IfcStructuralResultGroup_ResultForLoadGroup_IS_OPTIONAL
+#define SCHEMA_IfcStructuralResultGroup_HAS_IsLinear
+#define SCHEMA_IfcStructuralResultGroup_HAS_ResultGroupFor
+#define SCHEMA_HAS_IfcStructuralSurfaceAction
+#define SCHEMA_IfcStructuralSurfaceAction_HAS_ProjectedOrTrue
+#define SCHEMA_IfcStructuralSurfaceAction_ProjectedOrTrue_IS_OPTIONAL
+#define SCHEMA_IfcStructuralSurfaceAction_HAS_PredefinedType
+#define SCHEMA_HAS_IfcStructuralSurfaceConnection
+#define SCHEMA_HAS_IfcStructuralSurfaceMember
+#define SCHEMA_IfcStructuralSurfaceMember_HAS_PredefinedType
+#define SCHEMA_IfcStructuralSurfaceMember_HAS_Thickness
+#define SCHEMA_IfcStructuralSurfaceMember_Thickness_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStructuralSurfaceMemberVarying
+#define SCHEMA_HAS_IfcStructuralSurfaceReaction
+#define SCHEMA_IfcStructuralSurfaceReaction_HAS_PredefinedType
+#define SCHEMA_HAS_IfcStyleModel
+#define SCHEMA_HAS_IfcStyledItem
+#define SCHEMA_IfcStyledItem_HAS_Item
+#define SCHEMA_IfcStyledItem_Item_IS_OPTIONAL
+#define SCHEMA_IfcStyledItem_HAS_Styles
+#define SCHEMA_IfcStyledItem_HAS_Name
+#define SCHEMA_IfcStyledItem_Name_IS_OPTIONAL
+#define SCHEMA_HAS_IfcStyledRepresentation
+#define SCHEMA_HAS_IfcSubContractResource
+#define SCHEMA_IfcSubContractResource_HAS_PredefinedType
+#define SCHEMA_IfcSubContractResource_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSubContractResourceType
+#define SCHEMA_IfcSubContractResourceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcSubedge
+#define SCHEMA_IfcSubedge_HAS_ParentEdge
+#define SCHEMA_HAS_IfcSurface
+#define SCHEMA_HAS_IfcSurfaceCurve
+#define SCHEMA_IfcSurfaceCurve_HAS_Curve3D
+#define SCHEMA_IfcSurfaceCurve_HAS_AssociatedGeometry
+#define SCHEMA_IfcSurfaceCurve_HAS_MasterRepresentation
+#define SCHEMA_HAS_IfcSurfaceCurveSweptAreaSolid
+#define SCHEMA_IfcSurfaceCurveSweptAreaSolid_HAS_ReferenceSurface
+#define SCHEMA_HAS_IfcSurfaceFeature
+#define SCHEMA_IfcSurfaceFeature_HAS_PredefinedType
+#define SCHEMA_IfcSurfaceFeature_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceFeature_HAS_AdheresToElement
+#define SCHEMA_HAS_IfcSurfaceOfLinearExtrusion
+#define SCHEMA_IfcSurfaceOfLinearExtrusion_HAS_ExtrudedDirection
+#define SCHEMA_IfcSurfaceOfLinearExtrusion_HAS_Depth
+#define SCHEMA_HAS_IfcSurfaceOfRevolution
+#define SCHEMA_IfcSurfaceOfRevolution_HAS_AxisPosition
+#define SCHEMA_HAS_IfcSurfaceReinforcementArea
+#define SCHEMA_IfcSurfaceReinforcementArea_HAS_SurfaceReinforcement1
+#define SCHEMA_IfcSurfaceReinforcementArea_SurfaceReinforcement1_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceReinforcementArea_HAS_SurfaceReinforcement2
+#define SCHEMA_IfcSurfaceReinforcementArea_SurfaceReinforcement2_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceReinforcementArea_HAS_ShearReinforcement
+#define SCHEMA_IfcSurfaceReinforcementArea_ShearReinforcement_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSurfaceStyle
+#define SCHEMA_IfcSurfaceStyle_HAS_Side
+#define SCHEMA_IfcSurfaceStyle_HAS_Styles
+#define SCHEMA_HAS_IfcSurfaceStyleLighting
+#define SCHEMA_IfcSurfaceStyleLighting_HAS_DiffuseTransmissionColour
+#define SCHEMA_IfcSurfaceStyleLighting_HAS_DiffuseReflectionColour
+#define SCHEMA_IfcSurfaceStyleLighting_HAS_TransmissionColour
+#define SCHEMA_IfcSurfaceStyleLighting_HAS_ReflectanceColour
+#define SCHEMA_HAS_IfcSurfaceStyleRefraction
+#define SCHEMA_IfcSurfaceStyleRefraction_HAS_RefractionIndex
+#define SCHEMA_IfcSurfaceStyleRefraction_RefractionIndex_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceStyleRefraction_HAS_DispersionFactor
+#define SCHEMA_IfcSurfaceStyleRefraction_DispersionFactor_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSurfaceStyleRendering
+#define SCHEMA_IfcSurfaceStyleRendering_HAS_DiffuseColour
+#define SCHEMA_IfcSurfaceStyleRendering_DiffuseColour_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceStyleRendering_HAS_TransmissionColour
+#define SCHEMA_IfcSurfaceStyleRendering_TransmissionColour_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceStyleRendering_HAS_DiffuseTransmissionColour
+#define SCHEMA_IfcSurfaceStyleRendering_DiffuseTransmissionColour_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceStyleRendering_HAS_ReflectionColour
+#define SCHEMA_IfcSurfaceStyleRendering_ReflectionColour_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceStyleRendering_HAS_SpecularColour
+#define SCHEMA_IfcSurfaceStyleRendering_SpecularColour_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceStyleRendering_HAS_SpecularHighlight
+#define SCHEMA_IfcSurfaceStyleRendering_SpecularHighlight_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceStyleRendering_HAS_ReflectanceMethod
+#define SCHEMA_HAS_IfcSurfaceStyleShading
+#define SCHEMA_IfcSurfaceStyleShading_HAS_SurfaceColour
+#define SCHEMA_IfcSurfaceStyleShading_HAS_Transparency
+#define SCHEMA_IfcSurfaceStyleShading_Transparency_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSurfaceStyleWithTextures
+#define SCHEMA_IfcSurfaceStyleWithTextures_HAS_Textures
+#define SCHEMA_HAS_IfcSurfaceTexture
+#define SCHEMA_IfcSurfaceTexture_HAS_RepeatS
+#define SCHEMA_IfcSurfaceTexture_HAS_RepeatT
+#define SCHEMA_IfcSurfaceTexture_HAS_Mode
+#define SCHEMA_IfcSurfaceTexture_Mode_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceTexture_HAS_TextureTransform
+#define SCHEMA_IfcSurfaceTexture_TextureTransform_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceTexture_HAS_Parameter
+#define SCHEMA_IfcSurfaceTexture_Parameter_IS_OPTIONAL
+#define SCHEMA_IfcSurfaceTexture_HAS_IsMappedBy
+#define SCHEMA_IfcSurfaceTexture_HAS_UsedInStyles
+#define SCHEMA_HAS_IfcSweptAreaSolid
+#define SCHEMA_IfcSweptAreaSolid_HAS_SweptArea
+#define SCHEMA_IfcSweptAreaSolid_HAS_Position
+#define SCHEMA_IfcSweptAreaSolid_Position_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSweptDiskSolid
+#define SCHEMA_IfcSweptDiskSolid_HAS_Directrix
+#define SCHEMA_IfcSweptDiskSolid_HAS_Radius
+#define SCHEMA_IfcSweptDiskSolid_HAS_InnerRadius
+#define SCHEMA_IfcSweptDiskSolid_InnerRadius_IS_OPTIONAL
+#define SCHEMA_IfcSweptDiskSolid_HAS_StartParam
+#define SCHEMA_IfcSweptDiskSolid_StartParam_IS_OPTIONAL
+#define SCHEMA_IfcSweptDiskSolid_HAS_EndParam
+#define SCHEMA_IfcSweptDiskSolid_EndParam_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSweptDiskSolidPolygonal
+#define SCHEMA_IfcSweptDiskSolidPolygonal_HAS_FilletRadius
+#define SCHEMA_IfcSweptDiskSolidPolygonal_FilletRadius_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSweptSurface
+#define SCHEMA_IfcSweptSurface_HAS_SweptCurve
+#define SCHEMA_IfcSweptSurface_HAS_Position
+#define SCHEMA_IfcSweptSurface_Position_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSwitchingDevice
+#define SCHEMA_IfcSwitchingDevice_HAS_PredefinedType
+#define SCHEMA_IfcSwitchingDevice_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSwitchingDeviceType
+#define SCHEMA_IfcSwitchingDeviceType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcSystem
+#define SCHEMA_IfcSystem_HAS_ServicesBuildings
+#define SCHEMA_IfcSystem_HAS_ServicesFacilities
+#define SCHEMA_HAS_IfcSystemFurnitureElement
+#define SCHEMA_IfcSystemFurnitureElement_HAS_PredefinedType
+#define SCHEMA_IfcSystemFurnitureElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcSystemFurnitureElementType
+#define SCHEMA_IfcSystemFurnitureElementType_HAS_PredefinedType
+#define SCHEMA_IfcSystemFurnitureElementType_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTShapeProfileDef
+#define SCHEMA_IfcTShapeProfileDef_HAS_Depth
+#define SCHEMA_IfcTShapeProfileDef_HAS_FlangeWidth
+#define SCHEMA_IfcTShapeProfileDef_HAS_WebThickness
+#define SCHEMA_IfcTShapeProfileDef_HAS_FlangeThickness
+#define SCHEMA_IfcTShapeProfileDef_HAS_FilletRadius
+#define SCHEMA_IfcTShapeProfileDef_FilletRadius_IS_OPTIONAL
+#define SCHEMA_IfcTShapeProfileDef_HAS_FlangeEdgeRadius
+#define SCHEMA_IfcTShapeProfileDef_FlangeEdgeRadius_IS_OPTIONAL
+#define SCHEMA_IfcTShapeProfileDef_HAS_WebEdgeRadius
+#define SCHEMA_IfcTShapeProfileDef_WebEdgeRadius_IS_OPTIONAL
+#define SCHEMA_IfcTShapeProfileDef_HAS_WebSlope
+#define SCHEMA_IfcTShapeProfileDef_WebSlope_IS_OPTIONAL
+#define SCHEMA_IfcTShapeProfileDef_HAS_FlangeSlope
+#define SCHEMA_IfcTShapeProfileDef_FlangeSlope_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTable
+#define SCHEMA_IfcTable_HAS_Name
+#define SCHEMA_IfcTable_Name_IS_OPTIONAL
+#define SCHEMA_IfcTable_HAS_Rows
+#define SCHEMA_IfcTable_Rows_IS_OPTIONAL
+#define SCHEMA_IfcTable_HAS_Columns
+#define SCHEMA_IfcTable_Columns_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTableColumn
+#define SCHEMA_IfcTableColumn_HAS_Identifier
+#define SCHEMA_IfcTableColumn_Identifier_IS_OPTIONAL
+#define SCHEMA_IfcTableColumn_HAS_Name
+#define SCHEMA_IfcTableColumn_Name_IS_OPTIONAL
+#define SCHEMA_IfcTableColumn_HAS_Description
+#define SCHEMA_IfcTableColumn_Description_IS_OPTIONAL
+#define SCHEMA_IfcTableColumn_HAS_Unit
+#define SCHEMA_IfcTableColumn_Unit_IS_OPTIONAL
+#define SCHEMA_IfcTableColumn_HAS_ReferencePath
+#define SCHEMA_IfcTableColumn_ReferencePath_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTableRow
+#define SCHEMA_IfcTableRow_HAS_RowCells
+#define SCHEMA_IfcTableRow_RowCells_IS_OPTIONAL
+#define SCHEMA_IfcTableRow_HAS_IsHeading
+#define SCHEMA_IfcTableRow_IsHeading_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTank
+#define SCHEMA_IfcTank_HAS_PredefinedType
+#define SCHEMA_IfcTank_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTankType
+#define SCHEMA_IfcTankType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcTask
+#define SCHEMA_IfcTask_HAS_Status
+#define SCHEMA_IfcTask_Status_IS_OPTIONAL
+#define SCHEMA_IfcTask_HAS_WorkMethod
+#define SCHEMA_IfcTask_WorkMethod_IS_OPTIONAL
+#define SCHEMA_IfcTask_HAS_IsMilestone
+#define SCHEMA_IfcTask_HAS_Priority
+#define SCHEMA_IfcTask_Priority_IS_OPTIONAL
+#define SCHEMA_IfcTask_HAS_TaskTime
+#define SCHEMA_IfcTask_TaskTime_IS_OPTIONAL
+#define SCHEMA_IfcTask_HAS_PredefinedType
+#define SCHEMA_IfcTask_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTaskTime
+#define SCHEMA_IfcTaskTime_HAS_DurationType
+#define SCHEMA_IfcTaskTime_DurationType_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_ScheduleDuration
+#define SCHEMA_IfcTaskTime_ScheduleDuration_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_ScheduleStart
+#define SCHEMA_IfcTaskTime_ScheduleStart_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_ScheduleFinish
+#define SCHEMA_IfcTaskTime_ScheduleFinish_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_EarlyStart
+#define SCHEMA_IfcTaskTime_EarlyStart_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_EarlyFinish
+#define SCHEMA_IfcTaskTime_EarlyFinish_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_LateStart
+#define SCHEMA_IfcTaskTime_LateStart_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_LateFinish
+#define SCHEMA_IfcTaskTime_LateFinish_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_FreeFloat
+#define SCHEMA_IfcTaskTime_FreeFloat_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_TotalFloat
+#define SCHEMA_IfcTaskTime_TotalFloat_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_IsCritical
+#define SCHEMA_IfcTaskTime_IsCritical_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_StatusTime
+#define SCHEMA_IfcTaskTime_StatusTime_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_ActualDuration
+#define SCHEMA_IfcTaskTime_ActualDuration_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_ActualStart
+#define SCHEMA_IfcTaskTime_ActualStart_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_ActualFinish
+#define SCHEMA_IfcTaskTime_ActualFinish_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_RemainingTime
+#define SCHEMA_IfcTaskTime_RemainingTime_IS_OPTIONAL
+#define SCHEMA_IfcTaskTime_HAS_Completion
+#define SCHEMA_IfcTaskTime_Completion_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTaskTimeRecurring
+#define SCHEMA_IfcTaskTimeRecurring_HAS_Recurrence
+#define SCHEMA_HAS_IfcTaskType
+#define SCHEMA_IfcTaskType_HAS_PredefinedType
+#define SCHEMA_IfcTaskType_HAS_WorkMethod
+#define SCHEMA_IfcTaskType_WorkMethod_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTelecomAddress
+#define SCHEMA_IfcTelecomAddress_HAS_TelephoneNumbers
+#define SCHEMA_IfcTelecomAddress_TelephoneNumbers_IS_OPTIONAL
+#define SCHEMA_IfcTelecomAddress_HAS_FacsimileNumbers
+#define SCHEMA_IfcTelecomAddress_FacsimileNumbers_IS_OPTIONAL
+#define SCHEMA_IfcTelecomAddress_HAS_PagerNumber
+#define SCHEMA_IfcTelecomAddress_PagerNumber_IS_OPTIONAL
+#define SCHEMA_IfcTelecomAddress_HAS_ElectronicMailAddresses
+#define SCHEMA_IfcTelecomAddress_ElectronicMailAddresses_IS_OPTIONAL
+#define SCHEMA_IfcTelecomAddress_HAS_WWWHomePageURL
+#define SCHEMA_IfcTelecomAddress_WWWHomePageURL_IS_OPTIONAL
+#define SCHEMA_IfcTelecomAddress_HAS_MessagingIDs
+#define SCHEMA_IfcTelecomAddress_MessagingIDs_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTendon
+#define SCHEMA_IfcTendon_HAS_PredefinedType
+#define SCHEMA_IfcTendon_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcTendon_HAS_NominalDiameter
+#define SCHEMA_IfcTendon_NominalDiameter_IS_OPTIONAL
+#define SCHEMA_IfcTendon_HAS_CrossSectionArea
+#define SCHEMA_IfcTendon_CrossSectionArea_IS_OPTIONAL
+#define SCHEMA_IfcTendon_HAS_TensionForce
+#define SCHEMA_IfcTendon_TensionForce_IS_OPTIONAL
+#define SCHEMA_IfcTendon_HAS_PreStress
+#define SCHEMA_IfcTendon_PreStress_IS_OPTIONAL
+#define SCHEMA_IfcTendon_HAS_FrictionCoefficient
+#define SCHEMA_IfcTendon_FrictionCoefficient_IS_OPTIONAL
+#define SCHEMA_IfcTendon_HAS_AnchorageSlip
+#define SCHEMA_IfcTendon_AnchorageSlip_IS_OPTIONAL
+#define SCHEMA_IfcTendon_HAS_MinCurvatureRadius
+#define SCHEMA_IfcTendon_MinCurvatureRadius_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTendonAnchor
+#define SCHEMA_IfcTendonAnchor_HAS_PredefinedType
+#define SCHEMA_IfcTendonAnchor_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTendonAnchorType
+#define SCHEMA_IfcTendonAnchorType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcTendonConduit
+#define SCHEMA_IfcTendonConduit_HAS_PredefinedType
+#define SCHEMA_HAS_IfcTendonConduitType
+#define SCHEMA_IfcTendonConduitType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcTendonType
+#define SCHEMA_IfcTendonType_HAS_PredefinedType
+#define SCHEMA_IfcTendonType_HAS_NominalDiameter
+#define SCHEMA_IfcTendonType_NominalDiameter_IS_OPTIONAL
+#define SCHEMA_IfcTendonType_HAS_CrossSectionArea
+#define SCHEMA_IfcTendonType_CrossSectionArea_IS_OPTIONAL
+#define SCHEMA_IfcTendonType_HAS_SheathDiameter
+#define SCHEMA_IfcTendonType_SheathDiameter_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTessellatedFaceSet
+#define SCHEMA_IfcTessellatedFaceSet_HAS_Coordinates
+#define SCHEMA_IfcTessellatedFaceSet_HAS_HasColours
+#define SCHEMA_IfcTessellatedFaceSet_HAS_HasTextures
+#define SCHEMA_HAS_IfcTessellatedItem
+#define SCHEMA_HAS_IfcTextLiteral
+#define SCHEMA_IfcTextLiteral_HAS_Literal
+#define SCHEMA_IfcTextLiteral_HAS_Placement
+#define SCHEMA_IfcTextLiteral_HAS_Path
+#define SCHEMA_HAS_IfcTextLiteralWithExtent
+#define SCHEMA_IfcTextLiteralWithExtent_HAS_Extent
+#define SCHEMA_IfcTextLiteralWithExtent_HAS_BoxAlignment
+#define SCHEMA_HAS_IfcTextStyle
+#define SCHEMA_IfcTextStyle_HAS_TextCharacterAppearance
+#define SCHEMA_IfcTextStyle_TextCharacterAppearance_IS_OPTIONAL
+#define SCHEMA_IfcTextStyle_HAS_TextStyle
+#define SCHEMA_IfcTextStyle_TextStyle_IS_OPTIONAL
+#define SCHEMA_IfcTextStyle_HAS_TextFontStyle
+#define SCHEMA_IfcTextStyle_HAS_ModelOrDraughting
+#define SCHEMA_IfcTextStyle_ModelOrDraughting_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTextStyleFontModel
+#define SCHEMA_IfcTextStyleFontModel_HAS_FontFamily
+#define SCHEMA_IfcTextStyleFontModel_HAS_FontStyle
+#define SCHEMA_IfcTextStyleFontModel_FontStyle_IS_OPTIONAL
+#define SCHEMA_IfcTextStyleFontModel_HAS_FontVariant
+#define SCHEMA_IfcTextStyleFontModel_FontVariant_IS_OPTIONAL
+#define SCHEMA_IfcTextStyleFontModel_HAS_FontWeight
+#define SCHEMA_IfcTextStyleFontModel_FontWeight_IS_OPTIONAL
+#define SCHEMA_IfcTextStyleFontModel_HAS_FontSize
+#define SCHEMA_HAS_IfcTextStyleForDefinedFont
+#define SCHEMA_IfcTextStyleForDefinedFont_HAS_Colour
+#define SCHEMA_IfcTextStyleForDefinedFont_HAS_BackgroundColour
+#define SCHEMA_IfcTextStyleForDefinedFont_BackgroundColour_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTextStyleTextModel
+#define SCHEMA_IfcTextStyleTextModel_HAS_TextIndent
+#define SCHEMA_IfcTextStyleTextModel_TextIndent_IS_OPTIONAL
+#define SCHEMA_IfcTextStyleTextModel_HAS_TextAlign
+#define SCHEMA_IfcTextStyleTextModel_TextAlign_IS_OPTIONAL
+#define SCHEMA_IfcTextStyleTextModel_HAS_TextDecoration
+#define SCHEMA_IfcTextStyleTextModel_TextDecoration_IS_OPTIONAL
+#define SCHEMA_IfcTextStyleTextModel_HAS_LetterSpacing
+#define SCHEMA_IfcTextStyleTextModel_LetterSpacing_IS_OPTIONAL
+#define SCHEMA_IfcTextStyleTextModel_HAS_WordSpacing
+#define SCHEMA_IfcTextStyleTextModel_WordSpacing_IS_OPTIONAL
+#define SCHEMA_IfcTextStyleTextModel_HAS_TextTransform
+#define SCHEMA_IfcTextStyleTextModel_TextTransform_IS_OPTIONAL
+#define SCHEMA_IfcTextStyleTextModel_HAS_LineHeight
+#define SCHEMA_IfcTextStyleTextModel_LineHeight_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTextureCoordinate
+#define SCHEMA_IfcTextureCoordinate_HAS_Maps
+#define SCHEMA_HAS_IfcTextureCoordinateGenerator
+#define SCHEMA_IfcTextureCoordinateGenerator_HAS_Mode
+#define SCHEMA_IfcTextureCoordinateGenerator_HAS_Parameter
+#define SCHEMA_IfcTextureCoordinateGenerator_Parameter_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTextureCoordinateIndices
+#define SCHEMA_IfcTextureCoordinateIndices_HAS_TexCoordIndex
+#define SCHEMA_IfcTextureCoordinateIndices_HAS_TexCoordsOf
+#define SCHEMA_IfcTextureCoordinateIndices_HAS_ToTexMap
+#define SCHEMA_HAS_IfcTextureCoordinateIndicesWithVoids
+#define SCHEMA_IfcTextureCoordinateIndicesWithVoids_HAS_InnerTexCoordIndices
+#define SCHEMA_HAS_IfcTextureMap
+#define SCHEMA_IfcTextureMap_HAS_Vertices
+#define SCHEMA_IfcTextureMap_HAS_MappedTo
+#define SCHEMA_HAS_IfcTextureVertex
+#define SCHEMA_IfcTextureVertex_HAS_Coordinates
+#define SCHEMA_HAS_IfcTextureVertexList
+#define SCHEMA_IfcTextureVertexList_HAS_TexCoordsList
+#define SCHEMA_HAS_IfcThirdOrderPolynomialSpiral
+#define SCHEMA_IfcThirdOrderPolynomialSpiral_HAS_CubicTerm
+#define SCHEMA_IfcThirdOrderPolynomialSpiral_HAS_QuadraticTerm
+#define SCHEMA_IfcThirdOrderPolynomialSpiral_QuadraticTerm_IS_OPTIONAL
+#define SCHEMA_IfcThirdOrderPolynomialSpiral_HAS_LinearTerm
+#define SCHEMA_IfcThirdOrderPolynomialSpiral_LinearTerm_IS_OPTIONAL
+#define SCHEMA_IfcThirdOrderPolynomialSpiral_HAS_ConstantTerm
+#define SCHEMA_IfcThirdOrderPolynomialSpiral_ConstantTerm_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTimePeriod
+#define SCHEMA_IfcTimePeriod_HAS_StartTime
+#define SCHEMA_IfcTimePeriod_HAS_EndTime
+#define SCHEMA_HAS_IfcTimeSeries
+#define SCHEMA_IfcTimeSeries_HAS_Name
+#define SCHEMA_IfcTimeSeries_HAS_Description
+#define SCHEMA_IfcTimeSeries_Description_IS_OPTIONAL
+#define SCHEMA_IfcTimeSeries_HAS_StartTime
+#define SCHEMA_IfcTimeSeries_HAS_EndTime
+#define SCHEMA_IfcTimeSeries_HAS_TimeSeriesDataType
+#define SCHEMA_IfcTimeSeries_HAS_DataOrigin
+#define SCHEMA_IfcTimeSeries_HAS_UserDefinedDataOrigin
+#define SCHEMA_IfcTimeSeries_UserDefinedDataOrigin_IS_OPTIONAL
+#define SCHEMA_IfcTimeSeries_HAS_Unit
+#define SCHEMA_IfcTimeSeries_Unit_IS_OPTIONAL
+#define SCHEMA_IfcTimeSeries_HAS_HasExternalReference
+#define SCHEMA_HAS_IfcTimeSeriesValue
+#define SCHEMA_IfcTimeSeriesValue_HAS_ListValues
+#define SCHEMA_HAS_IfcTopologicalRepresentationItem
+#define SCHEMA_HAS_IfcTopologyRepresentation
+#define SCHEMA_HAS_IfcToroidalSurface
+#define SCHEMA_IfcToroidalSurface_HAS_MajorRadius
+#define SCHEMA_IfcToroidalSurface_HAS_MinorRadius
+#define SCHEMA_HAS_IfcTrackElement
+#define SCHEMA_IfcTrackElement_HAS_PredefinedType
+#define SCHEMA_IfcTrackElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTrackElementType
+#define SCHEMA_IfcTrackElementType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcTransformer
+#define SCHEMA_IfcTransformer_HAS_PredefinedType
+#define SCHEMA_IfcTransformer_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTransformerType
+#define SCHEMA_IfcTransformerType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcTransportElement
+#define SCHEMA_IfcTransportElement_HAS_PredefinedType
+#define SCHEMA_IfcTransportElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTransportElementType
+#define SCHEMA_IfcTransportElementType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcTransportationDevice
+#define SCHEMA_HAS_IfcTransportationDeviceType
+#define SCHEMA_HAS_IfcTrapeziumProfileDef
+#define SCHEMA_IfcTrapeziumProfileDef_HAS_BottomXDim
+#define SCHEMA_IfcTrapeziumProfileDef_HAS_TopXDim
+#define SCHEMA_IfcTrapeziumProfileDef_HAS_YDim
+#define SCHEMA_IfcTrapeziumProfileDef_HAS_TopXOffset
+#define SCHEMA_HAS_IfcTriangulatedFaceSet
+#define SCHEMA_IfcTriangulatedFaceSet_HAS_Normals
+#define SCHEMA_IfcTriangulatedFaceSet_Normals_IS_OPTIONAL
+#define SCHEMA_IfcTriangulatedFaceSet_HAS_Closed
+#define SCHEMA_IfcTriangulatedFaceSet_Closed_IS_OPTIONAL
+#define SCHEMA_IfcTriangulatedFaceSet_HAS_CoordIndex
+#define SCHEMA_IfcTriangulatedFaceSet_HAS_PnIndex
+#define SCHEMA_IfcTriangulatedFaceSet_PnIndex_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTriangulatedIrregularNetwork
+#define SCHEMA_IfcTriangulatedIrregularNetwork_HAS_Flags
+#define SCHEMA_HAS_IfcTrimmedCurve
+#define SCHEMA_IfcTrimmedCurve_HAS_BasisCurve
+#define SCHEMA_IfcTrimmedCurve_HAS_Trim1
+#define SCHEMA_IfcTrimmedCurve_HAS_Trim2
+#define SCHEMA_IfcTrimmedCurve_HAS_SenseAgreement
+#define SCHEMA_IfcTrimmedCurve_HAS_MasterRepresentation
+#define SCHEMA_HAS_IfcTubeBundle
+#define SCHEMA_IfcTubeBundle_HAS_PredefinedType
+#define SCHEMA_IfcTubeBundle_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcTubeBundleType
+#define SCHEMA_IfcTubeBundleType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcTypeObject
+#define SCHEMA_IfcTypeObject_HAS_ApplicableOccurrence
+#define SCHEMA_IfcTypeObject_ApplicableOccurrence_IS_OPTIONAL
+#define SCHEMA_IfcTypeObject_HAS_HasPropertySets
+#define SCHEMA_IfcTypeObject_HasPropertySets_IS_OPTIONAL
+#define SCHEMA_IfcTypeObject_HAS_Types
+#define SCHEMA_HAS_IfcTypeProcess
+#define SCHEMA_IfcTypeProcess_HAS_Identification
+#define SCHEMA_IfcTypeProcess_Identification_IS_OPTIONAL
+#define SCHEMA_IfcTypeProcess_HAS_LongDescription
+#define SCHEMA_IfcTypeProcess_LongDescription_IS_OPTIONAL
+#define SCHEMA_IfcTypeProcess_HAS_ProcessType
+#define SCHEMA_IfcTypeProcess_ProcessType_IS_OPTIONAL
+#define SCHEMA_IfcTypeProcess_HAS_OperatesOn
+#define SCHEMA_HAS_IfcTypeProduct
+#define SCHEMA_IfcTypeProduct_HAS_RepresentationMaps
+#define SCHEMA_IfcTypeProduct_RepresentationMaps_IS_OPTIONAL
+#define SCHEMA_IfcTypeProduct_HAS_Tag
+#define SCHEMA_IfcTypeProduct_Tag_IS_OPTIONAL
+#define SCHEMA_IfcTypeProduct_HAS_ReferencedBy
+#define SCHEMA_HAS_IfcTypeResource
+#define SCHEMA_IfcTypeResource_HAS_Identification
+#define SCHEMA_IfcTypeResource_Identification_IS_OPTIONAL
+#define SCHEMA_IfcTypeResource_HAS_LongDescription
+#define SCHEMA_IfcTypeResource_LongDescription_IS_OPTIONAL
+#define SCHEMA_IfcTypeResource_HAS_ResourceType
+#define SCHEMA_IfcTypeResource_ResourceType_IS_OPTIONAL
+#define SCHEMA_IfcTypeResource_HAS_ResourceOf
+#define SCHEMA_HAS_IfcUShapeProfileDef
+#define SCHEMA_IfcUShapeProfileDef_HAS_Depth
+#define SCHEMA_IfcUShapeProfileDef_HAS_FlangeWidth
+#define SCHEMA_IfcUShapeProfileDef_HAS_WebThickness
+#define SCHEMA_IfcUShapeProfileDef_HAS_FlangeThickness
+#define SCHEMA_IfcUShapeProfileDef_HAS_FilletRadius
+#define SCHEMA_IfcUShapeProfileDef_FilletRadius_IS_OPTIONAL
+#define SCHEMA_IfcUShapeProfileDef_HAS_EdgeRadius
+#define SCHEMA_IfcUShapeProfileDef_EdgeRadius_IS_OPTIONAL
+#define SCHEMA_IfcUShapeProfileDef_HAS_FlangeSlope
+#define SCHEMA_IfcUShapeProfileDef_FlangeSlope_IS_OPTIONAL
+#define SCHEMA_HAS_IfcUnitAssignment
+#define SCHEMA_IfcUnitAssignment_HAS_Units
+#define SCHEMA_HAS_IfcUnitaryControlElement
+#define SCHEMA_IfcUnitaryControlElement_HAS_PredefinedType
+#define SCHEMA_IfcUnitaryControlElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcUnitaryControlElementType
+#define SCHEMA_IfcUnitaryControlElementType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcUnitaryEquipment
+#define SCHEMA_IfcUnitaryEquipment_HAS_PredefinedType
+#define SCHEMA_IfcUnitaryEquipment_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcUnitaryEquipmentType
+#define SCHEMA_IfcUnitaryEquipmentType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcValve
+#define SCHEMA_IfcValve_HAS_PredefinedType
+#define SCHEMA_IfcValve_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcValveType
+#define SCHEMA_IfcValveType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcVector
+#define SCHEMA_IfcVector_HAS_Orientation
+#define SCHEMA_IfcVector_HAS_Magnitude
+#define SCHEMA_HAS_IfcVehicle
+#define SCHEMA_IfcVehicle_HAS_PredefinedType
+#define SCHEMA_IfcVehicle_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcVehicleType
+#define SCHEMA_IfcVehicleType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcVertex
+#define SCHEMA_HAS_IfcVertexLoop
+#define SCHEMA_IfcVertexLoop_HAS_LoopVertex
+#define SCHEMA_HAS_IfcVertexPoint
+#define SCHEMA_IfcVertexPoint_HAS_VertexGeometry
+#define SCHEMA_HAS_IfcVibrationDamper
+#define SCHEMA_IfcVibrationDamper_HAS_PredefinedType
+#define SCHEMA_IfcVibrationDamper_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcVibrationDamperType
+#define SCHEMA_IfcVibrationDamperType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcVibrationIsolator
+#define SCHEMA_IfcVibrationIsolator_HAS_PredefinedType
+#define SCHEMA_IfcVibrationIsolator_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcVibrationIsolatorType
+#define SCHEMA_IfcVibrationIsolatorType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcVirtualElement
+#define SCHEMA_IfcVirtualElement_HAS_PredefinedType
+#define SCHEMA_IfcVirtualElement_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcVirtualGridIntersection
+#define SCHEMA_IfcVirtualGridIntersection_HAS_IntersectingAxes
+#define SCHEMA_IfcVirtualGridIntersection_HAS_OffsetDistances
+#define SCHEMA_HAS_IfcVoidingFeature
+#define SCHEMA_IfcVoidingFeature_HAS_PredefinedType
+#define SCHEMA_IfcVoidingFeature_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWall
+#define SCHEMA_IfcWall_HAS_PredefinedType
+#define SCHEMA_IfcWall_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWallStandardCase
+#define SCHEMA_HAS_IfcWallType
+#define SCHEMA_IfcWallType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcWasteTerminal
+#define SCHEMA_IfcWasteTerminal_HAS_PredefinedType
+#define SCHEMA_IfcWasteTerminal_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWasteTerminalType
+#define SCHEMA_IfcWasteTerminalType_HAS_PredefinedType
+#define SCHEMA_HAS_IfcWellKnownText
+#define SCHEMA_IfcWellKnownText_HAS_WellKnownText
+#define SCHEMA_IfcWellKnownText_HAS_CoordinateReferenceSystem
+#define SCHEMA_HAS_IfcWindow
+#define SCHEMA_IfcWindow_HAS_OverallHeight
+#define SCHEMA_IfcWindow_OverallHeight_IS_OPTIONAL
+#define SCHEMA_IfcWindow_HAS_OverallWidth
+#define SCHEMA_IfcWindow_OverallWidth_IS_OPTIONAL
+#define SCHEMA_IfcWindow_HAS_PredefinedType
+#define SCHEMA_IfcWindow_PredefinedType_IS_OPTIONAL
+#define SCHEMA_IfcWindow_HAS_PartitioningType
+#define SCHEMA_IfcWindow_PartitioningType_IS_OPTIONAL
+#define SCHEMA_IfcWindow_HAS_UserDefinedPartitioningType
+#define SCHEMA_IfcWindow_UserDefinedPartitioningType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWindowLiningProperties
+#define SCHEMA_IfcWindowLiningProperties_HAS_LiningDepth
+#define SCHEMA_IfcWindowLiningProperties_LiningDepth_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_LiningThickness
+#define SCHEMA_IfcWindowLiningProperties_LiningThickness_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_TransomThickness
+#define SCHEMA_IfcWindowLiningProperties_TransomThickness_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_MullionThickness
+#define SCHEMA_IfcWindowLiningProperties_MullionThickness_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_FirstTransomOffset
+#define SCHEMA_IfcWindowLiningProperties_FirstTransomOffset_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_SecondTransomOffset
+#define SCHEMA_IfcWindowLiningProperties_SecondTransomOffset_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_FirstMullionOffset
+#define SCHEMA_IfcWindowLiningProperties_FirstMullionOffset_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_SecondMullionOffset
+#define SCHEMA_IfcWindowLiningProperties_SecondMullionOffset_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_ShapeAspectStyle
+#define SCHEMA_IfcWindowLiningProperties_ShapeAspectStyle_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_LiningOffset
+#define SCHEMA_IfcWindowLiningProperties_LiningOffset_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_LiningToPanelOffsetX
+#define SCHEMA_IfcWindowLiningProperties_LiningToPanelOffsetX_IS_OPTIONAL
+#define SCHEMA_IfcWindowLiningProperties_HAS_LiningToPanelOffsetY
+#define SCHEMA_IfcWindowLiningProperties_LiningToPanelOffsetY_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWindowPanelProperties
+#define SCHEMA_IfcWindowPanelProperties_HAS_OperationType
+#define SCHEMA_IfcWindowPanelProperties_HAS_PanelPosition
+#define SCHEMA_IfcWindowPanelProperties_HAS_FrameDepth
+#define SCHEMA_IfcWindowPanelProperties_FrameDepth_IS_OPTIONAL
+#define SCHEMA_IfcWindowPanelProperties_HAS_FrameThickness
+#define SCHEMA_IfcWindowPanelProperties_FrameThickness_IS_OPTIONAL
+#define SCHEMA_IfcWindowPanelProperties_HAS_ShapeAspectStyle
+#define SCHEMA_IfcWindowPanelProperties_ShapeAspectStyle_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWindowType
+#define SCHEMA_IfcWindowType_HAS_PredefinedType
+#define SCHEMA_IfcWindowType_HAS_PartitioningType
+#define SCHEMA_IfcWindowType_HAS_ParameterTakesPrecedence
+#define SCHEMA_IfcWindowType_ParameterTakesPrecedence_IS_OPTIONAL
+#define SCHEMA_IfcWindowType_HAS_UserDefinedPartitioningType
+#define SCHEMA_IfcWindowType_UserDefinedPartitioningType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWorkCalendar
+#define SCHEMA_IfcWorkCalendar_HAS_WorkingTimes
+#define SCHEMA_IfcWorkCalendar_WorkingTimes_IS_OPTIONAL
+#define SCHEMA_IfcWorkCalendar_HAS_ExceptionTimes
+#define SCHEMA_IfcWorkCalendar_ExceptionTimes_IS_OPTIONAL
+#define SCHEMA_IfcWorkCalendar_HAS_PredefinedType
+#define SCHEMA_IfcWorkCalendar_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWorkControl
+#define SCHEMA_IfcWorkControl_HAS_CreationDate
+#define SCHEMA_IfcWorkControl_HAS_Creators
+#define SCHEMA_IfcWorkControl_Creators_IS_OPTIONAL
+#define SCHEMA_IfcWorkControl_HAS_Purpose
+#define SCHEMA_IfcWorkControl_Purpose_IS_OPTIONAL
+#define SCHEMA_IfcWorkControl_HAS_Duration
+#define SCHEMA_IfcWorkControl_Duration_IS_OPTIONAL
+#define SCHEMA_IfcWorkControl_HAS_TotalFloat
+#define SCHEMA_IfcWorkControl_TotalFloat_IS_OPTIONAL
+#define SCHEMA_IfcWorkControl_HAS_StartTime
+#define SCHEMA_IfcWorkControl_HAS_FinishTime
+#define SCHEMA_IfcWorkControl_FinishTime_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWorkPlan
+#define SCHEMA_IfcWorkPlan_HAS_PredefinedType
+#define SCHEMA_IfcWorkPlan_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWorkSchedule
+#define SCHEMA_IfcWorkSchedule_HAS_PredefinedType
+#define SCHEMA_IfcWorkSchedule_PredefinedType_IS_OPTIONAL
+#define SCHEMA_HAS_IfcWorkTime
+#define SCHEMA_IfcWorkTime_HAS_RecurrencePattern
+#define SCHEMA_IfcWorkTime_RecurrencePattern_IS_OPTIONAL
+#define SCHEMA_IfcWorkTime_HAS_StartDate
+#define SCHEMA_IfcWorkTime_StartDate_IS_OPTIONAL
+#define SCHEMA_IfcWorkTime_HAS_FinishDate
+#define SCHEMA_IfcWorkTime_FinishDate_IS_OPTIONAL
+#define SCHEMA_HAS_IfcZShapeProfileDef
+#define SCHEMA_IfcZShapeProfileDef_HAS_Depth
+#define SCHEMA_IfcZShapeProfileDef_HAS_FlangeWidth
+#define SCHEMA_IfcZShapeProfileDef_HAS_WebThickness
+#define SCHEMA_IfcZShapeProfileDef_HAS_FlangeThickness
+#define SCHEMA_IfcZShapeProfileDef_HAS_FilletRadius
+#define SCHEMA_IfcZShapeProfileDef_FilletRadius_IS_OPTIONAL
+#define SCHEMA_IfcZShapeProfileDef_HAS_EdgeRadius
+#define SCHEMA_IfcZShapeProfileDef_EdgeRadius_IS_OPTIONAL
+#define SCHEMA_HAS_IfcZone
+#define SCHEMA_IfcZone_HAS_LongName
+#define SCHEMA_IfcZone_LongName_IS_OPTIONAL
diff --git a/src/ifcparse/Ifc4x3_add1-schema.cpp b/src/ifcparse/Ifc4x3_add1-schema.cpp
new file mode 100644
index 0000000000..c34c297eb8
--- /dev/null
+++ b/src/ifcparse/Ifc4x3_add1-schema.cpp
@@ -0,0 +1,17080 @@
+/********************************************************************************
+ * *
+ * This file is part of IfcOpenShell. *
+ * *
+ * IfcOpenShell is free software: you can redistribute it and/or modify *
+ * it under the terms of the Lesser GNU General Public License as published by *
+ * the Free Software Foundation, either version 3.0 of the License, or *
+ * (at your option) any later version. *
+ * *
+ * IfcOpenShell is distributed in the hope that it will be useful, *
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of *
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
+ * Lesser GNU General Public License for more details. *
+ * *
+ * You should have received a copy of the Lesser GNU General Public License *
+ * along with this program. If not, see . *
+ * *
+ ********************************************************************************/
+
+/********************************************************************************
+ * *
+ * This file has been generated from IFC4X3_ADD1.exp. Do not make modifications *
+ * but instead modify the python script that has been used to generate this. *
+ * *
+ ********************************************************************************/
+
+#include "../ifcparse/IfcSchema.h"
+#include "../ifcparse/Ifc4x3_add1.h"
+
+using namespace IfcParse;
+
+entity* IFC4X3_ADD1_IfcActionRequest_type = 0;
+entity* IFC4X3_ADD1_IfcActor_type = 0;
+entity* IFC4X3_ADD1_IfcActorRole_type = 0;
+entity* IFC4X3_ADD1_IfcActuator_type = 0;
+entity* IFC4X3_ADD1_IfcActuatorType_type = 0;
+entity* IFC4X3_ADD1_IfcAddress_type = 0;
+entity* IFC4X3_ADD1_IfcAdvancedBrep_type = 0;
+entity* IFC4X3_ADD1_IfcAdvancedBrepWithVoids_type = 0;
+entity* IFC4X3_ADD1_IfcAdvancedFace_type = 0;
+entity* IFC4X3_ADD1_IfcAirTerminal_type = 0;
+entity* IFC4X3_ADD1_IfcAirTerminalBox_type = 0;
+entity* IFC4X3_ADD1_IfcAirTerminalBoxType_type = 0;
+entity* IFC4X3_ADD1_IfcAirTerminalType_type = 0;
+entity* IFC4X3_ADD1_IfcAirToAirHeatRecovery_type = 0;
+entity* IFC4X3_ADD1_IfcAirToAirHeatRecoveryType_type = 0;
+entity* IFC4X3_ADD1_IfcAlarm_type = 0;
+entity* IFC4X3_ADD1_IfcAlarmType_type = 0;
+entity* IFC4X3_ADD1_IfcAlignment_type = 0;
+entity* IFC4X3_ADD1_IfcAlignmentCant_type = 0;
+entity* IFC4X3_ADD1_IfcAlignmentCantSegment_type = 0;
+entity* IFC4X3_ADD1_IfcAlignmentHorizontal_type = 0;
+entity* IFC4X3_ADD1_IfcAlignmentHorizontalSegment_type = 0;
+entity* IFC4X3_ADD1_IfcAlignmentParameterSegment_type = 0;
+entity* IFC4X3_ADD1_IfcAlignmentSegment_type = 0;
+entity* IFC4X3_ADD1_IfcAlignmentVertical_type = 0;
+entity* IFC4X3_ADD1_IfcAlignmentVerticalSegment_type = 0;
+entity* IFC4X3_ADD1_IfcAnnotation_type = 0;
+entity* IFC4X3_ADD1_IfcAnnotationFillArea_type = 0;
+entity* IFC4X3_ADD1_IfcApplication_type = 0;
+entity* IFC4X3_ADD1_IfcAppliedValue_type = 0;
+entity* IFC4X3_ADD1_IfcApproval_type = 0;
+entity* IFC4X3_ADD1_IfcApprovalRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcArbitraryClosedProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcArbitraryOpenProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcArbitraryProfileDefWithVoids_type = 0;
+entity* IFC4X3_ADD1_IfcAsset_type = 0;
+entity* IFC4X3_ADD1_IfcAsymmetricIShapeProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcAudioVisualAppliance_type = 0;
+entity* IFC4X3_ADD1_IfcAudioVisualApplianceType_type = 0;
+entity* IFC4X3_ADD1_IfcAxis1Placement_type = 0;
+entity* IFC4X3_ADD1_IfcAxis2Placement2D_type = 0;
+entity* IFC4X3_ADD1_IfcAxis2Placement3D_type = 0;
+entity* IFC4X3_ADD1_IfcAxis2PlacementLinear_type = 0;
+entity* IFC4X3_ADD1_IfcBSplineCurve_type = 0;
+entity* IFC4X3_ADD1_IfcBSplineCurveWithKnots_type = 0;
+entity* IFC4X3_ADD1_IfcBSplineSurface_type = 0;
+entity* IFC4X3_ADD1_IfcBSplineSurfaceWithKnots_type = 0;
+entity* IFC4X3_ADD1_IfcBeam_type = 0;
+entity* IFC4X3_ADD1_IfcBeamType_type = 0;
+entity* IFC4X3_ADD1_IfcBearing_type = 0;
+entity* IFC4X3_ADD1_IfcBearingType_type = 0;
+entity* IFC4X3_ADD1_IfcBlobTexture_type = 0;
+entity* IFC4X3_ADD1_IfcBlock_type = 0;
+entity* IFC4X3_ADD1_IfcBoiler_type = 0;
+entity* IFC4X3_ADD1_IfcBoilerType_type = 0;
+entity* IFC4X3_ADD1_IfcBooleanClippingResult_type = 0;
+entity* IFC4X3_ADD1_IfcBooleanResult_type = 0;
+entity* IFC4X3_ADD1_IfcBorehole_type = 0;
+entity* IFC4X3_ADD1_IfcBoundaryCondition_type = 0;
+entity* IFC4X3_ADD1_IfcBoundaryCurve_type = 0;
+entity* IFC4X3_ADD1_IfcBoundaryEdgeCondition_type = 0;
+entity* IFC4X3_ADD1_IfcBoundaryFaceCondition_type = 0;
+entity* IFC4X3_ADD1_IfcBoundaryNodeCondition_type = 0;
+entity* IFC4X3_ADD1_IfcBoundaryNodeConditionWarping_type = 0;
+entity* IFC4X3_ADD1_IfcBoundedCurve_type = 0;
+entity* IFC4X3_ADD1_IfcBoundedSurface_type = 0;
+entity* IFC4X3_ADD1_IfcBoundingBox_type = 0;
+entity* IFC4X3_ADD1_IfcBoxedHalfSpace_type = 0;
+entity* IFC4X3_ADD1_IfcBridge_type = 0;
+entity* IFC4X3_ADD1_IfcBridgePart_type = 0;
+entity* IFC4X3_ADD1_IfcBuilding_type = 0;
+entity* IFC4X3_ADD1_IfcBuildingElementPart_type = 0;
+entity* IFC4X3_ADD1_IfcBuildingElementPartType_type = 0;
+entity* IFC4X3_ADD1_IfcBuildingElementProxy_type = 0;
+entity* IFC4X3_ADD1_IfcBuildingElementProxyType_type = 0;
+entity* IFC4X3_ADD1_IfcBuildingStorey_type = 0;
+entity* IFC4X3_ADD1_IfcBuildingSystem_type = 0;
+entity* IFC4X3_ADD1_IfcBuiltElement_type = 0;
+entity* IFC4X3_ADD1_IfcBuiltElementType_type = 0;
+entity* IFC4X3_ADD1_IfcBuiltSystem_type = 0;
+entity* IFC4X3_ADD1_IfcBurner_type = 0;
+entity* IFC4X3_ADD1_IfcBurnerType_type = 0;
+entity* IFC4X3_ADD1_IfcCShapeProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcCableCarrierFitting_type = 0;
+entity* IFC4X3_ADD1_IfcCableCarrierFittingType_type = 0;
+entity* IFC4X3_ADD1_IfcCableCarrierSegment_type = 0;
+entity* IFC4X3_ADD1_IfcCableCarrierSegmentType_type = 0;
+entity* IFC4X3_ADD1_IfcCableFitting_type = 0;
+entity* IFC4X3_ADD1_IfcCableFittingType_type = 0;
+entity* IFC4X3_ADD1_IfcCableSegment_type = 0;
+entity* IFC4X3_ADD1_IfcCableSegmentType_type = 0;
+entity* IFC4X3_ADD1_IfcCaissonFoundation_type = 0;
+entity* IFC4X3_ADD1_IfcCaissonFoundationType_type = 0;
+entity* IFC4X3_ADD1_IfcCartesianPoint_type = 0;
+entity* IFC4X3_ADD1_IfcCartesianPointList_type = 0;
+entity* IFC4X3_ADD1_IfcCartesianPointList2D_type = 0;
+entity* IFC4X3_ADD1_IfcCartesianPointList3D_type = 0;
+entity* IFC4X3_ADD1_IfcCartesianTransformationOperator_type = 0;
+entity* IFC4X3_ADD1_IfcCartesianTransformationOperator2D_type = 0;
+entity* IFC4X3_ADD1_IfcCartesianTransformationOperator2DnonUniform_type = 0;
+entity* IFC4X3_ADD1_IfcCartesianTransformationOperator3D_type = 0;
+entity* IFC4X3_ADD1_IfcCartesianTransformationOperator3DnonUniform_type = 0;
+entity* IFC4X3_ADD1_IfcCenterLineProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcChiller_type = 0;
+entity* IFC4X3_ADD1_IfcChillerType_type = 0;
+entity* IFC4X3_ADD1_IfcChimney_type = 0;
+entity* IFC4X3_ADD1_IfcChimneyType_type = 0;
+entity* IFC4X3_ADD1_IfcCircle_type = 0;
+entity* IFC4X3_ADD1_IfcCircleHollowProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcCircleProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcCivilElement_type = 0;
+entity* IFC4X3_ADD1_IfcCivilElementType_type = 0;
+entity* IFC4X3_ADD1_IfcClassification_type = 0;
+entity* IFC4X3_ADD1_IfcClassificationReference_type = 0;
+entity* IFC4X3_ADD1_IfcClosedShell_type = 0;
+entity* IFC4X3_ADD1_IfcClothoid_type = 0;
+entity* IFC4X3_ADD1_IfcCoil_type = 0;
+entity* IFC4X3_ADD1_IfcCoilType_type = 0;
+entity* IFC4X3_ADD1_IfcColourRgb_type = 0;
+entity* IFC4X3_ADD1_IfcColourRgbList_type = 0;
+entity* IFC4X3_ADD1_IfcColourSpecification_type = 0;
+entity* IFC4X3_ADD1_IfcColumn_type = 0;
+entity* IFC4X3_ADD1_IfcColumnType_type = 0;
+entity* IFC4X3_ADD1_IfcCommunicationsAppliance_type = 0;
+entity* IFC4X3_ADD1_IfcCommunicationsApplianceType_type = 0;
+entity* IFC4X3_ADD1_IfcComplexProperty_type = 0;
+entity* IFC4X3_ADD1_IfcComplexPropertyTemplate_type = 0;
+entity* IFC4X3_ADD1_IfcCompositeCurve_type = 0;
+entity* IFC4X3_ADD1_IfcCompositeCurveOnSurface_type = 0;
+entity* IFC4X3_ADD1_IfcCompositeCurveSegment_type = 0;
+entity* IFC4X3_ADD1_IfcCompositeProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcCompressor_type = 0;
+entity* IFC4X3_ADD1_IfcCompressorType_type = 0;
+entity* IFC4X3_ADD1_IfcCondenser_type = 0;
+entity* IFC4X3_ADD1_IfcCondenserType_type = 0;
+entity* IFC4X3_ADD1_IfcConic_type = 0;
+entity* IFC4X3_ADD1_IfcConnectedFaceSet_type = 0;
+entity* IFC4X3_ADD1_IfcConnectionCurveGeometry_type = 0;
+entity* IFC4X3_ADD1_IfcConnectionGeometry_type = 0;
+entity* IFC4X3_ADD1_IfcConnectionPointEccentricity_type = 0;
+entity* IFC4X3_ADD1_IfcConnectionPointGeometry_type = 0;
+entity* IFC4X3_ADD1_IfcConnectionSurfaceGeometry_type = 0;
+entity* IFC4X3_ADD1_IfcConnectionVolumeGeometry_type = 0;
+entity* IFC4X3_ADD1_IfcConstraint_type = 0;
+entity* IFC4X3_ADD1_IfcConstructionEquipmentResource_type = 0;
+entity* IFC4X3_ADD1_IfcConstructionEquipmentResourceType_type = 0;
+entity* IFC4X3_ADD1_IfcConstructionMaterialResource_type = 0;
+entity* IFC4X3_ADD1_IfcConstructionMaterialResourceType_type = 0;
+entity* IFC4X3_ADD1_IfcConstructionProductResource_type = 0;
+entity* IFC4X3_ADD1_IfcConstructionProductResourceType_type = 0;
+entity* IFC4X3_ADD1_IfcConstructionResource_type = 0;
+entity* IFC4X3_ADD1_IfcConstructionResourceType_type = 0;
+entity* IFC4X3_ADD1_IfcContext_type = 0;
+entity* IFC4X3_ADD1_IfcContextDependentUnit_type = 0;
+entity* IFC4X3_ADD1_IfcControl_type = 0;
+entity* IFC4X3_ADD1_IfcController_type = 0;
+entity* IFC4X3_ADD1_IfcControllerType_type = 0;
+entity* IFC4X3_ADD1_IfcConversionBasedUnit_type = 0;
+entity* IFC4X3_ADD1_IfcConversionBasedUnitWithOffset_type = 0;
+entity* IFC4X3_ADD1_IfcConveyorSegment_type = 0;
+entity* IFC4X3_ADD1_IfcConveyorSegmentType_type = 0;
+entity* IFC4X3_ADD1_IfcCooledBeam_type = 0;
+entity* IFC4X3_ADD1_IfcCooledBeamType_type = 0;
+entity* IFC4X3_ADD1_IfcCoolingTower_type = 0;
+entity* IFC4X3_ADD1_IfcCoolingTowerType_type = 0;
+entity* IFC4X3_ADD1_IfcCoordinateOperation_type = 0;
+entity* IFC4X3_ADD1_IfcCoordinateReferenceSystem_type = 0;
+entity* IFC4X3_ADD1_IfcCosineSpiral_type = 0;
+entity* IFC4X3_ADD1_IfcCostItem_type = 0;
+entity* IFC4X3_ADD1_IfcCostSchedule_type = 0;
+entity* IFC4X3_ADD1_IfcCostValue_type = 0;
+entity* IFC4X3_ADD1_IfcCourse_type = 0;
+entity* IFC4X3_ADD1_IfcCourseType_type = 0;
+entity* IFC4X3_ADD1_IfcCovering_type = 0;
+entity* IFC4X3_ADD1_IfcCoveringType_type = 0;
+entity* IFC4X3_ADD1_IfcCrewResource_type = 0;
+entity* IFC4X3_ADD1_IfcCrewResourceType_type = 0;
+entity* IFC4X3_ADD1_IfcCsgPrimitive3D_type = 0;
+entity* IFC4X3_ADD1_IfcCsgSolid_type = 0;
+entity* IFC4X3_ADD1_IfcCurrencyRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcCurtainWall_type = 0;
+entity* IFC4X3_ADD1_IfcCurtainWallType_type = 0;
+entity* IFC4X3_ADD1_IfcCurve_type = 0;
+entity* IFC4X3_ADD1_IfcCurveBoundedPlane_type = 0;
+entity* IFC4X3_ADD1_IfcCurveBoundedSurface_type = 0;
+entity* IFC4X3_ADD1_IfcCurveSegment_type = 0;
+entity* IFC4X3_ADD1_IfcCurveStyle_type = 0;
+entity* IFC4X3_ADD1_IfcCurveStyleFont_type = 0;
+entity* IFC4X3_ADD1_IfcCurveStyleFontAndScaling_type = 0;
+entity* IFC4X3_ADD1_IfcCurveStyleFontPattern_type = 0;
+entity* IFC4X3_ADD1_IfcCylindricalSurface_type = 0;
+entity* IFC4X3_ADD1_IfcDamper_type = 0;
+entity* IFC4X3_ADD1_IfcDamperType_type = 0;
+entity* IFC4X3_ADD1_IfcDeepFoundation_type = 0;
+entity* IFC4X3_ADD1_IfcDeepFoundationType_type = 0;
+entity* IFC4X3_ADD1_IfcDerivedProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcDerivedUnit_type = 0;
+entity* IFC4X3_ADD1_IfcDerivedUnitElement_type = 0;
+entity* IFC4X3_ADD1_IfcDimensionalExponents_type = 0;
+entity* IFC4X3_ADD1_IfcDirection_type = 0;
+entity* IFC4X3_ADD1_IfcDirectrixCurveSweptAreaSolid_type = 0;
+entity* IFC4X3_ADD1_IfcDirectrixDerivedReferenceSweptAreaSolid_type = 0;
+entity* IFC4X3_ADD1_IfcDiscreteAccessory_type = 0;
+entity* IFC4X3_ADD1_IfcDiscreteAccessoryType_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionBoard_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionBoardType_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionChamberElement_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionChamberElementType_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionCircuit_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionControlElement_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionControlElementType_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionElement_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionElementType_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionFlowElement_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionFlowElementType_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionPort_type = 0;
+entity* IFC4X3_ADD1_IfcDistributionSystem_type = 0;
+entity* IFC4X3_ADD1_IfcDocumentInformation_type = 0;
+entity* IFC4X3_ADD1_IfcDocumentInformationRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcDocumentReference_type = 0;
+entity* IFC4X3_ADD1_IfcDoor_type = 0;
+entity* IFC4X3_ADD1_IfcDoorLiningProperties_type = 0;
+entity* IFC4X3_ADD1_IfcDoorPanelProperties_type = 0;
+entity* IFC4X3_ADD1_IfcDoorType_type = 0;
+entity* IFC4X3_ADD1_IfcDraughtingPreDefinedColour_type = 0;
+entity* IFC4X3_ADD1_IfcDraughtingPreDefinedCurveFont_type = 0;
+entity* IFC4X3_ADD1_IfcDuctFitting_type = 0;
+entity* IFC4X3_ADD1_IfcDuctFittingType_type = 0;
+entity* IFC4X3_ADD1_IfcDuctSegment_type = 0;
+entity* IFC4X3_ADD1_IfcDuctSegmentType_type = 0;
+entity* IFC4X3_ADD1_IfcDuctSilencer_type = 0;
+entity* IFC4X3_ADD1_IfcDuctSilencerType_type = 0;
+entity* IFC4X3_ADD1_IfcEarthworksCut_type = 0;
+entity* IFC4X3_ADD1_IfcEarthworksElement_type = 0;
+entity* IFC4X3_ADD1_IfcEarthworksFill_type = 0;
+entity* IFC4X3_ADD1_IfcEdge_type = 0;
+entity* IFC4X3_ADD1_IfcEdgeCurve_type = 0;
+entity* IFC4X3_ADD1_IfcEdgeLoop_type = 0;
+entity* IFC4X3_ADD1_IfcElectricAppliance_type = 0;
+entity* IFC4X3_ADD1_IfcElectricApplianceType_type = 0;
+entity* IFC4X3_ADD1_IfcElectricDistributionBoard_type = 0;
+entity* IFC4X3_ADD1_IfcElectricDistributionBoardType_type = 0;
+entity* IFC4X3_ADD1_IfcElectricFlowStorageDevice_type = 0;
+entity* IFC4X3_ADD1_IfcElectricFlowStorageDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcElectricFlowTreatmentDevice_type = 0;
+entity* IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcElectricGenerator_type = 0;
+entity* IFC4X3_ADD1_IfcElectricGeneratorType_type = 0;
+entity* IFC4X3_ADD1_IfcElectricMotor_type = 0;
+entity* IFC4X3_ADD1_IfcElectricMotorType_type = 0;
+entity* IFC4X3_ADD1_IfcElectricTimeControl_type = 0;
+entity* IFC4X3_ADD1_IfcElectricTimeControlType_type = 0;
+entity* IFC4X3_ADD1_IfcElement_type = 0;
+entity* IFC4X3_ADD1_IfcElementAssembly_type = 0;
+entity* IFC4X3_ADD1_IfcElementAssemblyType_type = 0;
+entity* IFC4X3_ADD1_IfcElementComponent_type = 0;
+entity* IFC4X3_ADD1_IfcElementComponentType_type = 0;
+entity* IFC4X3_ADD1_IfcElementQuantity_type = 0;
+entity* IFC4X3_ADD1_IfcElementType_type = 0;
+entity* IFC4X3_ADD1_IfcElementarySurface_type = 0;
+entity* IFC4X3_ADD1_IfcEllipse_type = 0;
+entity* IFC4X3_ADD1_IfcEllipseProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcEnergyConversionDevice_type = 0;
+entity* IFC4X3_ADD1_IfcEnergyConversionDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcEngine_type = 0;
+entity* IFC4X3_ADD1_IfcEngineType_type = 0;
+entity* IFC4X3_ADD1_IfcEvaporativeCooler_type = 0;
+entity* IFC4X3_ADD1_IfcEvaporativeCoolerType_type = 0;
+entity* IFC4X3_ADD1_IfcEvaporator_type = 0;
+entity* IFC4X3_ADD1_IfcEvaporatorType_type = 0;
+entity* IFC4X3_ADD1_IfcEvent_type = 0;
+entity* IFC4X3_ADD1_IfcEventTime_type = 0;
+entity* IFC4X3_ADD1_IfcEventType_type = 0;
+entity* IFC4X3_ADD1_IfcExtendedProperties_type = 0;
+entity* IFC4X3_ADD1_IfcExternalInformation_type = 0;
+entity* IFC4X3_ADD1_IfcExternalReference_type = 0;
+entity* IFC4X3_ADD1_IfcExternalReferenceRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcExternalSpatialElement_type = 0;
+entity* IFC4X3_ADD1_IfcExternalSpatialStructureElement_type = 0;
+entity* IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type = 0;
+entity* IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type = 0;
+entity* IFC4X3_ADD1_IfcExternallyDefinedTextFont_type = 0;
+entity* IFC4X3_ADD1_IfcExtrudedAreaSolid_type = 0;
+entity* IFC4X3_ADD1_IfcExtrudedAreaSolidTapered_type = 0;
+entity* IFC4X3_ADD1_IfcFace_type = 0;
+entity* IFC4X3_ADD1_IfcFaceBasedSurfaceModel_type = 0;
+entity* IFC4X3_ADD1_IfcFaceBound_type = 0;
+entity* IFC4X3_ADD1_IfcFaceOuterBound_type = 0;
+entity* IFC4X3_ADD1_IfcFaceSurface_type = 0;
+entity* IFC4X3_ADD1_IfcFacetedBrep_type = 0;
+entity* IFC4X3_ADD1_IfcFacetedBrepWithVoids_type = 0;
+entity* IFC4X3_ADD1_IfcFacility_type = 0;
+entity* IFC4X3_ADD1_IfcFacilityPart_type = 0;
+entity* IFC4X3_ADD1_IfcFacilityPartCommon_type = 0;
+entity* IFC4X3_ADD1_IfcFailureConnectionCondition_type = 0;
+entity* IFC4X3_ADD1_IfcFan_type = 0;
+entity* IFC4X3_ADD1_IfcFanType_type = 0;
+entity* IFC4X3_ADD1_IfcFastener_type = 0;
+entity* IFC4X3_ADD1_IfcFastenerType_type = 0;
+entity* IFC4X3_ADD1_IfcFeatureElement_type = 0;
+entity* IFC4X3_ADD1_IfcFeatureElementAddition_type = 0;
+entity* IFC4X3_ADD1_IfcFeatureElementSubtraction_type = 0;
+entity* IFC4X3_ADD1_IfcFillAreaStyle_type = 0;
+entity* IFC4X3_ADD1_IfcFillAreaStyleHatching_type = 0;
+entity* IFC4X3_ADD1_IfcFillAreaStyleTiles_type = 0;
+entity* IFC4X3_ADD1_IfcFilter_type = 0;
+entity* IFC4X3_ADD1_IfcFilterType_type = 0;
+entity* IFC4X3_ADD1_IfcFireSuppressionTerminal_type = 0;
+entity* IFC4X3_ADD1_IfcFireSuppressionTerminalType_type = 0;
+entity* IFC4X3_ADD1_IfcFixedReferenceSweptAreaSolid_type = 0;
+entity* IFC4X3_ADD1_IfcFlowController_type = 0;
+entity* IFC4X3_ADD1_IfcFlowControllerType_type = 0;
+entity* IFC4X3_ADD1_IfcFlowFitting_type = 0;
+entity* IFC4X3_ADD1_IfcFlowFittingType_type = 0;
+entity* IFC4X3_ADD1_IfcFlowInstrument_type = 0;
+entity* IFC4X3_ADD1_IfcFlowInstrumentType_type = 0;
+entity* IFC4X3_ADD1_IfcFlowMeter_type = 0;
+entity* IFC4X3_ADD1_IfcFlowMeterType_type = 0;
+entity* IFC4X3_ADD1_IfcFlowMovingDevice_type = 0;
+entity* IFC4X3_ADD1_IfcFlowMovingDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcFlowSegment_type = 0;
+entity* IFC4X3_ADD1_IfcFlowSegmentType_type = 0;
+entity* IFC4X3_ADD1_IfcFlowStorageDevice_type = 0;
+entity* IFC4X3_ADD1_IfcFlowStorageDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcFlowTerminal_type = 0;
+entity* IFC4X3_ADD1_IfcFlowTerminalType_type = 0;
+entity* IFC4X3_ADD1_IfcFlowTreatmentDevice_type = 0;
+entity* IFC4X3_ADD1_IfcFlowTreatmentDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcFooting_type = 0;
+entity* IFC4X3_ADD1_IfcFootingType_type = 0;
+entity* IFC4X3_ADD1_IfcFurnishingElement_type = 0;
+entity* IFC4X3_ADD1_IfcFurnishingElementType_type = 0;
+entity* IFC4X3_ADD1_IfcFurniture_type = 0;
+entity* IFC4X3_ADD1_IfcFurnitureType_type = 0;
+entity* IFC4X3_ADD1_IfcGeographicCRS_type = 0;
+entity* IFC4X3_ADD1_IfcGeographicElement_type = 0;
+entity* IFC4X3_ADD1_IfcGeographicElementType_type = 0;
+entity* IFC4X3_ADD1_IfcGeometricCurveSet_type = 0;
+entity* IFC4X3_ADD1_IfcGeometricRepresentationContext_type = 0;
+entity* IFC4X3_ADD1_IfcGeometricRepresentationItem_type = 0;
+entity* IFC4X3_ADD1_IfcGeometricRepresentationSubContext_type = 0;
+entity* IFC4X3_ADD1_IfcGeometricSet_type = 0;
+entity* IFC4X3_ADD1_IfcGeomodel_type = 0;
+entity* IFC4X3_ADD1_IfcGeoslice_type = 0;
+entity* IFC4X3_ADD1_IfcGeotechnicalAssembly_type = 0;
+entity* IFC4X3_ADD1_IfcGeotechnicalElement_type = 0;
+entity* IFC4X3_ADD1_IfcGeotechnicalStratum_type = 0;
+entity* IFC4X3_ADD1_IfcGradientCurve_type = 0;
+entity* IFC4X3_ADD1_IfcGrid_type = 0;
+entity* IFC4X3_ADD1_IfcGridAxis_type = 0;
+entity* IFC4X3_ADD1_IfcGridPlacement_type = 0;
+entity* IFC4X3_ADD1_IfcGroup_type = 0;
+entity* IFC4X3_ADD1_IfcHalfSpaceSolid_type = 0;
+entity* IFC4X3_ADD1_IfcHeatExchanger_type = 0;
+entity* IFC4X3_ADD1_IfcHeatExchangerType_type = 0;
+entity* IFC4X3_ADD1_IfcHumidifier_type = 0;
+entity* IFC4X3_ADD1_IfcHumidifierType_type = 0;
+entity* IFC4X3_ADD1_IfcIShapeProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcImageTexture_type = 0;
+entity* IFC4X3_ADD1_IfcImpactProtectionDevice_type = 0;
+entity* IFC4X3_ADD1_IfcImpactProtectionDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcIndexedColourMap_type = 0;
+entity* IFC4X3_ADD1_IfcIndexedPolyCurve_type = 0;
+entity* IFC4X3_ADD1_IfcIndexedPolygonalFace_type = 0;
+entity* IFC4X3_ADD1_IfcIndexedPolygonalFaceWithVoids_type = 0;
+entity* IFC4X3_ADD1_IfcIndexedPolygonalTextureMap_type = 0;
+entity* IFC4X3_ADD1_IfcIndexedTextureMap_type = 0;
+entity* IFC4X3_ADD1_IfcIndexedTriangleTextureMap_type = 0;
+entity* IFC4X3_ADD1_IfcInterceptor_type = 0;
+entity* IFC4X3_ADD1_IfcInterceptorType_type = 0;
+entity* IFC4X3_ADD1_IfcIntersectionCurve_type = 0;
+entity* IFC4X3_ADD1_IfcInventory_type = 0;
+entity* IFC4X3_ADD1_IfcIrregularTimeSeries_type = 0;
+entity* IFC4X3_ADD1_IfcIrregularTimeSeriesValue_type = 0;
+entity* IFC4X3_ADD1_IfcJunctionBox_type = 0;
+entity* IFC4X3_ADD1_IfcJunctionBoxType_type = 0;
+entity* IFC4X3_ADD1_IfcKerb_type = 0;
+entity* IFC4X3_ADD1_IfcKerbType_type = 0;
+entity* IFC4X3_ADD1_IfcLShapeProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcLaborResource_type = 0;
+entity* IFC4X3_ADD1_IfcLaborResourceType_type = 0;
+entity* IFC4X3_ADD1_IfcLagTime_type = 0;
+entity* IFC4X3_ADD1_IfcLamp_type = 0;
+entity* IFC4X3_ADD1_IfcLampType_type = 0;
+entity* IFC4X3_ADD1_IfcLibraryInformation_type = 0;
+entity* IFC4X3_ADD1_IfcLibraryReference_type = 0;
+entity* IFC4X3_ADD1_IfcLightDistributionData_type = 0;
+entity* IFC4X3_ADD1_IfcLightFixture_type = 0;
+entity* IFC4X3_ADD1_IfcLightFixtureType_type = 0;
+entity* IFC4X3_ADD1_IfcLightIntensityDistribution_type = 0;
+entity* IFC4X3_ADD1_IfcLightSource_type = 0;
+entity* IFC4X3_ADD1_IfcLightSourceAmbient_type = 0;
+entity* IFC4X3_ADD1_IfcLightSourceDirectional_type = 0;
+entity* IFC4X3_ADD1_IfcLightSourceGoniometric_type = 0;
+entity* IFC4X3_ADD1_IfcLightSourcePositional_type = 0;
+entity* IFC4X3_ADD1_IfcLightSourceSpot_type = 0;
+entity* IFC4X3_ADD1_IfcLine_type = 0;
+entity* IFC4X3_ADD1_IfcLinearElement_type = 0;
+entity* IFC4X3_ADD1_IfcLinearPlacement_type = 0;
+entity* IFC4X3_ADD1_IfcLinearPositioningElement_type = 0;
+entity* IFC4X3_ADD1_IfcLiquidTerminal_type = 0;
+entity* IFC4X3_ADD1_IfcLiquidTerminalType_type = 0;
+entity* IFC4X3_ADD1_IfcLocalPlacement_type = 0;
+entity* IFC4X3_ADD1_IfcLoop_type = 0;
+entity* IFC4X3_ADD1_IfcManifoldSolidBrep_type = 0;
+entity* IFC4X3_ADD1_IfcMapConversion_type = 0;
+entity* IFC4X3_ADD1_IfcMapConversionScaled_type = 0;
+entity* IFC4X3_ADD1_IfcMappedItem_type = 0;
+entity* IFC4X3_ADD1_IfcMarineFacility_type = 0;
+entity* IFC4X3_ADD1_IfcMarinePart_type = 0;
+entity* IFC4X3_ADD1_IfcMaterial_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialClassificationRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialConstituent_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialConstituentSet_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialDefinition_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialDefinitionRepresentation_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialLayer_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialLayerSet_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialLayerSetUsage_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialLayerWithOffsets_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialList_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialProfile_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialProfileSet_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialProfileSetUsage_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialProfileSetUsageTapering_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialProfileWithOffsets_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialProperties_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcMaterialUsageDefinition_type = 0;
+entity* IFC4X3_ADD1_IfcMeasureWithUnit_type = 0;
+entity* IFC4X3_ADD1_IfcMechanicalFastener_type = 0;
+entity* IFC4X3_ADD1_IfcMechanicalFastenerType_type = 0;
+entity* IFC4X3_ADD1_IfcMedicalDevice_type = 0;
+entity* IFC4X3_ADD1_IfcMedicalDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcMember_type = 0;
+entity* IFC4X3_ADD1_IfcMemberType_type = 0;
+entity* IFC4X3_ADD1_IfcMetric_type = 0;
+entity* IFC4X3_ADD1_IfcMirroredProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcMobileTelecommunicationsAppliance_type = 0;
+entity* IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceType_type = 0;
+entity* IFC4X3_ADD1_IfcMonetaryUnit_type = 0;
+entity* IFC4X3_ADD1_IfcMooringDevice_type = 0;
+entity* IFC4X3_ADD1_IfcMooringDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcMotorConnection_type = 0;
+entity* IFC4X3_ADD1_IfcMotorConnectionType_type = 0;
+entity* IFC4X3_ADD1_IfcNamedUnit_type = 0;
+entity* IFC4X3_ADD1_IfcNavigationElement_type = 0;
+entity* IFC4X3_ADD1_IfcNavigationElementType_type = 0;
+entity* IFC4X3_ADD1_IfcObject_type = 0;
+entity* IFC4X3_ADD1_IfcObjectDefinition_type = 0;
+entity* IFC4X3_ADD1_IfcObjectPlacement_type = 0;
+entity* IFC4X3_ADD1_IfcObjective_type = 0;
+entity* IFC4X3_ADD1_IfcOccupant_type = 0;
+entity* IFC4X3_ADD1_IfcOffsetCurve_type = 0;
+entity* IFC4X3_ADD1_IfcOffsetCurve2D_type = 0;
+entity* IFC4X3_ADD1_IfcOffsetCurve3D_type = 0;
+entity* IFC4X3_ADD1_IfcOffsetCurveByDistances_type = 0;
+entity* IFC4X3_ADD1_IfcOpenCrossProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcOpenShell_type = 0;
+entity* IFC4X3_ADD1_IfcOpeningElement_type = 0;
+entity* IFC4X3_ADD1_IfcOrganization_type = 0;
+entity* IFC4X3_ADD1_IfcOrganizationRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcOrientedEdge_type = 0;
+entity* IFC4X3_ADD1_IfcOuterBoundaryCurve_type = 0;
+entity* IFC4X3_ADD1_IfcOutlet_type = 0;
+entity* IFC4X3_ADD1_IfcOutletType_type = 0;
+entity* IFC4X3_ADD1_IfcOwnerHistory_type = 0;
+entity* IFC4X3_ADD1_IfcParameterizedProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcPath_type = 0;
+entity* IFC4X3_ADD1_IfcPavement_type = 0;
+entity* IFC4X3_ADD1_IfcPavementType_type = 0;
+entity* IFC4X3_ADD1_IfcPcurve_type = 0;
+entity* IFC4X3_ADD1_IfcPerformanceHistory_type = 0;
+entity* IFC4X3_ADD1_IfcPermeableCoveringProperties_type = 0;
+entity* IFC4X3_ADD1_IfcPermit_type = 0;
+entity* IFC4X3_ADD1_IfcPerson_type = 0;
+entity* IFC4X3_ADD1_IfcPersonAndOrganization_type = 0;
+entity* IFC4X3_ADD1_IfcPhysicalComplexQuantity_type = 0;
+entity* IFC4X3_ADD1_IfcPhysicalQuantity_type = 0;
+entity* IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type = 0;
+entity* IFC4X3_ADD1_IfcPile_type = 0;
+entity* IFC4X3_ADD1_IfcPileType_type = 0;
+entity* IFC4X3_ADD1_IfcPipeFitting_type = 0;
+entity* IFC4X3_ADD1_IfcPipeFittingType_type = 0;
+entity* IFC4X3_ADD1_IfcPipeSegment_type = 0;
+entity* IFC4X3_ADD1_IfcPipeSegmentType_type = 0;
+entity* IFC4X3_ADD1_IfcPixelTexture_type = 0;
+entity* IFC4X3_ADD1_IfcPlacement_type = 0;
+entity* IFC4X3_ADD1_IfcPlanarBox_type = 0;
+entity* IFC4X3_ADD1_IfcPlanarExtent_type = 0;
+entity* IFC4X3_ADD1_IfcPlane_type = 0;
+entity* IFC4X3_ADD1_IfcPlate_type = 0;
+entity* IFC4X3_ADD1_IfcPlateType_type = 0;
+entity* IFC4X3_ADD1_IfcPoint_type = 0;
+entity* IFC4X3_ADD1_IfcPointByDistanceExpression_type = 0;
+entity* IFC4X3_ADD1_IfcPointOnCurve_type = 0;
+entity* IFC4X3_ADD1_IfcPointOnSurface_type = 0;
+entity* IFC4X3_ADD1_IfcPolyLoop_type = 0;
+entity* IFC4X3_ADD1_IfcPolygonalBoundedHalfSpace_type = 0;
+entity* IFC4X3_ADD1_IfcPolygonalFaceSet_type = 0;
+entity* IFC4X3_ADD1_IfcPolyline_type = 0;
+entity* IFC4X3_ADD1_IfcPolynomialCurve_type = 0;
+entity* IFC4X3_ADD1_IfcPort_type = 0;
+entity* IFC4X3_ADD1_IfcPositioningElement_type = 0;
+entity* IFC4X3_ADD1_IfcPostalAddress_type = 0;
+entity* IFC4X3_ADD1_IfcPreDefinedColour_type = 0;
+entity* IFC4X3_ADD1_IfcPreDefinedCurveFont_type = 0;
+entity* IFC4X3_ADD1_IfcPreDefinedItem_type = 0;
+entity* IFC4X3_ADD1_IfcPreDefinedProperties_type = 0;
+entity* IFC4X3_ADD1_IfcPreDefinedPropertySet_type = 0;
+entity* IFC4X3_ADD1_IfcPreDefinedTextFont_type = 0;
+entity* IFC4X3_ADD1_IfcPresentationItem_type = 0;
+entity* IFC4X3_ADD1_IfcPresentationLayerAssignment_type = 0;
+entity* IFC4X3_ADD1_IfcPresentationLayerWithStyle_type = 0;
+entity* IFC4X3_ADD1_IfcPresentationStyle_type = 0;
+entity* IFC4X3_ADD1_IfcProcedure_type = 0;
+entity* IFC4X3_ADD1_IfcProcedureType_type = 0;
+entity* IFC4X3_ADD1_IfcProcess_type = 0;
+entity* IFC4X3_ADD1_IfcProduct_type = 0;
+entity* IFC4X3_ADD1_IfcProductDefinitionShape_type = 0;
+entity* IFC4X3_ADD1_IfcProductRepresentation_type = 0;
+entity* IFC4X3_ADD1_IfcProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcProfileProperties_type = 0;
+entity* IFC4X3_ADD1_IfcProject_type = 0;
+entity* IFC4X3_ADD1_IfcProjectLibrary_type = 0;
+entity* IFC4X3_ADD1_IfcProjectOrder_type = 0;
+entity* IFC4X3_ADD1_IfcProjectedCRS_type = 0;
+entity* IFC4X3_ADD1_IfcProjectionElement_type = 0;
+entity* IFC4X3_ADD1_IfcProperty_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyAbstraction_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyBoundedValue_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyDefinition_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyDependencyRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyEnumeratedValue_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyEnumeration_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyListValue_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyReferenceValue_type = 0;
+entity* IFC4X3_ADD1_IfcPropertySet_type = 0;
+entity* IFC4X3_ADD1_IfcPropertySetDefinition_type = 0;
+entity* IFC4X3_ADD1_IfcPropertySetTemplate_type = 0;
+entity* IFC4X3_ADD1_IfcPropertySingleValue_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyTableValue_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyTemplate_type = 0;
+entity* IFC4X3_ADD1_IfcPropertyTemplateDefinition_type = 0;
+entity* IFC4X3_ADD1_IfcProtectiveDevice_type = 0;
+entity* IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnit_type = 0;
+entity* IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitType_type = 0;
+entity* IFC4X3_ADD1_IfcProtectiveDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcPump_type = 0;
+entity* IFC4X3_ADD1_IfcPumpType_type = 0;
+entity* IFC4X3_ADD1_IfcQuantityArea_type = 0;
+entity* IFC4X3_ADD1_IfcQuantityCount_type = 0;
+entity* IFC4X3_ADD1_IfcQuantityLength_type = 0;
+entity* IFC4X3_ADD1_IfcQuantityNumber_type = 0;
+entity* IFC4X3_ADD1_IfcQuantitySet_type = 0;
+entity* IFC4X3_ADD1_IfcQuantityTime_type = 0;
+entity* IFC4X3_ADD1_IfcQuantityVolume_type = 0;
+entity* IFC4X3_ADD1_IfcQuantityWeight_type = 0;
+entity* IFC4X3_ADD1_IfcRail_type = 0;
+entity* IFC4X3_ADD1_IfcRailType_type = 0;
+entity* IFC4X3_ADD1_IfcRailing_type = 0;
+entity* IFC4X3_ADD1_IfcRailingType_type = 0;
+entity* IFC4X3_ADD1_IfcRailway_type = 0;
+entity* IFC4X3_ADD1_IfcRailwayPart_type = 0;
+entity* IFC4X3_ADD1_IfcRamp_type = 0;
+entity* IFC4X3_ADD1_IfcRampFlight_type = 0;
+entity* IFC4X3_ADD1_IfcRampFlightType_type = 0;
+entity* IFC4X3_ADD1_IfcRampType_type = 0;
+entity* IFC4X3_ADD1_IfcRationalBSplineCurveWithKnots_type = 0;
+entity* IFC4X3_ADD1_IfcRationalBSplineSurfaceWithKnots_type = 0;
+entity* IFC4X3_ADD1_IfcRectangleHollowProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcRectangleProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcRectangularPyramid_type = 0;
+entity* IFC4X3_ADD1_IfcRectangularTrimmedSurface_type = 0;
+entity* IFC4X3_ADD1_IfcRecurrencePattern_type = 0;
+entity* IFC4X3_ADD1_IfcReference_type = 0;
+entity* IFC4X3_ADD1_IfcReferent_type = 0;
+entity* IFC4X3_ADD1_IfcRegularTimeSeries_type = 0;
+entity* IFC4X3_ADD1_IfcReinforcedSoil_type = 0;
+entity* IFC4X3_ADD1_IfcReinforcementBarProperties_type = 0;
+entity* IFC4X3_ADD1_IfcReinforcementDefinitionProperties_type = 0;
+entity* IFC4X3_ADD1_IfcReinforcingBar_type = 0;
+entity* IFC4X3_ADD1_IfcReinforcingBarType_type = 0;
+entity* IFC4X3_ADD1_IfcReinforcingElement_type = 0;
+entity* IFC4X3_ADD1_IfcReinforcingElementType_type = 0;
+entity* IFC4X3_ADD1_IfcReinforcingMesh_type = 0;
+entity* IFC4X3_ADD1_IfcReinforcingMeshType_type = 0;
+entity* IFC4X3_ADD1_IfcRelAdheresToElement_type = 0;
+entity* IFC4X3_ADD1_IfcRelAggregates_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssigns_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssignsToActor_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssignsToControl_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssignsToGroup_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssignsToGroupByFactor_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssignsToProcess_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssignsToProduct_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssignsToResource_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssociates_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssociatesApproval_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssociatesClassification_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssociatesConstraint_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssociatesDocument_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssociatesLibrary_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssociatesMaterial_type = 0;
+entity* IFC4X3_ADD1_IfcRelAssociatesProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcRelConnects_type = 0;
+entity* IFC4X3_ADD1_IfcRelConnectsElements_type = 0;
+entity* IFC4X3_ADD1_IfcRelConnectsPathElements_type = 0;
+entity* IFC4X3_ADD1_IfcRelConnectsPortToElement_type = 0;
+entity* IFC4X3_ADD1_IfcRelConnectsPorts_type = 0;
+entity* IFC4X3_ADD1_IfcRelConnectsStructuralActivity_type = 0;
+entity* IFC4X3_ADD1_IfcRelConnectsStructuralMember_type = 0;
+entity* IFC4X3_ADD1_IfcRelConnectsWithEccentricity_type = 0;
+entity* IFC4X3_ADD1_IfcRelConnectsWithRealizingElements_type = 0;
+entity* IFC4X3_ADD1_IfcRelContainedInSpatialStructure_type = 0;
+entity* IFC4X3_ADD1_IfcRelCoversBldgElements_type = 0;
+entity* IFC4X3_ADD1_IfcRelCoversSpaces_type = 0;
+entity* IFC4X3_ADD1_IfcRelDeclares_type = 0;
+entity* IFC4X3_ADD1_IfcRelDecomposes_type = 0;
+entity* IFC4X3_ADD1_IfcRelDefines_type = 0;
+entity* IFC4X3_ADD1_IfcRelDefinesByObject_type = 0;
+entity* IFC4X3_ADD1_IfcRelDefinesByProperties_type = 0;
+entity* IFC4X3_ADD1_IfcRelDefinesByTemplate_type = 0;
+entity* IFC4X3_ADD1_IfcRelDefinesByType_type = 0;
+entity* IFC4X3_ADD1_IfcRelFillsElement_type = 0;
+entity* IFC4X3_ADD1_IfcRelFlowControlElements_type = 0;
+entity* IFC4X3_ADD1_IfcRelInterferesElements_type = 0;
+entity* IFC4X3_ADD1_IfcRelNests_type = 0;
+entity* IFC4X3_ADD1_IfcRelPositions_type = 0;
+entity* IFC4X3_ADD1_IfcRelProjectsElement_type = 0;
+entity* IFC4X3_ADD1_IfcRelReferencedInSpatialStructure_type = 0;
+entity* IFC4X3_ADD1_IfcRelSequence_type = 0;
+entity* IFC4X3_ADD1_IfcRelServicesBuildings_type = 0;
+entity* IFC4X3_ADD1_IfcRelSpaceBoundary_type = 0;
+entity* IFC4X3_ADD1_IfcRelSpaceBoundary1stLevel_type = 0;
+entity* IFC4X3_ADD1_IfcRelSpaceBoundary2ndLevel_type = 0;
+entity* IFC4X3_ADD1_IfcRelVoidsElement_type = 0;
+entity* IFC4X3_ADD1_IfcRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcReparametrisedCompositeCurveSegment_type = 0;
+entity* IFC4X3_ADD1_IfcRepresentation_type = 0;
+entity* IFC4X3_ADD1_IfcRepresentationContext_type = 0;
+entity* IFC4X3_ADD1_IfcRepresentationItem_type = 0;
+entity* IFC4X3_ADD1_IfcRepresentationMap_type = 0;
+entity* IFC4X3_ADD1_IfcResource_type = 0;
+entity* IFC4X3_ADD1_IfcResourceApprovalRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcResourceConstraintRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcResourceLevelRelationship_type = 0;
+entity* IFC4X3_ADD1_IfcResourceTime_type = 0;
+entity* IFC4X3_ADD1_IfcRevolvedAreaSolid_type = 0;
+entity* IFC4X3_ADD1_IfcRevolvedAreaSolidTapered_type = 0;
+entity* IFC4X3_ADD1_IfcRightCircularCone_type = 0;
+entity* IFC4X3_ADD1_IfcRightCircularCylinder_type = 0;
+entity* IFC4X3_ADD1_IfcRigidOperation_type = 0;
+entity* IFC4X3_ADD1_IfcRoad_type = 0;
+entity* IFC4X3_ADD1_IfcRoadPart_type = 0;
+entity* IFC4X3_ADD1_IfcRoof_type = 0;
+entity* IFC4X3_ADD1_IfcRoofType_type = 0;
+entity* IFC4X3_ADD1_IfcRoot_type = 0;
+entity* IFC4X3_ADD1_IfcRoundedRectangleProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcSIUnit_type = 0;
+entity* IFC4X3_ADD1_IfcSanitaryTerminal_type = 0;
+entity* IFC4X3_ADD1_IfcSanitaryTerminalType_type = 0;
+entity* IFC4X3_ADD1_IfcSchedulingTime_type = 0;
+entity* IFC4X3_ADD1_IfcSeamCurve_type = 0;
+entity* IFC4X3_ADD1_IfcSecondOrderPolynomialSpiral_type = 0;
+entity* IFC4X3_ADD1_IfcSectionProperties_type = 0;
+entity* IFC4X3_ADD1_IfcSectionReinforcementProperties_type = 0;
+entity* IFC4X3_ADD1_IfcSectionedSolid_type = 0;
+entity* IFC4X3_ADD1_IfcSectionedSolidHorizontal_type = 0;
+entity* IFC4X3_ADD1_IfcSectionedSpine_type = 0;
+entity* IFC4X3_ADD1_IfcSectionedSurface_type = 0;
+entity* IFC4X3_ADD1_IfcSegment_type = 0;
+entity* IFC4X3_ADD1_IfcSegmentedReferenceCurve_type = 0;
+entity* IFC4X3_ADD1_IfcSensor_type = 0;
+entity* IFC4X3_ADD1_IfcSensorType_type = 0;
+entity* IFC4X3_ADD1_IfcSeventhOrderPolynomialSpiral_type = 0;
+entity* IFC4X3_ADD1_IfcShadingDevice_type = 0;
+entity* IFC4X3_ADD1_IfcShadingDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcShapeAspect_type = 0;
+entity* IFC4X3_ADD1_IfcShapeModel_type = 0;
+entity* IFC4X3_ADD1_IfcShapeRepresentation_type = 0;
+entity* IFC4X3_ADD1_IfcShellBasedSurfaceModel_type = 0;
+entity* IFC4X3_ADD1_IfcSign_type = 0;
+entity* IFC4X3_ADD1_IfcSignType_type = 0;
+entity* IFC4X3_ADD1_IfcSignal_type = 0;
+entity* IFC4X3_ADD1_IfcSignalType_type = 0;
+entity* IFC4X3_ADD1_IfcSimpleProperty_type = 0;
+entity* IFC4X3_ADD1_IfcSimplePropertyTemplate_type = 0;
+entity* IFC4X3_ADD1_IfcSineSpiral_type = 0;
+entity* IFC4X3_ADD1_IfcSite_type = 0;
+entity* IFC4X3_ADD1_IfcSlab_type = 0;
+entity* IFC4X3_ADD1_IfcSlabType_type = 0;
+entity* IFC4X3_ADD1_IfcSlippageConnectionCondition_type = 0;
+entity* IFC4X3_ADD1_IfcSolarDevice_type = 0;
+entity* IFC4X3_ADD1_IfcSolarDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcSolidModel_type = 0;
+entity* IFC4X3_ADD1_IfcSpace_type = 0;
+entity* IFC4X3_ADD1_IfcSpaceHeater_type = 0;
+entity* IFC4X3_ADD1_IfcSpaceHeaterType_type = 0;
+entity* IFC4X3_ADD1_IfcSpaceType_type = 0;
+entity* IFC4X3_ADD1_IfcSpatialElement_type = 0;
+entity* IFC4X3_ADD1_IfcSpatialElementType_type = 0;
+entity* IFC4X3_ADD1_IfcSpatialStructureElement_type = 0;
+entity* IFC4X3_ADD1_IfcSpatialStructureElementType_type = 0;
+entity* IFC4X3_ADD1_IfcSpatialZone_type = 0;
+entity* IFC4X3_ADD1_IfcSpatialZoneType_type = 0;
+entity* IFC4X3_ADD1_IfcSphere_type = 0;
+entity* IFC4X3_ADD1_IfcSphericalSurface_type = 0;
+entity* IFC4X3_ADD1_IfcSpiral_type = 0;
+entity* IFC4X3_ADD1_IfcStackTerminal_type = 0;
+entity* IFC4X3_ADD1_IfcStackTerminalType_type = 0;
+entity* IFC4X3_ADD1_IfcStair_type = 0;
+entity* IFC4X3_ADD1_IfcStairFlight_type = 0;
+entity* IFC4X3_ADD1_IfcStairFlightType_type = 0;
+entity* IFC4X3_ADD1_IfcStairType_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralAction_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralActivity_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralAnalysisModel_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralConnection_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralConnectionCondition_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralCurveAction_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralCurveConnection_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralCurveMember_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralCurveMemberVarying_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralCurveReaction_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralItem_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLinearAction_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoad_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadCase_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadConfiguration_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadGroup_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadLinearForce_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadOrResult_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadPlanarForce_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadSingleDisplacement_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadSingleDisplacementDistortion_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadSingleForce_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadSingleForceWarping_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadStatic_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralLoadTemperature_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralMember_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralPlanarAction_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralPointAction_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralPointConnection_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralPointReaction_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralReaction_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralResultGroup_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralSurfaceAction_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralSurfaceConnection_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralSurfaceMember_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralSurfaceMemberVarying_type = 0;
+entity* IFC4X3_ADD1_IfcStructuralSurfaceReaction_type = 0;
+entity* IFC4X3_ADD1_IfcStyleModel_type = 0;
+entity* IFC4X3_ADD1_IfcStyledItem_type = 0;
+entity* IFC4X3_ADD1_IfcStyledRepresentation_type = 0;
+entity* IFC4X3_ADD1_IfcSubContractResource_type = 0;
+entity* IFC4X3_ADD1_IfcSubContractResourceType_type = 0;
+entity* IFC4X3_ADD1_IfcSubedge_type = 0;
+entity* IFC4X3_ADD1_IfcSurface_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceCurve_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceCurveSweptAreaSolid_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceFeature_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceOfLinearExtrusion_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceOfRevolution_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceReinforcementArea_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceStyle_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceStyleLighting_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceStyleRefraction_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceStyleRendering_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceStyleShading_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type = 0;
+entity* IFC4X3_ADD1_IfcSurfaceTexture_type = 0;
+entity* IFC4X3_ADD1_IfcSweptAreaSolid_type = 0;
+entity* IFC4X3_ADD1_IfcSweptDiskSolid_type = 0;
+entity* IFC4X3_ADD1_IfcSweptDiskSolidPolygonal_type = 0;
+entity* IFC4X3_ADD1_IfcSweptSurface_type = 0;
+entity* IFC4X3_ADD1_IfcSwitchingDevice_type = 0;
+entity* IFC4X3_ADD1_IfcSwitchingDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcSystem_type = 0;
+entity* IFC4X3_ADD1_IfcSystemFurnitureElement_type = 0;
+entity* IFC4X3_ADD1_IfcSystemFurnitureElementType_type = 0;
+entity* IFC4X3_ADD1_IfcTShapeProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcTable_type = 0;
+entity* IFC4X3_ADD1_IfcTableColumn_type = 0;
+entity* IFC4X3_ADD1_IfcTableRow_type = 0;
+entity* IFC4X3_ADD1_IfcTank_type = 0;
+entity* IFC4X3_ADD1_IfcTankType_type = 0;
+entity* IFC4X3_ADD1_IfcTask_type = 0;
+entity* IFC4X3_ADD1_IfcTaskTime_type = 0;
+entity* IFC4X3_ADD1_IfcTaskTimeRecurring_type = 0;
+entity* IFC4X3_ADD1_IfcTaskType_type = 0;
+entity* IFC4X3_ADD1_IfcTelecomAddress_type = 0;
+entity* IFC4X3_ADD1_IfcTendon_type = 0;
+entity* IFC4X3_ADD1_IfcTendonAnchor_type = 0;
+entity* IFC4X3_ADD1_IfcTendonAnchorType_type = 0;
+entity* IFC4X3_ADD1_IfcTendonConduit_type = 0;
+entity* IFC4X3_ADD1_IfcTendonConduitType_type = 0;
+entity* IFC4X3_ADD1_IfcTendonType_type = 0;
+entity* IFC4X3_ADD1_IfcTessellatedFaceSet_type = 0;
+entity* IFC4X3_ADD1_IfcTessellatedItem_type = 0;
+entity* IFC4X3_ADD1_IfcTextLiteral_type = 0;
+entity* IFC4X3_ADD1_IfcTextLiteralWithExtent_type = 0;
+entity* IFC4X3_ADD1_IfcTextStyle_type = 0;
+entity* IFC4X3_ADD1_IfcTextStyleFontModel_type = 0;
+entity* IFC4X3_ADD1_IfcTextStyleForDefinedFont_type = 0;
+entity* IFC4X3_ADD1_IfcTextStyleTextModel_type = 0;
+entity* IFC4X3_ADD1_IfcTextureCoordinate_type = 0;
+entity* IFC4X3_ADD1_IfcTextureCoordinateGenerator_type = 0;
+entity* IFC4X3_ADD1_IfcTextureCoordinateIndices_type = 0;
+entity* IFC4X3_ADD1_IfcTextureCoordinateIndicesWithVoids_type = 0;
+entity* IFC4X3_ADD1_IfcTextureMap_type = 0;
+entity* IFC4X3_ADD1_IfcTextureVertex_type = 0;
+entity* IFC4X3_ADD1_IfcTextureVertexList_type = 0;
+entity* IFC4X3_ADD1_IfcThirdOrderPolynomialSpiral_type = 0;
+entity* IFC4X3_ADD1_IfcTimePeriod_type = 0;
+entity* IFC4X3_ADD1_IfcTimeSeries_type = 0;
+entity* IFC4X3_ADD1_IfcTimeSeriesValue_type = 0;
+entity* IFC4X3_ADD1_IfcTopologicalRepresentationItem_type = 0;
+entity* IFC4X3_ADD1_IfcTopologyRepresentation_type = 0;
+entity* IFC4X3_ADD1_IfcToroidalSurface_type = 0;
+entity* IFC4X3_ADD1_IfcTrackElement_type = 0;
+entity* IFC4X3_ADD1_IfcTrackElementType_type = 0;
+entity* IFC4X3_ADD1_IfcTransformer_type = 0;
+entity* IFC4X3_ADD1_IfcTransformerType_type = 0;
+entity* IFC4X3_ADD1_IfcTransportElement_type = 0;
+entity* IFC4X3_ADD1_IfcTransportElementType_type = 0;
+entity* IFC4X3_ADD1_IfcTransportationDevice_type = 0;
+entity* IFC4X3_ADD1_IfcTransportationDeviceType_type = 0;
+entity* IFC4X3_ADD1_IfcTrapeziumProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcTriangulatedFaceSet_type = 0;
+entity* IFC4X3_ADD1_IfcTriangulatedIrregularNetwork_type = 0;
+entity* IFC4X3_ADD1_IfcTrimmedCurve_type = 0;
+entity* IFC4X3_ADD1_IfcTubeBundle_type = 0;
+entity* IFC4X3_ADD1_IfcTubeBundleType_type = 0;
+entity* IFC4X3_ADD1_IfcTypeObject_type = 0;
+entity* IFC4X3_ADD1_IfcTypeProcess_type = 0;
+entity* IFC4X3_ADD1_IfcTypeProduct_type = 0;
+entity* IFC4X3_ADD1_IfcTypeResource_type = 0;
+entity* IFC4X3_ADD1_IfcUShapeProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcUnitAssignment_type = 0;
+entity* IFC4X3_ADD1_IfcUnitaryControlElement_type = 0;
+entity* IFC4X3_ADD1_IfcUnitaryControlElementType_type = 0;
+entity* IFC4X3_ADD1_IfcUnitaryEquipment_type = 0;
+entity* IFC4X3_ADD1_IfcUnitaryEquipmentType_type = 0;
+entity* IFC4X3_ADD1_IfcValve_type = 0;
+entity* IFC4X3_ADD1_IfcValveType_type = 0;
+entity* IFC4X3_ADD1_IfcVector_type = 0;
+entity* IFC4X3_ADD1_IfcVehicle_type = 0;
+entity* IFC4X3_ADD1_IfcVehicleType_type = 0;
+entity* IFC4X3_ADD1_IfcVertex_type = 0;
+entity* IFC4X3_ADD1_IfcVertexLoop_type = 0;
+entity* IFC4X3_ADD1_IfcVertexPoint_type = 0;
+entity* IFC4X3_ADD1_IfcVibrationDamper_type = 0;
+entity* IFC4X3_ADD1_IfcVibrationDamperType_type = 0;
+entity* IFC4X3_ADD1_IfcVibrationIsolator_type = 0;
+entity* IFC4X3_ADD1_IfcVibrationIsolatorType_type = 0;
+entity* IFC4X3_ADD1_IfcVirtualElement_type = 0;
+entity* IFC4X3_ADD1_IfcVirtualGridIntersection_type = 0;
+entity* IFC4X3_ADD1_IfcVoidingFeature_type = 0;
+entity* IFC4X3_ADD1_IfcWall_type = 0;
+entity* IFC4X3_ADD1_IfcWallStandardCase_type = 0;
+entity* IFC4X3_ADD1_IfcWallType_type = 0;
+entity* IFC4X3_ADD1_IfcWasteTerminal_type = 0;
+entity* IFC4X3_ADD1_IfcWasteTerminalType_type = 0;
+entity* IFC4X3_ADD1_IfcWellKnownText_type = 0;
+entity* IFC4X3_ADD1_IfcWindow_type = 0;
+entity* IFC4X3_ADD1_IfcWindowLiningProperties_type = 0;
+entity* IFC4X3_ADD1_IfcWindowPanelProperties_type = 0;
+entity* IFC4X3_ADD1_IfcWindowType_type = 0;
+entity* IFC4X3_ADD1_IfcWorkCalendar_type = 0;
+entity* IFC4X3_ADD1_IfcWorkControl_type = 0;
+entity* IFC4X3_ADD1_IfcWorkPlan_type = 0;
+entity* IFC4X3_ADD1_IfcWorkSchedule_type = 0;
+entity* IFC4X3_ADD1_IfcWorkTime_type = 0;
+entity* IFC4X3_ADD1_IfcZShapeProfileDef_type = 0;
+entity* IFC4X3_ADD1_IfcZone_type = 0;
+type_declaration* IFC4X3_ADD1_IfcAbsorbedDoseMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcAccelerationMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcAmountOfSubstanceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcAngularVelocityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcArcIndex_type = 0;
+type_declaration* IFC4X3_ADD1_IfcAreaDensityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcAreaMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcBinary_type = 0;
+type_declaration* IFC4X3_ADD1_IfcBoolean_type = 0;
+type_declaration* IFC4X3_ADD1_IfcBoxAlignment_type = 0;
+type_declaration* IFC4X3_ADD1_IfcCardinalPointReference_type = 0;
+type_declaration* IFC4X3_ADD1_IfcComplexNumber_type = 0;
+type_declaration* IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcContextDependentMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcCountMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcCurvatureMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcDate_type = 0;
+type_declaration* IFC4X3_ADD1_IfcDateTime_type = 0;
+type_declaration* IFC4X3_ADD1_IfcDayInMonthNumber_type = 0;
+type_declaration* IFC4X3_ADD1_IfcDayInWeekNumber_type = 0;
+type_declaration* IFC4X3_ADD1_IfcDescriptiveMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcDimensionCount_type = 0;
+type_declaration* IFC4X3_ADD1_IfcDoseEquivalentMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcDuration_type = 0;
+type_declaration* IFC4X3_ADD1_IfcDynamicViscosityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcElectricCapacitanceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcElectricChargeMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcElectricConductanceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcElectricCurrentMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcElectricResistanceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcElectricVoltageMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcEnergyMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcFontStyle_type = 0;
+type_declaration* IFC4X3_ADD1_IfcFontVariant_type = 0;
+type_declaration* IFC4X3_ADD1_IfcFontWeight_type = 0;
+type_declaration* IFC4X3_ADD1_IfcForceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcFrequencyMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcGloballyUniqueId_type = 0;
+type_declaration* IFC4X3_ADD1_IfcHeatFluxDensityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcHeatingValueMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcIdentifier_type = 0;
+type_declaration* IFC4X3_ADD1_IfcIlluminanceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcInductanceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcInteger_type = 0;
+type_declaration* IFC4X3_ADD1_IfcIntegerCountRateMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcIonConcentrationMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcIsothermalMoistureCapacityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcKinematicViscosityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLabel_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLanguageId_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLengthMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLineIndex_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLinearForceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLinearMomentMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLinearStiffnessMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLinearVelocityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLogical_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLuminousFluxMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcLuminousIntensityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMagneticFluxDensityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMagneticFluxMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMassDensityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMassFlowRateMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMassMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMassPerLengthMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcModulusOfElasticityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMoistureDiffusivityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMolecularWeightMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMomentOfInertiaMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMonetaryMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcMonthInYearNumber_type = 0;
+type_declaration* IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcNormalisedRatioMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcNumericMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPHMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcParameterValue_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPlanarForceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPlaneAngleMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPositiveInteger_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPositiveLengthMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPositiveRatioMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPowerMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPresentableText_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPressureMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcPropertySetDefinitionSet_type = 0;
+type_declaration* IFC4X3_ADD1_IfcRadioActivityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcRatioMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcReal_type = 0;
+type_declaration* IFC4X3_ADD1_IfcRotationalFrequencyMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcRotationalMassMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcSectionModulusMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcSectionalAreaIntegralMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcShearModulusMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcSolidAngleMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcSoundPowerLevelMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcSoundPowerMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcSoundPressureLevelMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcSoundPressureMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcSpecificHeatCapacityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcSpecularExponent_type = 0;
+type_declaration* IFC4X3_ADD1_IfcSpecularRoughness_type = 0;
+type_declaration* IFC4X3_ADD1_IfcStrippedOptional_type = 0;
+type_declaration* IFC4X3_ADD1_IfcTemperatureGradientMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcTemperatureRateOfChangeMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcText_type = 0;
+type_declaration* IFC4X3_ADD1_IfcTextAlignment_type = 0;
+type_declaration* IFC4X3_ADD1_IfcTextDecoration_type = 0;
+type_declaration* IFC4X3_ADD1_IfcTextFontName_type = 0;
+type_declaration* IFC4X3_ADD1_IfcTextTransformation_type = 0;
+type_declaration* IFC4X3_ADD1_IfcThermalAdmittanceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcThermalConductivityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcThermalExpansionCoefficientMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcThermalResistanceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcThermalTransmittanceMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcTime_type = 0;
+type_declaration* IFC4X3_ADD1_IfcTimeMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcTimeStamp_type = 0;
+type_declaration* IFC4X3_ADD1_IfcTorqueMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcURIReference_type = 0;
+type_declaration* IFC4X3_ADD1_IfcVaporPermeabilityMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcVolumeMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcVolumetricFlowRateMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcWarpingConstantMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcWarpingMomentMeasure_type = 0;
+type_declaration* IFC4X3_ADD1_IfcWellKnownTextLiteral_type = 0;
+select_type* IFC4X3_ADD1_IfcActorSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcAppliedValueSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcAxis2Placement_type = 0;
+select_type* IFC4X3_ADD1_IfcBendingParameterSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcBooleanOperand_type = 0;
+select_type* IFC4X3_ADD1_IfcClassificationReferenceSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcClassificationSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcColour_type = 0;
+select_type* IFC4X3_ADD1_IfcColourOrFactor_type = 0;
+select_type* IFC4X3_ADD1_IfcCoordinateReferenceSystemSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcCsgSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcCurveFontOrScaledCurveFontSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcCurveMeasureSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcCurveOnSurface_type = 0;
+select_type* IFC4X3_ADD1_IfcCurveOrEdgeCurve_type = 0;
+select_type* IFC4X3_ADD1_IfcCurveStyleFontSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcDefinitionSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcDerivedMeasureValue_type = 0;
+select_type* IFC4X3_ADD1_IfcDocumentSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcFillStyleSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcGeometricSetSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcGridPlacementDirectionSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcHatchLineDistanceSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcInterferenceSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcLayeredItem_type = 0;
+select_type* IFC4X3_ADD1_IfcLibrarySelect_type = 0;
+select_type* IFC4X3_ADD1_IfcLightDistributionDataSourceSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcMaterialSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcMeasureValue_type = 0;
+select_type* IFC4X3_ADD1_IfcMetricValueSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcObjectReferenceSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcPointOrVertexPoint_type = 0;
+select_type* IFC4X3_ADD1_IfcProcessSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcProductRepresentationSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcProductSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcPropertySetDefinitionSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcResourceObjectSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcResourceSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcRotationalStiffnessSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcSegmentIndexSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcShell_type = 0;
+select_type* IFC4X3_ADD1_IfcSimpleValue_type = 0;
+select_type* IFC4X3_ADD1_IfcSizeSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcSolidOrShell_type = 0;
+select_type* IFC4X3_ADD1_IfcSpaceBoundarySelect_type = 0;
+select_type* IFC4X3_ADD1_IfcSpatialReferenceSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcSpecularHighlightSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcStructuralActivityAssignmentSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcSurfaceOrFaceSurface_type = 0;
+select_type* IFC4X3_ADD1_IfcSurfaceStyleElementSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcTextFontSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcTimeOrRatioSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcTrimmingSelect_type = 0;
+select_type* IFC4X3_ADD1_IfcUnit_type = 0;
+select_type* IFC4X3_ADD1_IfcValue_type = 0;
+select_type* IFC4X3_ADD1_IfcVectorOrDirection_type = 0;
+select_type* IFC4X3_ADD1_IfcWarpingStiffnessSelect_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcActionRequestTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcActionSourceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcActionTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcActuatorTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAddressTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAirTerminalTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAlarmTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAlignmentCantSegmentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAlignmentHorizontalSegmentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAlignmentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAlignmentVerticalSegmentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAnalysisModelTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAnalysisTheoryTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAnnotationTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcArithmeticOperatorEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAssemblyPlaceEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBSplineCurveForm_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBSplineSurfaceForm_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBeamTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBearingTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBenchmarkEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBoilerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBooleanOperator_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBridgePartTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBridgeTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBuildingSystemTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBuiltSystemTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcBurnerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCableFittingTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCableSegmentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcChangeActionEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcChillerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcChimneyTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCoilTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcColumnTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcComplexPropertyTemplateTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCompressorTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCondenserTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcConnectionTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcConstraintEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcControllerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCooledBeamTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCostItemTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCostScheduleTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCourseTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCoveringTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCrewResourceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCurtainWallTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcCurveInterpolationEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDamperTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDataOriginEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDerivedUnitEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDirectionSenseEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDistributionPortTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDistributionSystemEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDocumentConfidentialityEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDocumentStatusEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDoorPanelOperationEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDoorPanelPositionEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDoorTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDoorTypeOperationEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDuctFittingTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcEarthworksCutTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcEarthworksFillTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcElectricMotorTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcElementCompositionEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcEngineTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcEvaporatorTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcEventTriggerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcEventTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcExternalSpatialElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFacilityPartCommonTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFacilityUsageEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFanTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFastenerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFilterTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFlowDirectionEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFlowMeterTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFootingTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcFurnitureTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcGeographicElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcGeometricProjectionEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcGeotechnicalStratumTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcGlobalOrLocalEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcGridTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcHumidifierTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcInterceptorTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcInternalOrExternalEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcInventoryTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcKerbTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcKnotType_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcLaborResourceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcLampTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcLayerSetDirectionEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcLightDistributionCurveEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcLightEmissionSourceEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcLightFixtureTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcLoadGroupTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcLogicalOperatorEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcMarineFacilityTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcMarinePartTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcMemberTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcNavigationElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcObjectiveEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcOccupantTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcOpeningElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcOutletTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPavementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPerformanceHistoryTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPermeableCoveringOperationEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPermitTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPhysicalOrVirtualEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPileConstructionEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPileTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPipeFittingTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPlateTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPreferredSurfaceCurveRepresentation_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcProcedureTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcProfileTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcProjectOrderTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcProjectionElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPropertySetTemplateTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcPumpTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRailTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRailingTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRailwayPartTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRailwayTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRampFlightTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRampTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRecurrenceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcReferentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcReflectanceMethodEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcReinforcedSoilTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcReinforcingBarRoleEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRoadPartTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRoadTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRoleEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcRoofTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSIPrefix_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSIUnitName_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSectionTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSensorTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSequenceEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSignTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSignalTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSimplePropertyTemplateTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSlabTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSpaceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcStackTerminalTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcStairFlightTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcStairTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcStateEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcStructuralCurveMemberTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcStructuralSurfaceMemberTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSurfaceFeatureTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSurfaceSide_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTankTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTaskDurationEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTaskTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTendonConduitTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTendonTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTextPath_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTimeSeriesDataTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTrackElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTransformerTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTransitionCode_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTransportElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTrimmingPreference_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcTubeBundleTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcUnitEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcValveTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcVehicleTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcVirtualElementTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcVoidingFeatureTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcWallTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcWindowPanelOperationEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcWindowPanelPositionEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcWindowTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcWorkCalendarTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcWorkPlanTypeEnum_type = 0;
+enumeration_type* IFC4X3_ADD1_IfcWorkScheduleTypeEnum_type = 0;
+
+class IFC4X3_ADD1_instance_factory : public IfcParse::instance_factory {
+ virtual IfcUtil::IfcBaseClass* operator()(IfcEntityInstanceData* data) const {
+ switch(data->type()->index_in_schema()) {
+ case 0: return new ::Ifc4x3_add1::IfcAbsorbedDoseMeasure(data);
+ case 1: return new ::Ifc4x3_add1::IfcAccelerationMeasure(data);
+ case 2: return new ::Ifc4x3_add1::IfcActionRequest(data);
+ case 3: return new ::Ifc4x3_add1::IfcActionRequestTypeEnum(data);
+ case 4: return new ::Ifc4x3_add1::IfcActionSourceTypeEnum(data);
+ case 5: return new ::Ifc4x3_add1::IfcActionTypeEnum(data);
+ case 6: return new ::Ifc4x3_add1::IfcActor(data);
+ case 7: return new ::Ifc4x3_add1::IfcActorRole(data);
+ case 9: return new ::Ifc4x3_add1::IfcActuator(data);
+ case 10: return new ::Ifc4x3_add1::IfcActuatorType(data);
+ case 11: return new ::Ifc4x3_add1::IfcActuatorTypeEnum(data);
+ case 12: return new ::Ifc4x3_add1::IfcAddress(data);
+ case 13: return new ::Ifc4x3_add1::IfcAddressTypeEnum(data);
+ case 14: return new ::Ifc4x3_add1::IfcAdvancedBrep(data);
+ case 15: return new ::Ifc4x3_add1::IfcAdvancedBrepWithVoids(data);
+ case 16: return new ::Ifc4x3_add1::IfcAdvancedFace(data);
+ case 17: return new ::Ifc4x3_add1::IfcAirTerminal(data);
+ case 18: return new ::Ifc4x3_add1::IfcAirTerminalBox(data);
+ case 19: return new ::Ifc4x3_add1::IfcAirTerminalBoxType(data);
+ case 20: return new ::Ifc4x3_add1::IfcAirTerminalBoxTypeEnum(data);
+ case 21: return new ::Ifc4x3_add1::IfcAirTerminalType(data);
+ case 22: return new ::Ifc4x3_add1::IfcAirTerminalTypeEnum(data);
+ case 23: return new ::Ifc4x3_add1::IfcAirToAirHeatRecovery(data);
+ case 24: return new ::Ifc4x3_add1::IfcAirToAirHeatRecoveryType(data);
+ case 25: return new ::Ifc4x3_add1::IfcAirToAirHeatRecoveryTypeEnum(data);
+ case 26: return new ::Ifc4x3_add1::IfcAlarm(data);
+ case 27: return new ::Ifc4x3_add1::IfcAlarmType(data);
+ case 28: return new ::Ifc4x3_add1::IfcAlarmTypeEnum(data);
+ case 29: return new ::Ifc4x3_add1::IfcAlignment(data);
+ case 30: return new ::Ifc4x3_add1::IfcAlignmentCant(data);
+ case 31: return new ::Ifc4x3_add1::IfcAlignmentCantSegment(data);
+ case 32: return new ::Ifc4x3_add1::IfcAlignmentCantSegmentTypeEnum(data);
+ case 33: return new ::Ifc4x3_add1::IfcAlignmentHorizontal(data);
+ case 34: return new ::Ifc4x3_add1::IfcAlignmentHorizontalSegment(data);
+ case 35: return new ::Ifc4x3_add1::IfcAlignmentHorizontalSegmentTypeEnum(data);
+ case 36: return new ::Ifc4x3_add1::IfcAlignmentParameterSegment(data);
+ case 37: return new ::Ifc4x3_add1::IfcAlignmentSegment(data);
+ case 38: return new ::Ifc4x3_add1::IfcAlignmentTypeEnum(data);
+ case 39: return new ::Ifc4x3_add1::IfcAlignmentVertical(data);
+ case 40: return new ::Ifc4x3_add1::IfcAlignmentVerticalSegment(data);
+ case 41: return new ::Ifc4x3_add1::IfcAlignmentVerticalSegmentTypeEnum(data);
+ case 42: return new ::Ifc4x3_add1::IfcAmountOfSubstanceMeasure(data);
+ case 43: return new ::Ifc4x3_add1::IfcAnalysisModelTypeEnum(data);
+ case 44: return new ::Ifc4x3_add1::IfcAnalysisTheoryTypeEnum(data);
+ case 45: return new ::Ifc4x3_add1::IfcAngularVelocityMeasure(data);
+ case 46: return new ::Ifc4x3_add1::IfcAnnotation(data);
+ case 47: return new ::Ifc4x3_add1::IfcAnnotationFillArea(data);
+ case 48: return new ::Ifc4x3_add1::IfcAnnotationTypeEnum(data);
+ case 49: return new ::Ifc4x3_add1::IfcApplication(data);
+ case 50: return new ::Ifc4x3_add1::IfcAppliedValue(data);
+ case 52: return new ::Ifc4x3_add1::IfcApproval(data);
+ case 53: return new ::Ifc4x3_add1::IfcApprovalRelationship(data);
+ case 54: return new ::Ifc4x3_add1::IfcArbitraryClosedProfileDef(data);
+ case 55: return new ::Ifc4x3_add1::IfcArbitraryOpenProfileDef(data);
+ case 56: return new ::Ifc4x3_add1::IfcArbitraryProfileDefWithVoids(data);
+ case 57: return new ::Ifc4x3_add1::IfcArcIndex(data);
+ case 58: return new ::Ifc4x3_add1::IfcAreaDensityMeasure(data);
+ case 59: return new ::Ifc4x3_add1::IfcAreaMeasure(data);
+ case 60: return new ::Ifc4x3_add1::IfcArithmeticOperatorEnum(data);
+ case 61: return new ::Ifc4x3_add1::IfcAssemblyPlaceEnum(data);
+ case 62: return new ::Ifc4x3_add1::IfcAsset(data);
+ case 63: return new ::Ifc4x3_add1::IfcAsymmetricIShapeProfileDef(data);
+ case 64: return new ::Ifc4x3_add1::IfcAudioVisualAppliance(data);
+ case 65: return new ::Ifc4x3_add1::IfcAudioVisualApplianceType(data);
+ case 66: return new ::Ifc4x3_add1::IfcAudioVisualApplianceTypeEnum(data);
+ case 67: return new ::Ifc4x3_add1::IfcAxis1Placement(data);
+ case 69: return new ::Ifc4x3_add1::IfcAxis2Placement2D(data);
+ case 70: return new ::Ifc4x3_add1::IfcAxis2Placement3D(data);
+ case 71: return new ::Ifc4x3_add1::IfcAxis2PlacementLinear(data);
+ case 72: return new ::Ifc4x3_add1::IfcBeam(data);
+ case 73: return new ::Ifc4x3_add1::IfcBeamType(data);
+ case 74: return new ::Ifc4x3_add1::IfcBeamTypeEnum(data);
+ case 75: return new ::Ifc4x3_add1::IfcBearing(data);
+ case 76: return new ::Ifc4x3_add1::IfcBearingType(data);
+ case 77: return new ::Ifc4x3_add1::IfcBearingTypeEnum(data);
+ case 78: return new ::Ifc4x3_add1::IfcBenchmarkEnum(data);
+ case 80: return new ::Ifc4x3_add1::IfcBinary(data);
+ case 81: return new ::Ifc4x3_add1::IfcBlobTexture(data);
+ case 82: return new ::Ifc4x3_add1::IfcBlock(data);
+ case 83: return new ::Ifc4x3_add1::IfcBoiler(data);
+ case 84: return new ::Ifc4x3_add1::IfcBoilerType(data);
+ case 85: return new ::Ifc4x3_add1::IfcBoilerTypeEnum(data);
+ case 86: return new ::Ifc4x3_add1::IfcBoolean(data);
+ case 87: return new ::Ifc4x3_add1::IfcBooleanClippingResult(data);
+ case 89: return new ::Ifc4x3_add1::IfcBooleanOperator(data);
+ case 90: return new ::Ifc4x3_add1::IfcBooleanResult(data);
+ case 91: return new ::Ifc4x3_add1::IfcBorehole(data);
+ case 92: return new ::Ifc4x3_add1::IfcBoundaryCondition(data);
+ case 93: return new ::Ifc4x3_add1::IfcBoundaryCurve(data);
+ case 94: return new ::Ifc4x3_add1::IfcBoundaryEdgeCondition(data);
+ case 95: return new ::Ifc4x3_add1::IfcBoundaryFaceCondition(data);
+ case 96: return new ::Ifc4x3_add1::IfcBoundaryNodeCondition(data);
+ case 97: return new ::Ifc4x3_add1::IfcBoundaryNodeConditionWarping(data);
+ case 98: return new ::Ifc4x3_add1::IfcBoundedCurve(data);
+ case 99: return new ::Ifc4x3_add1::IfcBoundedSurface(data);
+ case 100: return new ::Ifc4x3_add1::IfcBoundingBox(data);
+ case 101: return new ::Ifc4x3_add1::IfcBoxAlignment(data);
+ case 102: return new ::Ifc4x3_add1::IfcBoxedHalfSpace(data);
+ case 103: return new ::Ifc4x3_add1::IfcBridge(data);
+ case 104: return new ::Ifc4x3_add1::IfcBridgePart(data);
+ case 105: return new ::Ifc4x3_add1::IfcBridgePartTypeEnum(data);
+ case 106: return new ::Ifc4x3_add1::IfcBridgeTypeEnum(data);
+ case 107: return new ::Ifc4x3_add1::IfcBSplineCurve(data);
+ case 108: return new ::Ifc4x3_add1::IfcBSplineCurveForm(data);
+ case 109: return new ::Ifc4x3_add1::IfcBSplineCurveWithKnots(data);
+ case 110: return new ::Ifc4x3_add1::IfcBSplineSurface(data);
+ case 111: return new ::Ifc4x3_add1::IfcBSplineSurfaceForm(data);
+ case 112: return new ::Ifc4x3_add1::IfcBSplineSurfaceWithKnots(data);
+ case 113: return new ::Ifc4x3_add1::IfcBuilding(data);
+ case 114: return new ::Ifc4x3_add1::IfcBuildingElementPart(data);
+ case 115: return new ::Ifc4x3_add1::IfcBuildingElementPartType(data);
+ case 116: return new ::Ifc4x3_add1::IfcBuildingElementPartTypeEnum(data);
+ case 117: return new ::Ifc4x3_add1::IfcBuildingElementProxy(data);
+ case 118: return new ::Ifc4x3_add1::IfcBuildingElementProxyType(data);
+ case 119: return new ::Ifc4x3_add1::IfcBuildingElementProxyTypeEnum(data);
+ case 120: return new ::Ifc4x3_add1::IfcBuildingStorey(data);
+ case 121: return new ::Ifc4x3_add1::IfcBuildingSystem(data);
+ case 122: return new ::Ifc4x3_add1::IfcBuildingSystemTypeEnum(data);
+ case 123: return new ::Ifc4x3_add1::IfcBuiltElement(data);
+ case 124: return new ::Ifc4x3_add1::IfcBuiltElementType(data);
+ case 125: return new ::Ifc4x3_add1::IfcBuiltSystem(data);
+ case 126: return new ::Ifc4x3_add1::IfcBuiltSystemTypeEnum(data);
+ case 127: return new ::Ifc4x3_add1::IfcBurner(data);
+ case 128: return new ::Ifc4x3_add1::IfcBurnerType(data);
+ case 129: return new ::Ifc4x3_add1::IfcBurnerTypeEnum(data);
+ case 130: return new ::Ifc4x3_add1::IfcCableCarrierFitting(data);
+ case 131: return new ::Ifc4x3_add1::IfcCableCarrierFittingType(data);
+ case 132: return new ::Ifc4x3_add1::IfcCableCarrierFittingTypeEnum(data);
+ case 133: return new ::Ifc4x3_add1::IfcCableCarrierSegment(data);
+ case 134: return new ::Ifc4x3_add1::IfcCableCarrierSegmentType(data);
+ case 135: return new ::Ifc4x3_add1::IfcCableCarrierSegmentTypeEnum(data);
+ case 136: return new ::Ifc4x3_add1::IfcCableFitting(data);
+ case 137: return new ::Ifc4x3_add1::IfcCableFittingType(data);
+ case 138: return new ::Ifc4x3_add1::IfcCableFittingTypeEnum(data);
+ case 139: return new ::Ifc4x3_add1::IfcCableSegment(data);
+ case 140: return new ::Ifc4x3_add1::IfcCableSegmentType(data);
+ case 141: return new ::Ifc4x3_add1::IfcCableSegmentTypeEnum(data);
+ case 142: return new ::Ifc4x3_add1::IfcCaissonFoundation(data);
+ case 143: return new ::Ifc4x3_add1::IfcCaissonFoundationType(data);
+ case 144: return new ::Ifc4x3_add1::IfcCaissonFoundationTypeEnum(data);
+ case 145: return new ::Ifc4x3_add1::IfcCardinalPointReference(data);
+ case 146: return new ::Ifc4x3_add1::IfcCartesianPoint(data);
+ case 147: return new ::Ifc4x3_add1::IfcCartesianPointList(data);
+ case 148: return new ::Ifc4x3_add1::IfcCartesianPointList2D(data);
+ case 149: return new ::Ifc4x3_add1::IfcCartesianPointList3D(data);
+ case 150: return new ::Ifc4x3_add1::IfcCartesianTransformationOperator(data);
+ case 151: return new ::Ifc4x3_add1::IfcCartesianTransformationOperator2D(data);
+ case 152: return new ::Ifc4x3_add1::IfcCartesianTransformationOperator2DnonUniform(data);
+ case 153: return new ::Ifc4x3_add1::IfcCartesianTransformationOperator3D(data);
+ case 154: return new ::Ifc4x3_add1::IfcCartesianTransformationOperator3DnonUniform(data);
+ case 155: return new ::Ifc4x3_add1::IfcCenterLineProfileDef(data);
+ case 156: return new ::Ifc4x3_add1::IfcChangeActionEnum(data);
+ case 157: return new ::Ifc4x3_add1::IfcChiller(data);
+ case 158: return new ::Ifc4x3_add1::IfcChillerType(data);
+ case 159: return new ::Ifc4x3_add1::IfcChillerTypeEnum(data);
+ case 160: return new ::Ifc4x3_add1::IfcChimney(data);
+ case 161: return new ::Ifc4x3_add1::IfcChimneyType(data);
+ case 162: return new ::Ifc4x3_add1::IfcChimneyTypeEnum(data);
+ case 163: return new ::Ifc4x3_add1::IfcCircle(data);
+ case 164: return new ::Ifc4x3_add1::IfcCircleHollowProfileDef(data);
+ case 165: return new ::Ifc4x3_add1::IfcCircleProfileDef(data);
+ case 166: return new ::Ifc4x3_add1::IfcCivilElement(data);
+ case 167: return new ::Ifc4x3_add1::IfcCivilElementType(data);
+ case 168: return new ::Ifc4x3_add1::IfcClassification(data);
+ case 169: return new ::Ifc4x3_add1::IfcClassificationReference(data);
+ case 172: return new ::Ifc4x3_add1::IfcClosedShell(data);
+ case 173: return new ::Ifc4x3_add1::IfcClothoid(data);
+ case 174: return new ::Ifc4x3_add1::IfcCoil(data);
+ case 175: return new ::Ifc4x3_add1::IfcCoilType(data);
+ case 176: return new ::Ifc4x3_add1::IfcCoilTypeEnum(data);
+ case 179: return new ::Ifc4x3_add1::IfcColourRgb(data);
+ case 180: return new ::Ifc4x3_add1::IfcColourRgbList(data);
+ case 181: return new ::Ifc4x3_add1::IfcColourSpecification(data);
+ case 182: return new ::Ifc4x3_add1::IfcColumn(data);
+ case 183: return new ::Ifc4x3_add1::IfcColumnType(data);
+ case 184: return new ::Ifc4x3_add1::IfcColumnTypeEnum(data);
+ case 185: return new ::Ifc4x3_add1::IfcCommunicationsAppliance(data);
+ case 186: return new ::Ifc4x3_add1::IfcCommunicationsApplianceType(data);
+ case 187: return new ::Ifc4x3_add1::IfcCommunicationsApplianceTypeEnum(data);
+ case 188: return new ::Ifc4x3_add1::IfcComplexNumber(data);
+ case 189: return new ::Ifc4x3_add1::IfcComplexProperty(data);
+ case 190: return new ::Ifc4x3_add1::IfcComplexPropertyTemplate(data);
+ case 191: return new ::Ifc4x3_add1::IfcComplexPropertyTemplateTypeEnum(data);
+ case 192: return new ::Ifc4x3_add1::IfcCompositeCurve(data);
+ case 193: return new ::Ifc4x3_add1::IfcCompositeCurveOnSurface(data);
+ case 194: return new ::Ifc4x3_add1::IfcCompositeCurveSegment(data);
+ case 195: return new ::Ifc4x3_add1::IfcCompositeProfileDef(data);
+ case 196: return new ::Ifc4x3_add1::IfcCompoundPlaneAngleMeasure(data);
+ case 197: return new ::Ifc4x3_add1::IfcCompressor(data);
+ case 198: return new ::Ifc4x3_add1::IfcCompressorType(data);
+ case 199: return new ::Ifc4x3_add1::IfcCompressorTypeEnum(data);
+ case 200: return new ::Ifc4x3_add1::IfcCondenser(data);
+ case 201: return new ::Ifc4x3_add1::IfcCondenserType(data);
+ case 202: return new ::Ifc4x3_add1::IfcCondenserTypeEnum(data);
+ case 203: return new ::Ifc4x3_add1::IfcConic(data);
+ case 204: return new ::Ifc4x3_add1::IfcConnectedFaceSet(data);
+ case 205: return new ::Ifc4x3_add1::IfcConnectionCurveGeometry(data);
+ case 206: return new ::Ifc4x3_add1::IfcConnectionGeometry(data);
+ case 207: return new ::Ifc4x3_add1::IfcConnectionPointEccentricity(data);
+ case 208: return new ::Ifc4x3_add1::IfcConnectionPointGeometry(data);
+ case 209: return new ::Ifc4x3_add1::IfcConnectionSurfaceGeometry(data);
+ case 210: return new ::Ifc4x3_add1::IfcConnectionTypeEnum(data);
+ case 211: return new ::Ifc4x3_add1::IfcConnectionVolumeGeometry(data);
+ case 212: return new ::Ifc4x3_add1::IfcConstraint(data);
+ case 213: return new ::Ifc4x3_add1::IfcConstraintEnum(data);
+ case 214: return new ::Ifc4x3_add1::IfcConstructionEquipmentResource(data);
+ case 215: return new ::Ifc4x3_add1::IfcConstructionEquipmentResourceType(data);
+ case 216: return new ::Ifc4x3_add1::IfcConstructionEquipmentResourceTypeEnum(data);
+ case 217: return new ::Ifc4x3_add1::IfcConstructionMaterialResource(data);
+ case 218: return new ::Ifc4x3_add1::IfcConstructionMaterialResourceType(data);
+ case 219: return new ::Ifc4x3_add1::IfcConstructionMaterialResourceTypeEnum(data);
+ case 220: return new ::Ifc4x3_add1::IfcConstructionProductResource(data);
+ case 221: return new ::Ifc4x3_add1::IfcConstructionProductResourceType(data);
+ case 222: return new ::Ifc4x3_add1::IfcConstructionProductResourceTypeEnum(data);
+ case 223: return new ::Ifc4x3_add1::IfcConstructionResource(data);
+ case 224: return new ::Ifc4x3_add1::IfcConstructionResourceType(data);
+ case 225: return new ::Ifc4x3_add1::IfcContext(data);
+ case 226: return new ::Ifc4x3_add1::IfcContextDependentMeasure(data);
+ case 227: return new ::Ifc4x3_add1::IfcContextDependentUnit(data);
+ case 228: return new ::Ifc4x3_add1::IfcControl(data);
+ case 229: return new ::Ifc4x3_add1::IfcController(data);
+ case 230: return new ::Ifc4x3_add1::IfcControllerType(data);
+ case 231: return new ::Ifc4x3_add1::IfcControllerTypeEnum(data);
+ case 232: return new ::Ifc4x3_add1::IfcConversionBasedUnit(data);
+ case 233: return new ::Ifc4x3_add1::IfcConversionBasedUnitWithOffset(data);
+ case 234: return new ::Ifc4x3_add1::IfcConveyorSegment(data);
+ case 235: return new ::Ifc4x3_add1::IfcConveyorSegmentType(data);
+ case 236: return new ::Ifc4x3_add1::IfcConveyorSegmentTypeEnum(data);
+ case 237: return new ::Ifc4x3_add1::IfcCooledBeam(data);
+ case 238: return new ::Ifc4x3_add1::IfcCooledBeamType(data);
+ case 239: return new ::Ifc4x3_add1::IfcCooledBeamTypeEnum(data);
+ case 240: return new ::Ifc4x3_add1::IfcCoolingTower(data);
+ case 241: return new ::Ifc4x3_add1::IfcCoolingTowerType(data);
+ case 242: return new ::Ifc4x3_add1::IfcCoolingTowerTypeEnum(data);
+ case 243: return new ::Ifc4x3_add1::IfcCoordinateOperation(data);
+ case 244: return new ::Ifc4x3_add1::IfcCoordinateReferenceSystem(data);
+ case 246: return new ::Ifc4x3_add1::IfcCosineSpiral(data);
+ case 247: return new ::Ifc4x3_add1::IfcCostItem(data);
+ case 248: return new ::Ifc4x3_add1::IfcCostItemTypeEnum(data);
+ case 249: return new ::Ifc4x3_add1::IfcCostSchedule(data);
+ case 250: return new ::Ifc4x3_add1::IfcCostScheduleTypeEnum(data);
+ case 251: return new ::Ifc4x3_add1::IfcCostValue(data);
+ case 252: return new ::Ifc4x3_add1::IfcCountMeasure(data);
+ case 253: return new ::Ifc4x3_add1::IfcCourse(data);
+ case 254: return new ::Ifc4x3_add1::IfcCourseType(data);
+ case 255: return new ::Ifc4x3_add1::IfcCourseTypeEnum(data);
+ case 256: return new ::Ifc4x3_add1::IfcCovering(data);
+ case 257: return new ::Ifc4x3_add1::IfcCoveringType(data);
+ case 258: return new ::Ifc4x3_add1::IfcCoveringTypeEnum(data);
+ case 259: return new ::Ifc4x3_add1::IfcCrewResource(data);
+ case 260: return new ::Ifc4x3_add1::IfcCrewResourceType(data);
+ case 261: return new ::Ifc4x3_add1::IfcCrewResourceTypeEnum(data);
+ case 262: return new ::Ifc4x3_add1::IfcCsgPrimitive3D(data);
+ case 264: return new ::Ifc4x3_add1::IfcCsgSolid(data);
+ case 265: return new ::Ifc4x3_add1::IfcCShapeProfileDef(data);
+ case 266: return new ::Ifc4x3_add1::IfcCurrencyRelationship(data);
+ case 267: return new ::Ifc4x3_add1::IfcCurtainWall(data);
+ case 268: return new ::Ifc4x3_add1::IfcCurtainWallType(data);
+ case 269: return new ::Ifc4x3_add1::IfcCurtainWallTypeEnum(data);
+ case 270: return new ::Ifc4x3_add1::IfcCurvatureMeasure(data);
+ case 271: return new ::Ifc4x3_add1::IfcCurve(data);
+ case 272: return new ::Ifc4x3_add1::IfcCurveBoundedPlane(data);
+ case 273: return new ::Ifc4x3_add1::IfcCurveBoundedSurface(data);
+ case 275: return new ::Ifc4x3_add1::IfcCurveInterpolationEnum(data);
+ case 279: return new ::Ifc4x3_add1::IfcCurveSegment(data);
+ case 280: return new ::Ifc4x3_add1::IfcCurveStyle(data);
+ case 281: return new ::Ifc4x3_add1::IfcCurveStyleFont(data);
+ case 282: return new ::Ifc4x3_add1::IfcCurveStyleFontAndScaling(data);
+ case 283: return new ::Ifc4x3_add1::IfcCurveStyleFontPattern(data);
+ case 285: return new ::Ifc4x3_add1::IfcCylindricalSurface(data);
+ case 286: return new ::Ifc4x3_add1::IfcDamper(data);
+ case 287: return new ::Ifc4x3_add1::IfcDamperType(data);
+ case 288: return new ::Ifc4x3_add1::IfcDamperTypeEnum(data);
+ case 289: return new ::Ifc4x3_add1::IfcDataOriginEnum(data);
+ case 290: return new ::Ifc4x3_add1::IfcDate(data);
+ case 291: return new ::Ifc4x3_add1::IfcDateTime(data);
+ case 292: return new ::Ifc4x3_add1::IfcDayInMonthNumber(data);
+ case 293: return new ::Ifc4x3_add1::IfcDayInWeekNumber(data);
+ case 294: return new ::Ifc4x3_add1::IfcDeepFoundation(data);
+ case 295: return new ::Ifc4x3_add1::IfcDeepFoundationType(data);
+ case 298: return new ::Ifc4x3_add1::IfcDerivedProfileDef(data);
+ case 299: return new ::Ifc4x3_add1::IfcDerivedUnit(data);
+ case 300: return new ::Ifc4x3_add1::IfcDerivedUnitElement(data);
+ case 301: return new ::Ifc4x3_add1::IfcDerivedUnitEnum(data);
+ case 302: return new ::Ifc4x3_add1::IfcDescriptiveMeasure(data);
+ case 303: return new ::Ifc4x3_add1::IfcDimensionalExponents(data);
+ case 304: return new ::Ifc4x3_add1::IfcDimensionCount(data);
+ case 305: return new ::Ifc4x3_add1::IfcDirection(data);
+ case 306: return new ::Ifc4x3_add1::IfcDirectionSenseEnum(data);
+ case 307: return new ::Ifc4x3_add1::IfcDirectrixCurveSweptAreaSolid(data);
+ case 308: return new ::Ifc4x3_add1::IfcDirectrixDerivedReferenceSweptAreaSolid(data);
+ case 309: return new ::Ifc4x3_add1::IfcDiscreteAccessory(data);
+ case 310: return new ::Ifc4x3_add1::IfcDiscreteAccessoryType(data);
+ case 311: return new ::Ifc4x3_add1::IfcDiscreteAccessoryTypeEnum(data);
+ case 312: return new ::Ifc4x3_add1::IfcDistributionBoard(data);
+ case 313: return new ::Ifc4x3_add1::IfcDistributionBoardType(data);
+ case 314: return new ::Ifc4x3_add1::IfcDistributionBoardTypeEnum(data);
+ case 315: return new ::Ifc4x3_add1::IfcDistributionChamberElement(data);
+ case 316: return new ::Ifc4x3_add1::IfcDistributionChamberElementType(data);
+ case 317: return new ::Ifc4x3_add1::IfcDistributionChamberElementTypeEnum(data);
+ case 318: return new ::Ifc4x3_add1::IfcDistributionCircuit(data);
+ case 319: return new ::Ifc4x3_add1::IfcDistributionControlElement(data);
+ case 320: return new ::Ifc4x3_add1::IfcDistributionControlElementType(data);
+ case 321: return new ::Ifc4x3_add1::IfcDistributionElement(data);
+ case 322: return new ::Ifc4x3_add1::IfcDistributionElementType(data);
+ case 323: return new ::Ifc4x3_add1::IfcDistributionFlowElement(data);
+ case 324: return new ::Ifc4x3_add1::IfcDistributionFlowElementType(data);
+ case 325: return new ::Ifc4x3_add1::IfcDistributionPort(data);
+ case 326: return new ::Ifc4x3_add1::IfcDistributionPortTypeEnum(data);
+ case 327: return new ::Ifc4x3_add1::IfcDistributionSystem(data);
+ case 328: return new ::Ifc4x3_add1::IfcDistributionSystemEnum(data);
+ case 329: return new ::Ifc4x3_add1::IfcDocumentConfidentialityEnum(data);
+ case 330: return new ::Ifc4x3_add1::IfcDocumentInformation(data);
+ case 331: return new ::Ifc4x3_add1::IfcDocumentInformationRelationship(data);
+ case 332: return new ::Ifc4x3_add1::IfcDocumentReference(data);
+ case 334: return new ::Ifc4x3_add1::IfcDocumentStatusEnum(data);
+ case 335: return new ::Ifc4x3_add1::IfcDoor(data);
+ case 336: return new ::Ifc4x3_add1::IfcDoorLiningProperties(data);
+ case 337: return new ::Ifc4x3_add1::IfcDoorPanelOperationEnum(data);
+ case 338: return new ::Ifc4x3_add1::IfcDoorPanelPositionEnum(data);
+ case 339: return new ::Ifc4x3_add1::IfcDoorPanelProperties(data);
+ case 340: return new ::Ifc4x3_add1::IfcDoorType(data);
+ case 341: return new ::Ifc4x3_add1::IfcDoorTypeEnum(data);
+ case 342: return new ::Ifc4x3_add1::IfcDoorTypeOperationEnum(data);
+ case 343: return new ::Ifc4x3_add1::IfcDoseEquivalentMeasure(data);
+ case 344: return new ::Ifc4x3_add1::IfcDraughtingPreDefinedColour(data);
+ case 345: return new ::Ifc4x3_add1::IfcDraughtingPreDefinedCurveFont(data);
+ case 346: return new ::Ifc4x3_add1::IfcDuctFitting(data);
+ case 347: return new ::Ifc4x3_add1::IfcDuctFittingType(data);
+ case 348: return new ::Ifc4x3_add1::IfcDuctFittingTypeEnum(data);
+ case 349: return new ::Ifc4x3_add1::IfcDuctSegment(data);
+ case 350: return new ::Ifc4x3_add1::IfcDuctSegmentType(data);
+ case 351: return new ::Ifc4x3_add1::IfcDuctSegmentTypeEnum(data);
+ case 352: return new ::Ifc4x3_add1::IfcDuctSilencer(data);
+ case 353: return new ::Ifc4x3_add1::IfcDuctSilencerType(data);
+ case 354: return new ::Ifc4x3_add1::IfcDuctSilencerTypeEnum(data);
+ case 355: return new ::Ifc4x3_add1::IfcDuration(data);
+ case 356: return new ::Ifc4x3_add1::IfcDynamicViscosityMeasure(data);
+ case 357: return new ::Ifc4x3_add1::IfcEarthworksCut(data);
+ case 358: return new ::Ifc4x3_add1::IfcEarthworksCutTypeEnum(data);
+ case 359: return new ::Ifc4x3_add1::IfcEarthworksElement(data);
+ case 360: return new ::Ifc4x3_add1::IfcEarthworksFill(data);
+ case 361: return new ::Ifc4x3_add1::IfcEarthworksFillTypeEnum(data);
+ case 362: return new ::Ifc4x3_add1::IfcEdge(data);
+ case 363: return new ::Ifc4x3_add1::IfcEdgeCurve(data);
+ case 364: return new ::Ifc4x3_add1::IfcEdgeLoop(data);
+ case 365: return new ::Ifc4x3_add1::IfcElectricAppliance(data);
+ case 366: return new ::Ifc4x3_add1::IfcElectricApplianceType(data);
+ case 367: return new ::Ifc4x3_add1::IfcElectricApplianceTypeEnum(data);
+ case 368: return new ::Ifc4x3_add1::IfcElectricCapacitanceMeasure(data);
+ case 369: return new ::Ifc4x3_add1::IfcElectricChargeMeasure(data);
+ case 370: return new ::Ifc4x3_add1::IfcElectricConductanceMeasure(data);
+ case 371: return new ::Ifc4x3_add1::IfcElectricCurrentMeasure(data);
+ case 372: return new ::Ifc4x3_add1::IfcElectricDistributionBoard(data);
+ case 373: return new ::Ifc4x3_add1::IfcElectricDistributionBoardType(data);
+ case 374: return new ::Ifc4x3_add1::IfcElectricDistributionBoardTypeEnum(data);
+ case 375: return new ::Ifc4x3_add1::IfcElectricFlowStorageDevice(data);
+ case 376: return new ::Ifc4x3_add1::IfcElectricFlowStorageDeviceType(data);
+ case 377: return new ::Ifc4x3_add1::IfcElectricFlowStorageDeviceTypeEnum(data);
+ case 378: return new ::Ifc4x3_add1::IfcElectricFlowTreatmentDevice(data);
+ case 379: return new ::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceType(data);
+ case 380: return new ::Ifc4x3_add1::IfcElectricFlowTreatmentDeviceTypeEnum(data);
+ case 381: return new ::Ifc4x3_add1::IfcElectricGenerator(data);
+ case 382: return new ::Ifc4x3_add1::IfcElectricGeneratorType(data);
+ case 383: return new ::Ifc4x3_add1::IfcElectricGeneratorTypeEnum(data);
+ case 384: return new ::Ifc4x3_add1::IfcElectricMotor(data);
+ case 385: return new ::Ifc4x3_add1::IfcElectricMotorType(data);
+ case 386: return new ::Ifc4x3_add1::IfcElectricMotorTypeEnum(data);
+ case 387: return new ::Ifc4x3_add1::IfcElectricResistanceMeasure(data);
+ case 388: return new ::Ifc4x3_add1::IfcElectricTimeControl(data);
+ case 389: return new ::Ifc4x3_add1::IfcElectricTimeControlType(data);
+ case 390: return new ::Ifc4x3_add1::IfcElectricTimeControlTypeEnum(data);
+ case 391: return new ::Ifc4x3_add1::IfcElectricVoltageMeasure(data);
+ case 392: return new ::Ifc4x3_add1::IfcElement(data);
+ case 393: return new ::Ifc4x3_add1::IfcElementarySurface(data);
+ case 394: return new ::Ifc4x3_add1::IfcElementAssembly(data);
+ case 395: return new ::Ifc4x3_add1::IfcElementAssemblyType(data);
+ case 396: return new ::Ifc4x3_add1::IfcElementAssemblyTypeEnum(data);
+ case 397: return new ::Ifc4x3_add1::IfcElementComponent(data);
+ case 398: return new ::Ifc4x3_add1::IfcElementComponentType(data);
+ case 399: return new ::Ifc4x3_add1::IfcElementCompositionEnum(data);
+ case 400: return new ::Ifc4x3_add1::IfcElementQuantity(data);
+ case 401: return new ::Ifc4x3_add1::IfcElementType(data);
+ case 402: return new ::Ifc4x3_add1::IfcEllipse(data);
+ case 403: return new ::Ifc4x3_add1::IfcEllipseProfileDef(data);
+ case 404: return new ::Ifc4x3_add1::IfcEnergyConversionDevice(data);
+ case 405: return new ::Ifc4x3_add1::IfcEnergyConversionDeviceType(data);
+ case 406: return new ::Ifc4x3_add1::IfcEnergyMeasure(data);
+ case 407: return new ::Ifc4x3_add1::IfcEngine(data);
+ case 408: return new ::Ifc4x3_add1::IfcEngineType(data);
+ case 409: return new ::Ifc4x3_add1::IfcEngineTypeEnum(data);
+ case 410: return new ::Ifc4x3_add1::IfcEvaporativeCooler(data);
+ case 411: return new ::Ifc4x3_add1::IfcEvaporativeCoolerType(data);
+ case 412: return new ::Ifc4x3_add1::IfcEvaporativeCoolerTypeEnum(data);
+ case 413: return new ::Ifc4x3_add1::IfcEvaporator(data);
+ case 414: return new ::Ifc4x3_add1::IfcEvaporatorType(data);
+ case 415: return new ::Ifc4x3_add1::IfcEvaporatorTypeEnum(data);
+ case 416: return new ::Ifc4x3_add1::IfcEvent(data);
+ case 417: return new ::Ifc4x3_add1::IfcEventTime(data);
+ case 418: return new ::Ifc4x3_add1::IfcEventTriggerTypeEnum(data);
+ case 419: return new ::Ifc4x3_add1::IfcEventType(data);
+ case 420: return new ::Ifc4x3_add1::IfcEventTypeEnum(data);
+ case 421: return new ::Ifc4x3_add1::IfcExtendedProperties(data);
+ case 422: return new ::Ifc4x3_add1::IfcExternalInformation(data);
+ case 423: return new ::Ifc4x3_add1::IfcExternallyDefinedHatchStyle(data);
+ case 424: return new ::Ifc4x3_add1::IfcExternallyDefinedSurfaceStyle(data);
+ case 425: return new ::Ifc4x3_add1::IfcExternallyDefinedTextFont(data);
+ case 426: return new ::Ifc4x3_add1::IfcExternalReference(data);
+ case 427: return new ::Ifc4x3_add1::IfcExternalReferenceRelationship(data);
+ case 428: return new ::Ifc4x3_add1::IfcExternalSpatialElement(data);
+ case 429: return new ::Ifc4x3_add1::IfcExternalSpatialElementTypeEnum(data);
+ case 430: return new ::Ifc4x3_add1::IfcExternalSpatialStructureElement(data);
+ case 431: return new ::Ifc4x3_add1::IfcExtrudedAreaSolid(data);
+ case 432: return new ::Ifc4x3_add1::IfcExtrudedAreaSolidTapered(data);
+ case 433: return new ::Ifc4x3_add1::IfcFace(data);
+ case 434: return new ::Ifc4x3_add1::IfcFaceBasedSurfaceModel(data);
+ case 435: return new ::Ifc4x3_add1::IfcFaceBound(data);
+ case 436: return new ::Ifc4x3_add1::IfcFaceOuterBound(data);
+ case 437: return new ::Ifc4x3_add1::IfcFaceSurface(data);
+ case 438: return new ::Ifc4x3_add1::IfcFacetedBrep(data);
+ case 439: return new ::Ifc4x3_add1::IfcFacetedBrepWithVoids(data);
+ case 440: return new ::Ifc4x3_add1::IfcFacility(data);
+ case 441: return new ::Ifc4x3_add1::IfcFacilityPart(data);
+ case 442: return new ::Ifc4x3_add1::IfcFacilityPartCommon(data);
+ case 443: return new ::Ifc4x3_add1::IfcFacilityPartCommonTypeEnum(data);
+ case 444: return new ::Ifc4x3_add1::IfcFacilityUsageEnum(data);
+ case 445: return new ::Ifc4x3_add1::IfcFailureConnectionCondition(data);
+ case 446: return new ::Ifc4x3_add1::IfcFan(data);
+ case 447: return new ::Ifc4x3_add1::IfcFanType(data);
+ case 448: return new ::Ifc4x3_add1::IfcFanTypeEnum(data);
+ case 449: return new ::Ifc4x3_add1::IfcFastener(data);
+ case 450: return new ::Ifc4x3_add1::IfcFastenerType(data);
+ case 451: return new ::Ifc4x3_add1::IfcFastenerTypeEnum(data);
+ case 452: return new ::Ifc4x3_add1::IfcFeatureElement(data);
+ case 453: return new ::Ifc4x3_add1::IfcFeatureElementAddition(data);
+ case 454: return new ::Ifc4x3_add1::IfcFeatureElementSubtraction(data);
+ case 455: return new ::Ifc4x3_add1::IfcFillAreaStyle(data);
+ case 456: return new ::Ifc4x3_add1::IfcFillAreaStyleHatching(data);
+ case 457: return new ::Ifc4x3_add1::IfcFillAreaStyleTiles(data);
+ case 459: return new ::Ifc4x3_add1::IfcFilter(data);
+ case 460: return new ::Ifc4x3_add1::IfcFilterType(data);
+ case 461: return new ::Ifc4x3_add1::IfcFilterTypeEnum(data);
+ case 462: return new ::Ifc4x3_add1::IfcFireSuppressionTerminal(data);
+ case 463: return new ::Ifc4x3_add1::IfcFireSuppressionTerminalType(data);
+ case 464: return new ::Ifc4x3_add1::IfcFireSuppressionTerminalTypeEnum(data);
+ case 465: return new ::Ifc4x3_add1::IfcFixedReferenceSweptAreaSolid(data);
+ case 466: return new ::Ifc4x3_add1::IfcFlowController(data);
+ case 467: return new ::Ifc4x3_add1::IfcFlowControllerType(data);
+ case 468: return new ::Ifc4x3_add1::IfcFlowDirectionEnum(data);
+ case 469: return new ::Ifc4x3_add1::IfcFlowFitting(data);
+ case 470: return new ::Ifc4x3_add1::IfcFlowFittingType(data);
+ case 471: return new ::Ifc4x3_add1::IfcFlowInstrument(data);
+ case 472: return new ::Ifc4x3_add1::IfcFlowInstrumentType(data);
+ case 473: return new ::Ifc4x3_add1::IfcFlowInstrumentTypeEnum(data);
+ case 474: return new ::Ifc4x3_add1::IfcFlowMeter(data);
+ case 475: return new ::Ifc4x3_add1::IfcFlowMeterType(data);
+ case 476: return new ::Ifc4x3_add1::IfcFlowMeterTypeEnum(data);
+ case 477: return new ::Ifc4x3_add1::IfcFlowMovingDevice(data);
+ case 478: return new ::Ifc4x3_add1::IfcFlowMovingDeviceType(data);
+ case 479: return new ::Ifc4x3_add1::IfcFlowSegment(data);
+ case 480: return new ::Ifc4x3_add1::IfcFlowSegmentType(data);
+ case 481: return new ::Ifc4x3_add1::IfcFlowStorageDevice(data);
+ case 482: return new ::Ifc4x3_add1::IfcFlowStorageDeviceType(data);
+ case 483: return new ::Ifc4x3_add1::IfcFlowTerminal(data);
+ case 484: return new ::Ifc4x3_add1::IfcFlowTerminalType(data);
+ case 485: return new ::Ifc4x3_add1::IfcFlowTreatmentDevice(data);
+ case 486: return new ::Ifc4x3_add1::IfcFlowTreatmentDeviceType(data);
+ case 487: return new ::Ifc4x3_add1::IfcFontStyle(data);
+ case 488: return new ::Ifc4x3_add1::IfcFontVariant(data);
+ case 489: return new ::Ifc4x3_add1::IfcFontWeight(data);
+ case 490: return new ::Ifc4x3_add1::IfcFooting(data);
+ case 491: return new ::Ifc4x3_add1::IfcFootingType(data);
+ case 492: return new ::Ifc4x3_add1::IfcFootingTypeEnum(data);
+ case 493: return new ::Ifc4x3_add1::IfcForceMeasure(data);
+ case 494: return new ::Ifc4x3_add1::IfcFrequencyMeasure(data);
+ case 495: return new ::Ifc4x3_add1::IfcFurnishingElement(data);
+ case 496: return new ::Ifc4x3_add1::IfcFurnishingElementType(data);
+ case 497: return new ::Ifc4x3_add1::IfcFurniture(data);
+ case 498: return new ::Ifc4x3_add1::IfcFurnitureType(data);
+ case 499: return new ::Ifc4x3_add1::IfcFurnitureTypeEnum(data);
+ case 500: return new ::Ifc4x3_add1::IfcGeographicCRS(data);
+ case 501: return new ::Ifc4x3_add1::IfcGeographicElement(data);
+ case 502: return new ::Ifc4x3_add1::IfcGeographicElementType(data);
+ case 503: return new ::Ifc4x3_add1::IfcGeographicElementTypeEnum(data);
+ case 504: return new ::Ifc4x3_add1::IfcGeometricCurveSet(data);
+ case 505: return new ::Ifc4x3_add1::IfcGeometricProjectionEnum(data);
+ case 506: return new ::Ifc4x3_add1::IfcGeometricRepresentationContext(data);
+ case 507: return new ::Ifc4x3_add1::IfcGeometricRepresentationItem(data);
+ case 508: return new ::Ifc4x3_add1::IfcGeometricRepresentationSubContext(data);
+ case 509: return new ::Ifc4x3_add1::IfcGeometricSet(data);
+ case 511: return new ::Ifc4x3_add1::IfcGeomodel(data);
+ case 512: return new ::Ifc4x3_add1::IfcGeoslice(data);
+ case 513: return new ::Ifc4x3_add1::IfcGeotechnicalAssembly(data);
+ case 514: return new ::Ifc4x3_add1::IfcGeotechnicalElement(data);
+ case 515: return new ::Ifc4x3_add1::IfcGeotechnicalStratum(data);
+ case 516: return new ::Ifc4x3_add1::IfcGeotechnicalStratumTypeEnum(data);
+ case 517: return new ::Ifc4x3_add1::IfcGloballyUniqueId(data);
+ case 518: return new ::Ifc4x3_add1::IfcGlobalOrLocalEnum(data);
+ case 519: return new ::Ifc4x3_add1::IfcGradientCurve(data);
+ case 520: return new ::Ifc4x3_add1::IfcGrid(data);
+ case 521: return new ::Ifc4x3_add1::IfcGridAxis(data);
+ case 522: return new ::Ifc4x3_add1::IfcGridPlacement(data);
+ case 524: return new ::Ifc4x3_add1::IfcGridTypeEnum(data);
+ case 525: return new ::Ifc4x3_add1::IfcGroup(data);
+ case 526: return new ::Ifc4x3_add1::IfcHalfSpaceSolid(data);
+ case 528: return new ::Ifc4x3_add1::IfcHeatExchanger(data);
+ case 529: return new ::Ifc4x3_add1::IfcHeatExchangerType(data);
+ case 530: return new ::Ifc4x3_add1::IfcHeatExchangerTypeEnum(data);
+ case 531: return new ::Ifc4x3_add1::IfcHeatFluxDensityMeasure(data);
+ case 532: return new ::Ifc4x3_add1::IfcHeatingValueMeasure(data);
+ case 533: return new ::Ifc4x3_add1::IfcHumidifier(data);
+ case 534: return new ::Ifc4x3_add1::IfcHumidifierType(data);
+ case 535: return new ::Ifc4x3_add1::IfcHumidifierTypeEnum(data);
+ case 536: return new ::Ifc4x3_add1::IfcIdentifier(data);
+ case 537: return new ::Ifc4x3_add1::IfcIlluminanceMeasure(data);
+ case 538: return new ::Ifc4x3_add1::IfcImageTexture(data);
+ case 539: return new ::Ifc4x3_add1::IfcImpactProtectionDevice(data);
+ case 540: return new ::Ifc4x3_add1::IfcImpactProtectionDeviceType(data);
+ case 541: return new ::Ifc4x3_add1::IfcImpactProtectionDeviceTypeEnum(data);
+ case 542: return new ::Ifc4x3_add1::IfcIndexedColourMap(data);
+ case 543: return new ::Ifc4x3_add1::IfcIndexedPolyCurve(data);
+ case 544: return new ::Ifc4x3_add1::IfcIndexedPolygonalFace(data);
+ case 545: return new ::Ifc4x3_add1::IfcIndexedPolygonalFaceWithVoids(data);
+ case 546: return new ::Ifc4x3_add1::IfcIndexedPolygonalTextureMap(data);
+ case 547: return new ::Ifc4x3_add1::IfcIndexedTextureMap(data);
+ case 548: return new ::Ifc4x3_add1::IfcIndexedTriangleTextureMap(data);
+ case 549: return new ::Ifc4x3_add1::IfcInductanceMeasure(data);
+ case 550: return new ::Ifc4x3_add1::IfcInteger(data);
+ case 551: return new ::Ifc4x3_add1::IfcIntegerCountRateMeasure(data);
+ case 552: return new ::Ifc4x3_add1::IfcInterceptor(data);
+ case 553: return new ::Ifc4x3_add1::IfcInterceptorType(data);
+ case 554: return new ::Ifc4x3_add1::IfcInterceptorTypeEnum(data);
+ case 556: return new ::Ifc4x3_add1::IfcInternalOrExternalEnum(data);
+ case 557: return new ::Ifc4x3_add1::IfcIntersectionCurve(data);
+ case 558: return new ::Ifc4x3_add1::IfcInventory(data);
+ case 559: return new ::Ifc4x3_add1::IfcInventoryTypeEnum(data);
+ case 560: return new ::Ifc4x3_add1::IfcIonConcentrationMeasure(data);
+ case 561: return new ::Ifc4x3_add1::IfcIrregularTimeSeries(data);
+ case 562: return new ::Ifc4x3_add1::IfcIrregularTimeSeriesValue(data);
+ case 563: return new ::Ifc4x3_add1::IfcIShapeProfileDef(data);
+ case 564: return new ::Ifc4x3_add1::IfcIsothermalMoistureCapacityMeasure(data);
+ case 565: return new ::Ifc4x3_add1::IfcJunctionBox(data);
+ case 566: return new ::Ifc4x3_add1::IfcJunctionBoxType(data);
+ case 567: return new ::Ifc4x3_add1::IfcJunctionBoxTypeEnum(data);
+ case 568: return new ::Ifc4x3_add1::IfcKerb(data);
+ case 569: return new ::Ifc4x3_add1::IfcKerbType(data);
+ case 570: return new ::Ifc4x3_add1::IfcKerbTypeEnum(data);
+ case 571: return new ::Ifc4x3_add1::IfcKinematicViscosityMeasure(data);
+ case 572: return new ::Ifc4x3_add1::IfcKnotType(data);
+ case 573: return new ::Ifc4x3_add1::IfcLabel(data);
+ case 574: return new ::Ifc4x3_add1::IfcLaborResource(data);
+ case 575: return new ::Ifc4x3_add1::IfcLaborResourceType(data);
+ case 576: return new ::Ifc4x3_add1::IfcLaborResourceTypeEnum(data);
+ case 577: return new ::Ifc4x3_add1::IfcLagTime(data);
+ case 578: return new ::Ifc4x3_add1::IfcLamp(data);
+ case 579: return new ::Ifc4x3_add1::IfcLampType(data);
+ case 580: return new ::Ifc4x3_add1::IfcLampTypeEnum(data);
+ case 581: return new ::Ifc4x3_add1::IfcLanguageId(data);
+ case 583: return new ::Ifc4x3_add1::IfcLayerSetDirectionEnum(data);
+ case 584: return new ::Ifc4x3_add1::IfcLengthMeasure(data);
+ case 585: return new ::Ifc4x3_add1::IfcLibraryInformation(data);
+ case 586: return new ::Ifc4x3_add1::IfcLibraryReference(data);
+ case 588: return new ::Ifc4x3_add1::IfcLightDistributionCurveEnum(data);
+ case 589: return new ::Ifc4x3_add1::IfcLightDistributionData(data);
+ case 591: return new ::Ifc4x3_add1::IfcLightEmissionSourceEnum(data);
+ case 592: return new ::Ifc4x3_add1::IfcLightFixture(data);
+ case 593: return new ::Ifc4x3_add1::IfcLightFixtureType(data);
+ case 594: return new ::Ifc4x3_add1::IfcLightFixtureTypeEnum(data);
+ case 595: return new ::Ifc4x3_add1::IfcLightIntensityDistribution(data);
+ case 596: return new ::Ifc4x3_add1::IfcLightSource(data);
+ case 597: return new ::Ifc4x3_add1::IfcLightSourceAmbient(data);
+ case 598: return new ::Ifc4x3_add1::IfcLightSourceDirectional(data);
+ case 599: return new ::Ifc4x3_add1::IfcLightSourceGoniometric(data);
+ case 600: return new ::Ifc4x3_add1::IfcLightSourcePositional(data);
+ case 601: return new ::Ifc4x3_add1::IfcLightSourceSpot(data);
+ case 602: return new ::Ifc4x3_add1::IfcLine(data);
+ case 603: return new ::Ifc4x3_add1::IfcLinearElement(data);
+ case 604: return new ::Ifc4x3_add1::IfcLinearForceMeasure(data);
+ case 605: return new ::Ifc4x3_add1::IfcLinearMomentMeasure(data);
+ case 606: return new ::Ifc4x3_add1::IfcLinearPlacement(data);
+ case 607: return new ::Ifc4x3_add1::IfcLinearPositioningElement(data);
+ case 608: return new ::Ifc4x3_add1::IfcLinearStiffnessMeasure(data);
+ case 609: return new ::Ifc4x3_add1::IfcLinearVelocityMeasure(data);
+ case 610: return new ::Ifc4x3_add1::IfcLineIndex(data);
+ case 611: return new ::Ifc4x3_add1::IfcLiquidTerminal(data);
+ case 612: return new ::Ifc4x3_add1::IfcLiquidTerminalType(data);
+ case 613: return new ::Ifc4x3_add1::IfcLiquidTerminalTypeEnum(data);
+ case 614: return new ::Ifc4x3_add1::IfcLoadGroupTypeEnum(data);
+ case 615: return new ::Ifc4x3_add1::IfcLocalPlacement(data);
+ case 616: return new ::Ifc4x3_add1::IfcLogical(data);
+ case 617: return new ::Ifc4x3_add1::IfcLogicalOperatorEnum(data);
+ case 618: return new ::Ifc4x3_add1::IfcLoop(data);
+ case 619: return new ::Ifc4x3_add1::IfcLShapeProfileDef(data);
+ case 620: return new ::Ifc4x3_add1::IfcLuminousFluxMeasure(data);
+ case 621: return new ::Ifc4x3_add1::IfcLuminousIntensityDistributionMeasure(data);
+ case 622: return new ::Ifc4x3_add1::IfcLuminousIntensityMeasure(data);
+ case 623: return new ::Ifc4x3_add1::IfcMagneticFluxDensityMeasure(data);
+ case 624: return new ::Ifc4x3_add1::IfcMagneticFluxMeasure(data);
+ case 625: return new ::Ifc4x3_add1::IfcManifoldSolidBrep(data);
+ case 626: return new ::Ifc4x3_add1::IfcMapConversion(data);
+ case 627: return new ::Ifc4x3_add1::IfcMapConversionScaled(data);
+ case 628: return new ::Ifc4x3_add1::IfcMappedItem(data);
+ case 629: return new ::Ifc4x3_add1::IfcMarineFacility(data);
+ case 630: return new ::Ifc4x3_add1::IfcMarineFacilityTypeEnum(data);
+ case 631: return new ::Ifc4x3_add1::IfcMarinePart(data);
+ case 632: return new ::Ifc4x3_add1::IfcMarinePartTypeEnum(data);
+ case 633: return new ::Ifc4x3_add1::IfcMassDensityMeasure(data);
+ case 634: return new ::Ifc4x3_add1::IfcMassFlowRateMeasure(data);
+ case 635: return new ::Ifc4x3_add1::IfcMassMeasure(data);
+ case 636: return new ::Ifc4x3_add1::IfcMassPerLengthMeasure(data);
+ case 637: return new ::Ifc4x3_add1::IfcMaterial(data);
+ case 638: return new ::Ifc4x3_add1::IfcMaterialClassificationRelationship(data);
+ case 639: return new ::Ifc4x3_add1::IfcMaterialConstituent(data);
+ case 640: return new ::Ifc4x3_add1::IfcMaterialConstituentSet(data);
+ case 641: return new ::Ifc4x3_add1::IfcMaterialDefinition(data);
+ case 642: return new ::Ifc4x3_add1::IfcMaterialDefinitionRepresentation(data);
+ case 643: return new ::Ifc4x3_add1::IfcMaterialLayer(data);
+ case 644: return new ::Ifc4x3_add1::IfcMaterialLayerSet(data);
+ case 645: return new ::Ifc4x3_add1::IfcMaterialLayerSetUsage(data);
+ case 646: return new ::Ifc4x3_add1::IfcMaterialLayerWithOffsets(data);
+ case 647: return new ::Ifc4x3_add1::IfcMaterialList(data);
+ case 648: return new ::Ifc4x3_add1::IfcMaterialProfile(data);
+ case 649: return new ::Ifc4x3_add1::IfcMaterialProfileSet(data);
+ case 650: return new ::Ifc4x3_add1::IfcMaterialProfileSetUsage(data);
+ case 651: return new ::Ifc4x3_add1::IfcMaterialProfileSetUsageTapering(data);
+ case 652: return new ::Ifc4x3_add1::IfcMaterialProfileWithOffsets(data);
+ case 653: return new ::Ifc4x3_add1::IfcMaterialProperties(data);
+ case 654: return new ::Ifc4x3_add1::IfcMaterialRelationship(data);
+ case 656: return new ::Ifc4x3_add1::IfcMaterialUsageDefinition(data);
+ case 658: return new ::Ifc4x3_add1::IfcMeasureWithUnit(data);
+ case 659: return new ::Ifc4x3_add1::IfcMechanicalFastener(data);
+ case 660: return new ::Ifc4x3_add1::IfcMechanicalFastenerType(data);
+ case 661: return new ::Ifc4x3_add1::IfcMechanicalFastenerTypeEnum(data);
+ case 662: return new ::Ifc4x3_add1::IfcMedicalDevice(data);
+ case 663: return new ::Ifc4x3_add1::IfcMedicalDeviceType(data);
+ case 664: return new ::Ifc4x3_add1::IfcMedicalDeviceTypeEnum(data);
+ case 665: return new ::Ifc4x3_add1::IfcMember(data);
+ case 666: return new ::Ifc4x3_add1::IfcMemberType(data);
+ case 667: return new ::Ifc4x3_add1::IfcMemberTypeEnum(data);
+ case 668: return new ::Ifc4x3_add1::IfcMetric(data);
+ case 670: return new ::Ifc4x3_add1::IfcMirroredProfileDef(data);
+ case 671: return new ::Ifc4x3_add1::IfcMobileTelecommunicationsAppliance(data);
+ case 672: return new ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceType(data);
+ case 673: return new ::Ifc4x3_add1::IfcMobileTelecommunicationsApplianceTypeEnum(data);
+ case 674: return new ::Ifc4x3_add1::IfcModulusOfElasticityMeasure(data);
+ case 675: return new ::Ifc4x3_add1::IfcModulusOfLinearSubgradeReactionMeasure(data);
+ case 676: return new ::Ifc4x3_add1::IfcModulusOfRotationalSubgradeReactionMeasure(data);
+ case 678: return new ::Ifc4x3_add1::IfcModulusOfSubgradeReactionMeasure(data);
+ case 681: return new ::Ifc4x3_add1::IfcMoistureDiffusivityMeasure(data);
+ case 682: return new ::Ifc4x3_add1::IfcMolecularWeightMeasure(data);
+ case 683: return new ::Ifc4x3_add1::IfcMomentOfInertiaMeasure(data);
+ case 684: return new ::Ifc4x3_add1::IfcMonetaryMeasure(data);
+ case 685: return new ::Ifc4x3_add1::IfcMonetaryUnit(data);
+ case 686: return new ::Ifc4x3_add1::IfcMonthInYearNumber(data);
+ case 687: return new ::Ifc4x3_add1::IfcMooringDevice(data);
+ case 688: return new ::Ifc4x3_add1::IfcMooringDeviceType(data);
+ case 689: return new ::Ifc4x3_add1::IfcMooringDeviceTypeEnum(data);
+ case 690: return new ::Ifc4x3_add1::IfcMotorConnection(data);
+ case 691: return new ::Ifc4x3_add1::IfcMotorConnectionType(data);
+ case 692: return new ::Ifc4x3_add1::IfcMotorConnectionTypeEnum(data);
+ case 693: return new ::Ifc4x3_add1::IfcNamedUnit(data);
+ case 694: return new ::Ifc4x3_add1::IfcNavigationElement(data);
+ case 695: return new ::Ifc4x3_add1::IfcNavigationElementType(data);
+ case 696: return new ::Ifc4x3_add1::IfcNavigationElementTypeEnum(data);
+ case 697: return new ::Ifc4x3_add1::IfcNonNegativeLengthMeasure(data);
+ case 698: return new ::Ifc4x3_add1::IfcNormalisedRatioMeasure(data);
+ case 699: return new ::Ifc4x3_add1::IfcNumericMeasure(data);
+ case 700: return new ::Ifc4x3_add1::IfcObject(data);
+ case 701: return new ::Ifc4x3_add1::IfcObjectDefinition(data);
+ case 702: return new ::Ifc4x3_add1::IfcObjective(data);
+ case 703: return new ::Ifc4x3_add1::IfcObjectiveEnum(data);
+ case 704: return new ::Ifc4x3_add1::IfcObjectPlacement(data);
+ case 706: return new ::Ifc4x3_add1::IfcOccupant(data);
+ case 707: return new ::Ifc4x3_add1::IfcOccupantTypeEnum(data);
+ case 708: return new ::Ifc4x3_add1::IfcOffsetCurve(data);
+ case 709: return new ::Ifc4x3_add1::IfcOffsetCurve2D(data);
+ case 710: return new ::Ifc4x3_add1::IfcOffsetCurve3D(data);
+ case 711: return new ::Ifc4x3_add1::IfcOffsetCurveByDistances(data);
+ case 712: return new ::Ifc4x3_add1::IfcOpenCrossProfileDef(data);
+ case 713: return new ::Ifc4x3_add1::IfcOpeningElement(data);
+ case 714: return new ::Ifc4x3_add1::IfcOpeningElementTypeEnum(data);
+ case 715: return new ::Ifc4x3_add1::IfcOpenShell(data);
+ case 716: return new ::Ifc4x3_add1::IfcOrganization(data);
+ case 717: return new ::Ifc4x3_add1::IfcOrganizationRelationship(data);
+ case 718: return new ::Ifc4x3_add1::IfcOrientedEdge(data);
+ case 719: return new ::Ifc4x3_add1::IfcOuterBoundaryCurve(data);
+ case 720: return new ::Ifc4x3_add1::IfcOutlet(data);
+ case 721: return new ::Ifc4x3_add1::IfcOutletType(data);
+ case 722: return new ::Ifc4x3_add1::IfcOutletTypeEnum(data);
+ case 723: return new ::Ifc4x3_add1::IfcOwnerHistory(data);
+ case 724: return new ::Ifc4x3_add1::IfcParameterizedProfileDef(data);
+ case 725: return new ::Ifc4x3_add1::IfcParameterValue(data);
+ case 726: return new ::Ifc4x3_add1::IfcPath(data);
+ case 727: return new ::Ifc4x3_add1::IfcPavement(data);
+ case 728: return new ::Ifc4x3_add1::IfcPavementType(data);
+ case 729: return new ::Ifc4x3_add1::IfcPavementTypeEnum(data);
+ case 730: return new ::Ifc4x3_add1::IfcPcurve(data);
+ case 731: return new ::Ifc4x3_add1::IfcPerformanceHistory(data);
+ case 732: return new ::Ifc4x3_add1::IfcPerformanceHistoryTypeEnum(data);
+ case 733: return new ::Ifc4x3_add1::IfcPermeableCoveringOperationEnum(data);
+ case 734: return new ::Ifc4x3_add1::IfcPermeableCoveringProperties(data);
+ case 735: return new ::Ifc4x3_add1::IfcPermit(data);
+ case 736: return new ::Ifc4x3_add1::IfcPermitTypeEnum(data);
+ case 737: return new ::Ifc4x3_add1::IfcPerson(data);
+ case 738: return new ::Ifc4x3_add1::IfcPersonAndOrganization(data);
+ case 739: return new ::Ifc4x3_add1::IfcPHMeasure(data);
+ case 740: return new ::Ifc4x3_add1::IfcPhysicalComplexQuantity(data);
+ case 741: return new ::Ifc4x3_add1::IfcPhysicalOrVirtualEnum(data);
+ case 742: return new ::Ifc4x3_add1::IfcPhysicalQuantity(data);
+ case 743: return new ::Ifc4x3_add1::IfcPhysicalSimpleQuantity(data);
+ case 744: return new ::Ifc4x3_add1::IfcPile(data);
+ case 745: return new ::Ifc4x3_add1::IfcPileConstructionEnum(data);
+ case 746: return new ::Ifc4x3_add1::IfcPileType(data);
+ case 747: return new ::Ifc4x3_add1::IfcPileTypeEnum(data);
+ case 748: return new ::Ifc4x3_add1::IfcPipeFitting(data);
+ case 749: return new ::Ifc4x3_add1::IfcPipeFittingType(data);
+ case 750: return new ::Ifc4x3_add1::IfcPipeFittingTypeEnum(data);
+ case 751: return new ::Ifc4x3_add1::IfcPipeSegment(data);
+ case 752: return new ::Ifc4x3_add1::IfcPipeSegmentType(data);
+ case 753: return new ::Ifc4x3_add1::IfcPipeSegmentTypeEnum(data);
+ case 754: return new ::Ifc4x3_add1::IfcPixelTexture(data);
+ case 755: return new ::Ifc4x3_add1::IfcPlacement(data);
+ case 756: return new ::Ifc4x3_add1::IfcPlanarBox(data);
+ case 757: return new ::Ifc4x3_add1::IfcPlanarExtent(data);
+ case 758: return new ::Ifc4x3_add1::IfcPlanarForceMeasure(data);
+ case 759: return new ::Ifc4x3_add1::IfcPlane(data);
+ case 760: return new ::Ifc4x3_add1::IfcPlaneAngleMeasure(data);
+ case 761: return new ::Ifc4x3_add1::IfcPlate(data);
+ case 762: return new ::Ifc4x3_add1::IfcPlateType(data);
+ case 763: return new ::Ifc4x3_add1::IfcPlateTypeEnum(data);
+ case 764: return new ::Ifc4x3_add1::IfcPoint(data);
+ case 765: return new ::Ifc4x3_add1::IfcPointByDistanceExpression(data);
+ case 766: return new ::Ifc4x3_add1::IfcPointOnCurve(data);
+ case 767: return new ::Ifc4x3_add1::IfcPointOnSurface(data);
+ case 769: return new ::Ifc4x3_add1::IfcPolygonalBoundedHalfSpace(data);
+ case 770: return new ::Ifc4x3_add1::IfcPolygonalFaceSet(data);
+ case 771: return new ::Ifc4x3_add1::IfcPolyline(data);
+ case 772: return new ::Ifc4x3_add1::IfcPolyLoop(data);
+ case 773: return new ::Ifc4x3_add1::IfcPolynomialCurve(data);
+ case 774: return new ::Ifc4x3_add1::IfcPort(data);
+ case 775: return new ::Ifc4x3_add1::IfcPositioningElement(data);
+ case 776: return new ::Ifc4x3_add1::IfcPositiveInteger(data);
+ case 777: return new ::Ifc4x3_add1::IfcPositiveLengthMeasure(data);
+ case 778: return new ::Ifc4x3_add1::IfcPositivePlaneAngleMeasure(data);
+ case 779: return new ::Ifc4x3_add1::IfcPositiveRatioMeasure(data);
+ case 780: return new ::Ifc4x3_add1::IfcPostalAddress(data);
+ case 781: return new ::Ifc4x3_add1::IfcPowerMeasure(data);
+ case 782: return new ::Ifc4x3_add1::IfcPreDefinedColour(data);
+ case 783: return new ::Ifc4x3_add1::IfcPreDefinedCurveFont(data);
+ case 784: return new ::Ifc4x3_add1::IfcPreDefinedItem(data);
+ case 785: return new ::Ifc4x3_add1::IfcPreDefinedProperties(data);
+ case 786: return new ::Ifc4x3_add1::IfcPreDefinedPropertySet(data);
+ case 787: return new ::Ifc4x3_add1::IfcPreDefinedTextFont(data);
+ case 788: return new ::Ifc4x3_add1::IfcPreferredSurfaceCurveRepresentation(data);
+ case 789: return new ::Ifc4x3_add1::IfcPresentableText(data);
+ case 790: return new ::Ifc4x3_add1::IfcPresentationItem(data);
+ case 791: return new ::Ifc4x3_add1::IfcPresentationLayerAssignment(data);
+ case 792: return new ::Ifc4x3_add1::IfcPresentationLayerWithStyle(data);
+ case 793: return new ::Ifc4x3_add1::IfcPresentationStyle(data);
+ case 794: return new ::Ifc4x3_add1::IfcPressureMeasure(data);
+ case 795: return new ::Ifc4x3_add1::IfcProcedure(data);
+ case 796: return new ::Ifc4x3_add1::IfcProcedureType(data);
+ case 797: return new ::Ifc4x3_add1::IfcProcedureTypeEnum(data);
+ case 798: return new ::Ifc4x3_add1::IfcProcess(data);
+ case 800: return new ::Ifc4x3_add1::IfcProduct(data);
+ case 801: return new ::Ifc4x3_add1::IfcProductDefinitionShape(data);
+ case 802: return new ::Ifc4x3_add1::IfcProductRepresentation(data);
+ case 805: return new ::Ifc4x3_add1::IfcProfileDef(data);
+ case 806: return new ::Ifc4x3_add1::IfcProfileProperties(data);
+ case 807: return new ::Ifc4x3_add1::IfcProfileTypeEnum(data);
+ case 808: return new ::Ifc4x3_add1::IfcProject(data);
+ case 809: return new ::Ifc4x3_add1::IfcProjectedCRS(data);
+ case 810: return new ::Ifc4x3_add1::IfcProjectedOrTrueLengthEnum(data);
+ case 811: return new ::Ifc4x3_add1::IfcProjectionElement(data);
+ case 812: return new ::Ifc4x3_add1::IfcProjectionElementTypeEnum(data);
+ case 813: return new ::Ifc4x3_add1::IfcProjectLibrary(data);
+ case 814: return new ::Ifc4x3_add1::IfcProjectOrder(data);
+ case 815: return new ::Ifc4x3_add1::IfcProjectOrderTypeEnum(data);
+ case 816: return new ::Ifc4x3_add1::IfcProperty(data);
+ case 817: return new ::Ifc4x3_add1::IfcPropertyAbstraction(data);
+ case 818: return new ::Ifc4x3_add1::IfcPropertyBoundedValue(data);
+ case 819: return new ::Ifc4x3_add1::IfcPropertyDefinition(data);
+ case 820: return new ::Ifc4x3_add1::IfcPropertyDependencyRelationship(data);
+ case 821: return new ::Ifc4x3_add1::IfcPropertyEnumeratedValue(data);
+ case 822: return new ::Ifc4x3_add1::IfcPropertyEnumeration(data);
+ case 823: return new ::Ifc4x3_add1::IfcPropertyListValue(data);
+ case 824: return new ::Ifc4x3_add1::IfcPropertyReferenceValue(data);
+ case 825: return new ::Ifc4x3_add1::IfcPropertySet(data);
+ case 826: return new ::Ifc4x3_add1::IfcPropertySetDefinition(data);
+ case 828: return new ::Ifc4x3_add1::IfcPropertySetDefinitionSet(data);
+ case 829: return new ::Ifc4x3_add1::IfcPropertySetTemplate(data);
+ case 830: return new ::Ifc4x3_add1::IfcPropertySetTemplateTypeEnum(data);
+ case 831: return new ::Ifc4x3_add1::IfcPropertySingleValue(data);
+ case 832: return new ::Ifc4x3_add1::IfcPropertyTableValue(data);
+ case 833: return new ::Ifc4x3_add1::IfcPropertyTemplate(data);
+ case 834: return new ::Ifc4x3_add1::IfcPropertyTemplateDefinition(data);
+ case 835: return new ::Ifc4x3_add1::IfcProtectiveDevice(data);
+ case 836: return new ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnit(data);
+ case 837: return new ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitType(data);
+ case 838: return new ::Ifc4x3_add1::IfcProtectiveDeviceTrippingUnitTypeEnum(data);
+ case 839: return new ::Ifc4x3_add1::IfcProtectiveDeviceType(data);
+ case 840: return new ::Ifc4x3_add1::IfcProtectiveDeviceTypeEnum(data);
+ case 841: return new ::Ifc4x3_add1::IfcPump(data);
+ case 842: return new ::Ifc4x3_add1::IfcPumpType(data);
+ case 843: return new ::Ifc4x3_add1::IfcPumpTypeEnum(data);
+ case 844: return new ::Ifc4x3_add1::IfcQuantityArea(data);
+ case 845: return new ::Ifc4x3_add1::IfcQuantityCount(data);
+ case 846: return new ::Ifc4x3_add1::IfcQuantityLength(data);
+ case 847: return new ::Ifc4x3_add1::IfcQuantityNumber(data);
+ case 848: return new ::Ifc4x3_add1::IfcQuantitySet(data);
+ case 849: return new ::Ifc4x3_add1::IfcQuantityTime(data);
+ case 850: return new ::Ifc4x3_add1::IfcQuantityVolume(data);
+ case 851: return new ::Ifc4x3_add1::IfcQuantityWeight(data);
+ case 852: return new ::Ifc4x3_add1::IfcRadioActivityMeasure(data);
+ case 853: return new ::Ifc4x3_add1::IfcRail(data);
+ case 854: return new ::Ifc4x3_add1::IfcRailing(data);
+ case 855: return new ::Ifc4x3_add1::IfcRailingType(data);
+ case 856: return new ::Ifc4x3_add1::IfcRailingTypeEnum(data);
+ case 857: return new ::Ifc4x3_add1::IfcRailType(data);
+ case 858: return new ::Ifc4x3_add1::IfcRailTypeEnum(data);
+ case 859: return new ::Ifc4x3_add1::IfcRailway(data);
+ case 860: return new ::Ifc4x3_add1::IfcRailwayPart(data);
+ case 861: return new ::Ifc4x3_add1::IfcRailwayPartTypeEnum(data);
+ case 862: return new ::Ifc4x3_add1::IfcRailwayTypeEnum(data);
+ case 863: return new ::Ifc4x3_add1::IfcRamp(data);
+ case 864: return new ::Ifc4x3_add1::IfcRampFlight(data);
+ case 865: return new ::Ifc4x3_add1::IfcRampFlightType(data);
+ case 866: return new ::Ifc4x3_add1::IfcRampFlightTypeEnum(data);
+ case 867: return new ::Ifc4x3_add1::IfcRampType(data);
+ case 868: return new ::Ifc4x3_add1::IfcRampTypeEnum(data);
+ case 869: return new ::Ifc4x3_add1::IfcRatioMeasure(data);
+ case 870: return new ::Ifc4x3_add1::IfcRationalBSplineCurveWithKnots(data);
+ case 871: return new ::Ifc4x3_add1::IfcRationalBSplineSurfaceWithKnots(data);
+ case 872: return new ::Ifc4x3_add1::IfcReal(data);
+ case 873: return new ::Ifc4x3_add1::IfcRectangleHollowProfileDef(data);
+ case 874: return new ::Ifc4x3_add1::IfcRectangleProfileDef(data);
+ case 875: return new ::Ifc4x3_add1::IfcRectangularPyramid(data);
+ case 876: return new ::Ifc4x3_add1::IfcRectangularTrimmedSurface(data);
+ case 877: return new ::Ifc4x3_add1::IfcRecurrencePattern(data);
+ case 878: return new ::Ifc4x3_add1::IfcRecurrenceTypeEnum(data);
+ case 879: return new ::Ifc4x3_add1::IfcReference(data);
+ case 880: return new ::Ifc4x3_add1::IfcReferent(data);
+ case 881: return new ::Ifc4x3_add1::IfcReferentTypeEnum(data);
+ case 882: return new ::Ifc4x3_add1::IfcReflectanceMethodEnum(data);
+ case 883: return new ::Ifc4x3_add1::IfcRegularTimeSeries(data);
+ case 884: return new ::Ifc4x3_add1::IfcReinforcedSoil(data);
+ case 885: return new ::Ifc4x3_add1::IfcReinforcedSoilTypeEnum(data);
+ case 886: return new ::Ifc4x3_add1::IfcReinforcementBarProperties(data);
+ case 887: return new ::Ifc4x3_add1::IfcReinforcementDefinitionProperties(data);
+ case 888: return new ::Ifc4x3_add1::IfcReinforcingBar(data);
+ case 889: return new ::Ifc4x3_add1::IfcReinforcingBarRoleEnum(data);
+ case 890: return new ::Ifc4x3_add1::IfcReinforcingBarSurfaceEnum(data);
+ case 891: return new ::Ifc4x3_add1::IfcReinforcingBarType(data);
+ case 892: return new ::Ifc4x3_add1::IfcReinforcingBarTypeEnum(data);
+ case 893: return new ::Ifc4x3_add1::IfcReinforcingElement(data);
+ case 894: return new ::Ifc4x3_add1::IfcReinforcingElementType(data);
+ case 895: return new ::Ifc4x3_add1::IfcReinforcingMesh(data);
+ case 896: return new ::Ifc4x3_add1::IfcReinforcingMeshType(data);
+ case 897: return new ::Ifc4x3_add1::IfcReinforcingMeshTypeEnum(data);
+ case 898: return new ::Ifc4x3_add1::IfcRelAdheresToElement(data);
+ case 899: return new ::Ifc4x3_add1::IfcRelAggregates(data);
+ case 900: return new ::Ifc4x3_add1::IfcRelAssigns(data);
+ case 901: return new ::Ifc4x3_add1::IfcRelAssignsToActor(data);
+ case 902: return new ::Ifc4x3_add1::IfcRelAssignsToControl(data);
+ case 903: return new ::Ifc4x3_add1::IfcRelAssignsToGroup(data);
+ case 904: return new ::Ifc4x3_add1::IfcRelAssignsToGroupByFactor(data);
+ case 905: return new ::Ifc4x3_add1::IfcRelAssignsToProcess(data);
+ case 906: return new ::Ifc4x3_add1::IfcRelAssignsToProduct(data);
+ case 907: return new ::Ifc4x3_add1::IfcRelAssignsToResource(data);
+ case 908: return new ::Ifc4x3_add1::IfcRelAssociates(data);
+ case 909: return new ::Ifc4x3_add1::IfcRelAssociatesApproval(data);
+ case 910: return new ::Ifc4x3_add1::IfcRelAssociatesClassification(data);
+ case 911: return new ::Ifc4x3_add1::IfcRelAssociatesConstraint(data);
+ case 912: return new ::Ifc4x3_add1::IfcRelAssociatesDocument(data);
+ case 913: return new ::Ifc4x3_add1::IfcRelAssociatesLibrary(data);
+ case 914: return new ::Ifc4x3_add1::IfcRelAssociatesMaterial(data);
+ case 915: return new ::Ifc4x3_add1::IfcRelAssociatesProfileDef(data);
+ case 916: return new ::Ifc4x3_add1::IfcRelationship(data);
+ case 917: return new ::Ifc4x3_add1::IfcRelConnects(data);
+ case 918: return new ::Ifc4x3_add1::IfcRelConnectsElements(data);
+ case 919: return new ::Ifc4x3_add1::IfcRelConnectsPathElements(data);
+ case 920: return new ::Ifc4x3_add1::IfcRelConnectsPorts(data);
+ case 921: return new ::Ifc4x3_add1::IfcRelConnectsPortToElement(data);
+ case 922: return new ::Ifc4x3_add1::IfcRelConnectsStructuralActivity(data);
+ case 923: return new ::Ifc4x3_add1::IfcRelConnectsStructuralMember(data);
+ case 924: return new ::Ifc4x3_add1::IfcRelConnectsWithEccentricity(data);
+ case 925: return new ::Ifc4x3_add1::IfcRelConnectsWithRealizingElements(data);
+ case 926: return new ::Ifc4x3_add1::IfcRelContainedInSpatialStructure(data);
+ case 927: return new ::Ifc4x3_add1::IfcRelCoversBldgElements(data);
+ case 928: return new ::Ifc4x3_add1::IfcRelCoversSpaces(data);
+ case 929: return new ::Ifc4x3_add1::IfcRelDeclares(data);
+ case 930: return new ::Ifc4x3_add1::IfcRelDecomposes(data);
+ case 931: return new ::Ifc4x3_add1::IfcRelDefines(data);
+ case 932: return new ::Ifc4x3_add1::IfcRelDefinesByObject(data);
+ case 933: return new ::Ifc4x3_add1::IfcRelDefinesByProperties(data);
+ case 934: return new ::Ifc4x3_add1::IfcRelDefinesByTemplate(data);
+ case 935: return new ::Ifc4x3_add1::IfcRelDefinesByType(data);
+ case 936: return new ::Ifc4x3_add1::IfcRelFillsElement(data);
+ case 937: return new ::Ifc4x3_add1::IfcRelFlowControlElements(data);
+ case 938: return new ::Ifc4x3_add1::IfcRelInterferesElements(data);
+ case 939: return new ::Ifc4x3_add1::IfcRelNests(data);
+ case 940: return new ::Ifc4x3_add1::IfcRelPositions(data);
+ case 941: return new ::Ifc4x3_add1::IfcRelProjectsElement(data);
+ case 942: return new ::Ifc4x3_add1::IfcRelReferencedInSpatialStructure(data);
+ case 943: return new ::Ifc4x3_add1::IfcRelSequence(data);
+ case 944: return new ::Ifc4x3_add1::IfcRelServicesBuildings(data);
+ case 945: return new ::Ifc4x3_add1::IfcRelSpaceBoundary(data);
+ case 946: return new ::Ifc4x3_add1::IfcRelSpaceBoundary1stLevel(data);
+ case 947: return new ::Ifc4x3_add1::IfcRelSpaceBoundary2ndLevel(data);
+ case 948: return new ::Ifc4x3_add1::IfcRelVoidsElement(data);
+ case 949: return new ::Ifc4x3_add1::IfcReparametrisedCompositeCurveSegment(data);
+ case 950: return new ::Ifc4x3_add1::IfcRepresentation(data);
+ case 951: return new ::Ifc4x3_add1::IfcRepresentationContext(data);
+ case 952: return new ::Ifc4x3_add1::IfcRepresentationItem(data);
+ case 953: return new ::Ifc4x3_add1::IfcRepresentationMap(data);
+ case 954: return new ::Ifc4x3_add1::IfcResource(data);
+ case 955: return new ::Ifc4x3_add1::IfcResourceApprovalRelationship(data);
+ case 956: return new ::Ifc4x3_add1::IfcResourceConstraintRelationship(data);
+ case 957: return new ::Ifc4x3_add1::IfcResourceLevelRelationship(data);
+ case 960: return new ::Ifc4x3_add1::IfcResourceTime(data);
+ case 961: return new ::Ifc4x3_add1::IfcRevolvedAreaSolid(data);
+ case 962: return new ::Ifc4x3_add1::IfcRevolvedAreaSolidTapered(data);
+ case 963: return new ::Ifc4x3_add1::IfcRightCircularCone(data);
+ case 964: return new ::Ifc4x3_add1::IfcRightCircularCylinder(data);
+ case 965: return new ::Ifc4x3_add1::IfcRigidOperation(data);
+ case 966: return new ::Ifc4x3_add1::IfcRoad(data);
+ case 967: return new ::Ifc4x3_add1::IfcRoadPart(data);
+ case 968: return new ::Ifc4x3_add1::IfcRoadPartTypeEnum(data);
+ case 969: return new ::Ifc4x3_add1::IfcRoadTypeEnum(data);
+ case 970: return new ::Ifc4x3_add1::IfcRoleEnum(data);
+ case 971: return new ::Ifc4x3_add1::IfcRoof(data);
+ case 972: return new ::Ifc4x3_add1::IfcRoofType(data);
+ case 973: return new ::Ifc4x3_add1::IfcRoofTypeEnum(data);
+ case 974: return new ::Ifc4x3_add1::IfcRoot(data);
+ case 975: return new ::Ifc4x3_add1::IfcRotationalFrequencyMeasure(data);
+ case 976: return new ::Ifc4x3_add1::IfcRotationalMassMeasure(data);
+ case 977: return new ::Ifc4x3_add1::IfcRotationalStiffnessMeasure(data);
+ case 979: return new ::Ifc4x3_add1::IfcRoundedRectangleProfileDef(data);
+ case 980: return new ::Ifc4x3_add1::IfcSanitaryTerminal(data);
+ case 981: return new ::Ifc4x3_add1::IfcSanitaryTerminalType(data);
+ case 982: return new ::Ifc4x3_add1::IfcSanitaryTerminalTypeEnum(data);
+ case 983: return new ::Ifc4x3_add1::IfcSchedulingTime(data);
+ case 984: return new ::Ifc4x3_add1::IfcSeamCurve(data);
+ case 985: return new ::Ifc4x3_add1::IfcSecondOrderPolynomialSpiral(data);
+ case 986: return new ::Ifc4x3_add1::IfcSectionalAreaIntegralMeasure(data);
+ case 987: return new ::Ifc4x3_add1::IfcSectionedSolid(data);
+ case 988: return new ::Ifc4x3_add1::IfcSectionedSolidHorizontal(data);
+ case 989: return new ::Ifc4x3_add1::IfcSectionedSpine(data);
+ case 990: return new ::Ifc4x3_add1::IfcSectionedSurface(data);
+ case 991: return new ::Ifc4x3_add1::IfcSectionModulusMeasure(data);
+ case 992: return new ::Ifc4x3_add1::IfcSectionProperties(data);
+ case 993: return new ::Ifc4x3_add1::IfcSectionReinforcementProperties(data);
+ case 994: return new ::Ifc4x3_add1::IfcSectionTypeEnum(data);
+ case 995: return new ::Ifc4x3_add1::IfcSegment(data);
+ case 996: return new ::Ifc4x3_add1::IfcSegmentedReferenceCurve(data);
+ case 998: return new ::Ifc4x3_add1::IfcSensor(data);
+ case 999: return new ::Ifc4x3_add1::IfcSensorType(data);
+ case 1000: return new ::Ifc4x3_add1::IfcSensorTypeEnum(data);
+ case 1001: return new ::Ifc4x3_add1::IfcSequenceEnum(data);
+ case 1002: return new ::Ifc4x3_add1::IfcSeventhOrderPolynomialSpiral(data);
+ case 1003: return new ::Ifc4x3_add1::IfcShadingDevice(data);
+ case 1004: return new ::Ifc4x3_add1::IfcShadingDeviceType(data);
+ case 1005: return new ::Ifc4x3_add1::IfcShadingDeviceTypeEnum(data);
+ case 1006: return new ::Ifc4x3_add1::IfcShapeAspect(data);
+ case 1007: return new ::Ifc4x3_add1::IfcShapeModel(data);
+ case 1008: return new ::Ifc4x3_add1::IfcShapeRepresentation(data);
+ case 1009: return new ::Ifc4x3_add1::IfcShearModulusMeasure(data);
+ case 1011: return new ::Ifc4x3_add1::IfcShellBasedSurfaceModel(data);
+ case 1012: return new ::Ifc4x3_add1::IfcSign(data);
+ case 1013: return new ::Ifc4x3_add1::IfcSignal(data);
+ case 1014: return new ::Ifc4x3_add1::IfcSignalType(data);
+ case 1015: return new ::Ifc4x3_add1::IfcSignalTypeEnum(data);
+ case 1016: return new ::Ifc4x3_add1::IfcSignType(data);
+ case 1017: return new ::Ifc4x3_add1::IfcSignTypeEnum(data);
+ case 1018: return new ::Ifc4x3_add1::IfcSimpleProperty(data);
+ case 1019: return new ::Ifc4x3_add1::IfcSimplePropertyTemplate(data);
+ case 1020: return new ::Ifc4x3_add1::IfcSimplePropertyTemplateTypeEnum(data);
+ case 1022: return new ::Ifc4x3_add1::IfcSineSpiral(data);
+ case 1023: return new ::Ifc4x3_add1::IfcSIPrefix(data);
+ case 1024: return new ::Ifc4x3_add1::IfcSite(data);
+ case 1025: return new ::Ifc4x3_add1::IfcSIUnit(data);
+ case 1026: return new ::Ifc4x3_add1::IfcSIUnitName(data);
+ case 1028: return new ::Ifc4x3_add1::IfcSlab(data);
+ case 1029: return new ::Ifc4x3_add1::IfcSlabType(data);
+ case 1030: return new ::Ifc4x3_add1::IfcSlabTypeEnum(data);
+ case 1031: return new ::Ifc4x3_add1::IfcSlippageConnectionCondition(data);
+ case 1032: return new ::Ifc4x3_add1::IfcSolarDevice(data);
+ case 1033: return new ::Ifc4x3_add1::IfcSolarDeviceType(data);
+ case 1034: return new ::Ifc4x3_add1::IfcSolarDeviceTypeEnum(data);
+ case 1035: return new ::Ifc4x3_add1::IfcSolidAngleMeasure(data);
+ case 1036: return new ::Ifc4x3_add1::IfcSolidModel(data);
+ case 1038: return new ::Ifc4x3_add1::IfcSoundPowerLevelMeasure(data);
+ case 1039: return new ::Ifc4x3_add1::IfcSoundPowerMeasure(data);
+ case 1040: return new ::Ifc4x3_add1::IfcSoundPressureLevelMeasure(data);
+ case 1041: return new ::Ifc4x3_add1::IfcSoundPressureMeasure(data);
+ case 1042: return new ::Ifc4x3_add1::IfcSpace(data);
+ case 1044: return new ::Ifc4x3_add1::IfcSpaceHeater(data);
+ case 1045: return new ::Ifc4x3_add1::IfcSpaceHeaterType(data);
+ case 1046: return new ::Ifc4x3_add1::IfcSpaceHeaterTypeEnum(data);
+ case 1047: return new ::Ifc4x3_add1::IfcSpaceType(data);
+ case 1048: return new ::Ifc4x3_add1::IfcSpaceTypeEnum(data);
+ case 1049: return new ::Ifc4x3_add1::IfcSpatialElement(data);
+ case 1050: return new ::Ifc4x3_add1::IfcSpatialElementType(data);
+ case 1052: return new ::Ifc4x3_add1::IfcSpatialStructureElement(data);
+ case 1053: return new ::Ifc4x3_add1::IfcSpatialStructureElementType(data);
+ case 1054: return new ::Ifc4x3_add1::IfcSpatialZone(data);
+ case 1055: return new ::Ifc4x3_add1::IfcSpatialZoneType(data);
+ case 1056: return new ::Ifc4x3_add1::IfcSpatialZoneTypeEnum(data);
+ case 1057: return new ::Ifc4x3_add1::IfcSpecificHeatCapacityMeasure(data);
+ case 1058: return new ::Ifc4x3_add1::IfcSpecularExponent(data);
+ case 1060: return new ::Ifc4x3_add1::IfcSpecularRoughness(data);
+ case 1061: return new ::Ifc4x3_add1::IfcSphere(data);
+ case 1062: return new ::Ifc4x3_add1::IfcSphericalSurface(data);
+ case 1063: return new ::Ifc4x3_add1::IfcSpiral(data);
+ case 1064: return new ::Ifc4x3_add1::IfcStackTerminal(data);
+ case 1065: return new ::Ifc4x3_add1::IfcStackTerminalType(data);
+ case 1066: return new ::Ifc4x3_add1::IfcStackTerminalTypeEnum(data);
+ case 1067: return new ::Ifc4x3_add1::IfcStair(data);
+ case 1068: return new ::Ifc4x3_add1::IfcStairFlight(data);
+ case 1069: return new ::Ifc4x3_add1::IfcStairFlightType(data);
+ case 1070: return new ::Ifc4x3_add1::IfcStairFlightTypeEnum(data);
+ case 1071: return new ::Ifc4x3_add1::IfcStairType(data);
+ case 1072: return new ::Ifc4x3_add1::IfcStairTypeEnum(data);
+ case 1073: return new ::Ifc4x3_add1::IfcStateEnum(data);
+ case 1074: return new ::Ifc4x3_add1::IfcStrippedOptional(data);
+ case 1075: return new ::Ifc4x3_add1::IfcStructuralAction(data);
+ case 1076: return new ::Ifc4x3_add1::IfcStructuralActivity(data);
+ case 1078: return new ::Ifc4x3_add1::IfcStructuralAnalysisModel(data);
+ case 1079: return new ::Ifc4x3_add1::IfcStructuralConnection(data);
+ case 1080: return new ::Ifc4x3_add1::IfcStructuralConnectionCondition(data);
+ case 1081: return new ::Ifc4x3_add1::IfcStructuralCurveAction(data);
+ case 1082: return new ::Ifc4x3_add1::IfcStructuralCurveActivityTypeEnum(data);
+ case 1083: return new ::Ifc4x3_add1::IfcStructuralCurveConnection(data);
+ case 1084: return new ::Ifc4x3_add1::IfcStructuralCurveMember(data);
+ case 1085: return new ::Ifc4x3_add1::IfcStructuralCurveMemberTypeEnum(data);
+ case 1086: return new ::Ifc4x3_add1::IfcStructuralCurveMemberVarying(data);
+ case 1087: return new ::Ifc4x3_add1::IfcStructuralCurveReaction(data);
+ case 1088: return new ::Ifc4x3_add1::IfcStructuralItem(data);
+ case 1089: return new ::Ifc4x3_add1::IfcStructuralLinearAction(data);
+ case 1090: return new ::Ifc4x3_add1::IfcStructuralLoad(data);
+ case 1091: return new ::Ifc4x3_add1::IfcStructuralLoadCase(data);
+ case 1092: return new ::Ifc4x3_add1::IfcStructuralLoadConfiguration(data);
+ case 1093: return new ::Ifc4x3_add1::IfcStructuralLoadGroup(data);
+ case 1094: return new ::Ifc4x3_add1::IfcStructuralLoadLinearForce(data);
+ case 1095: return new ::Ifc4x3_add1::IfcStructuralLoadOrResult(data);
+ case 1096: return new ::Ifc4x3_add1::IfcStructuralLoadPlanarForce(data);
+ case 1097: return new ::Ifc4x3_add1::IfcStructuralLoadSingleDisplacement(data);
+ case 1098: return new ::Ifc4x3_add1::IfcStructuralLoadSingleDisplacementDistortion(data);
+ case 1099: return new ::Ifc4x3_add1::IfcStructuralLoadSingleForce(data);
+ case 1100: return new ::Ifc4x3_add1::IfcStructuralLoadSingleForceWarping(data);
+ case 1101: return new ::Ifc4x3_add1::IfcStructuralLoadStatic(data);
+ case 1102: return new ::Ifc4x3_add1::IfcStructuralLoadTemperature(data);
+ case 1103: return new ::Ifc4x3_add1::IfcStructuralMember(data);
+ case 1104: return new ::Ifc4x3_add1::IfcStructuralPlanarAction(data);
+ case 1105: return new ::Ifc4x3_add1::IfcStructuralPointAction(data);
+ case 1106: return new ::Ifc4x3_add1::IfcStructuralPointConnection(data);
+ case 1107: return new ::Ifc4x3_add1::IfcStructuralPointReaction(data);
+ case 1108: return new ::Ifc4x3_add1::IfcStructuralReaction(data);
+ case 1109: return new ::Ifc4x3_add1::IfcStructuralResultGroup(data);
+ case 1110: return new ::Ifc4x3_add1::IfcStructuralSurfaceAction(data);
+ case 1111: return new ::Ifc4x3_add1::IfcStructuralSurfaceActivityTypeEnum(data);
+ case 1112: return new ::Ifc4x3_add1::IfcStructuralSurfaceConnection(data);
+ case 1113: return new ::Ifc4x3_add1::IfcStructuralSurfaceMember(data);
+ case 1114: return new ::Ifc4x3_add1::IfcStructuralSurfaceMemberTypeEnum(data);
+ case 1115: return new ::Ifc4x3_add1::IfcStructuralSurfaceMemberVarying(data);
+ case 1116: return new ::Ifc4x3_add1::IfcStructuralSurfaceReaction(data);
+ case 1117: return new ::Ifc4x3_add1::IfcStyledItem(data);
+ case 1118: return new ::Ifc4x3_add1::IfcStyledRepresentation(data);
+ case 1119: return new ::Ifc4x3_add1::IfcStyleModel(data);
+ case 1120: return new ::Ifc4x3_add1::IfcSubContractResource(data);
+ case 1121: return new ::Ifc4x3_add1::IfcSubContractResourceType(data);
+ case 1122: return new ::Ifc4x3_add1::IfcSubContractResourceTypeEnum(data);
+ case 1123: return new ::Ifc4x3_add1::IfcSubedge(data);
+ case 1124: return new ::Ifc4x3_add1::IfcSurface(data);
+ case 1125: return new ::Ifc4x3_add1::IfcSurfaceCurve(data);
+ case 1126: return new ::Ifc4x3_add1::IfcSurfaceCurveSweptAreaSolid(data);
+ case 1127: return new ::Ifc4x3_add1::IfcSurfaceFeature(data);
+ case 1128: return new ::Ifc4x3_add1::IfcSurfaceFeatureTypeEnum(data);
+ case 1129: return new ::Ifc4x3_add1::IfcSurfaceOfLinearExtrusion(data);
+ case 1130: return new ::Ifc4x3_add1::IfcSurfaceOfRevolution(data);
+ case 1132: return new ::Ifc4x3_add1::IfcSurfaceReinforcementArea(data);
+ case 1133: return new ::Ifc4x3_add1::IfcSurfaceSide(data);
+ case 1134: return new ::Ifc4x3_add1::IfcSurfaceStyle(data);
+ case 1136: return new ::Ifc4x3_add1::IfcSurfaceStyleLighting(data);
+ case 1137: return new ::Ifc4x3_add1::IfcSurfaceStyleRefraction(data);
+ case 1138: return new ::Ifc4x3_add1::IfcSurfaceStyleRendering(data);
+ case 1139: return new ::Ifc4x3_add1::IfcSurfaceStyleShading(data);
+ case 1140: return new ::Ifc4x3_add1::IfcSurfaceStyleWithTextures(data);
+ case 1141: return new ::Ifc4x3_add1::IfcSurfaceTexture(data);
+ case 1142: return new ::Ifc4x3_add1::IfcSweptAreaSolid(data);
+ case 1143: return new ::Ifc4x3_add1::IfcSweptDiskSolid(data);
+ case 1144: return new ::Ifc4x3_add1::IfcSweptDiskSolidPolygonal(data);
+ case 1145: return new ::Ifc4x3_add1::IfcSweptSurface(data);
+ case 1146: return new ::Ifc4x3_add1::IfcSwitchingDevice(data);
+ case 1147: return new ::Ifc4x3_add1::IfcSwitchingDeviceType(data);
+ case 1148: return new ::Ifc4x3_add1::IfcSwitchingDeviceTypeEnum(data);
+ case 1149: return new ::Ifc4x3_add1::IfcSystem(data);
+ case 1150: return new ::Ifc4x3_add1::IfcSystemFurnitureElement(data);
+ case 1151: return new ::Ifc4x3_add1::IfcSystemFurnitureElementType(data);
+ case 1152: return new ::Ifc4x3_add1::IfcSystemFurnitureElementTypeEnum(data);
+ case 1153: return new ::Ifc4x3_add1::IfcTable(data);
+ case 1154: return new ::Ifc4x3_add1::IfcTableColumn(data);
+ case 1155: return new ::Ifc4x3_add1::IfcTableRow(data);
+ case 1156: return new ::Ifc4x3_add1::IfcTank(data);
+ case 1157: return new ::Ifc4x3_add1::IfcTankType(data);
+ case 1158: return new ::Ifc4x3_add1::IfcTankTypeEnum(data);
+ case 1159: return new ::Ifc4x3_add1::IfcTask(data);
+ case 1160: return new ::Ifc4x3_add1::IfcTaskDurationEnum(data);
+ case 1161: return new ::Ifc4x3_add1::IfcTaskTime(data);
+ case 1162: return new ::Ifc4x3_add1::IfcTaskTimeRecurring(data);
+ case 1163: return new ::Ifc4x3_add1::IfcTaskType(data);
+ case 1164: return new ::Ifc4x3_add1::IfcTaskTypeEnum(data);
+ case 1165: return new ::Ifc4x3_add1::IfcTelecomAddress(data);
+ case 1166: return new ::Ifc4x3_add1::IfcTemperatureGradientMeasure(data);
+ case 1167: return new ::Ifc4x3_add1::IfcTemperatureRateOfChangeMeasure(data);
+ case 1168: return new ::Ifc4x3_add1::IfcTendon(data);
+ case 1169: return new ::Ifc4x3_add1::IfcTendonAnchor(data);
+ case 1170: return new ::Ifc4x3_add1::IfcTendonAnchorType(data);
+ case 1171: return new ::Ifc4x3_add1::IfcTendonAnchorTypeEnum(data);
+ case 1172: return new ::Ifc4x3_add1::IfcTendonConduit(data);
+ case 1173: return new ::Ifc4x3_add1::IfcTendonConduitType(data);
+ case 1174: return new ::Ifc4x3_add1::IfcTendonConduitTypeEnum(data);
+ case 1175: return new ::Ifc4x3_add1::IfcTendonType(data);
+ case 1176: return new ::Ifc4x3_add1::IfcTendonTypeEnum(data);
+ case 1177: return new ::Ifc4x3_add1::IfcTessellatedFaceSet(data);
+ case 1178: return new ::Ifc4x3_add1::IfcTessellatedItem(data);
+ case 1179: return new ::Ifc4x3_add1::IfcText(data);
+ case 1180: return new ::Ifc4x3_add1::IfcTextAlignment(data);
+ case 1181: return new ::Ifc4x3_add1::IfcTextDecoration(data);
+ case 1182: return new ::Ifc4x3_add1::IfcTextFontName(data);
+ case 1184: return new ::Ifc4x3_add1::IfcTextLiteral(data);
+ case 1185: return new ::Ifc4x3_add1::IfcTextLiteralWithExtent(data);
+ case 1186: return new ::Ifc4x3_add1::IfcTextPath(data);
+ case 1187: return new ::Ifc4x3_add1::IfcTextStyle(data);
+ case 1188: return new ::Ifc4x3_add1::IfcTextStyleFontModel(data);
+ case 1189: return new ::Ifc4x3_add1::IfcTextStyleForDefinedFont(data);
+ case 1190: return new ::Ifc4x3_add1::IfcTextStyleTextModel(data);
+ case 1191: return new ::Ifc4x3_add1::IfcTextTransformation(data);
+ case 1192: return new ::Ifc4x3_add1::IfcTextureCoordinate(data);
+ case 1193: return new ::Ifc4x3_add1::IfcTextureCoordinateGenerator(data);
+ case 1194: return new ::Ifc4x3_add1::IfcTextureCoordinateIndices(data);
+ case 1195: return new ::Ifc4x3_add1::IfcTextureCoordinateIndicesWithVoids(data);
+ case 1196: return new ::Ifc4x3_add1::IfcTextureMap(data);
+ case 1197: return new ::Ifc4x3_add1::IfcTextureVertex(data);
+ case 1198: return new ::Ifc4x3_add1::IfcTextureVertexList(data);
+ case 1199: return new ::Ifc4x3_add1::IfcThermalAdmittanceMeasure(data);
+ case 1200: return new ::Ifc4x3_add1::IfcThermalConductivityMeasure(data);
+ case 1201: return new ::Ifc4x3_add1::IfcThermalExpansionCoefficientMeasure(data);
+ case 1202: return new ::Ifc4x3_add1::IfcThermalResistanceMeasure(data);
+ case 1203: return new ::Ifc4x3_add1::IfcThermalTransmittanceMeasure(data);
+ case 1204: return new ::Ifc4x3_add1::IfcThermodynamicTemperatureMeasure(data);
+ case 1205: return new ::Ifc4x3_add1::IfcThirdOrderPolynomialSpiral(data);
+ case 1206: return new ::Ifc4x3_add1::IfcTime(data);
+ case 1207: return new ::Ifc4x3_add1::IfcTimeMeasure(data);
+ case 1209: return new ::Ifc4x3_add1::IfcTimePeriod(data);
+ case 1210: return new ::Ifc4x3_add1::IfcTimeSeries(data);
+ case 1211: return new ::Ifc4x3_add1::IfcTimeSeriesDataTypeEnum(data);
+ case 1212: return new ::Ifc4x3_add1::IfcTimeSeriesValue(data);
+ case 1213: return new ::Ifc4x3_add1::IfcTimeStamp(data);
+ case 1214: return new ::Ifc4x3_add1::IfcTopologicalRepresentationItem(data);
+ case 1215: return new ::Ifc4x3_add1::IfcTopologyRepresentation(data);
+ case 1216: return new ::Ifc4x3_add1::IfcToroidalSurface(data);
+ case 1217: return new ::Ifc4x3_add1::IfcTorqueMeasure(data);
+ case 1218: return new ::Ifc4x3_add1::IfcTrackElement(data);
+ case 1219: return new ::Ifc4x3_add1::IfcTrackElementType(data);
+ case 1220: return new ::Ifc4x3_add1::IfcTrackElementTypeEnum(data);
+ case 1221: return new ::Ifc4x3_add1::IfcTransformer(data);
+ case 1222: return new ::Ifc4x3_add1::IfcTransformerType(data);
+ case 1223: return new ::Ifc4x3_add1::IfcTransformerTypeEnum(data);
+ case 1224: return new ::Ifc4x3_add1::IfcTransitionCode(data);
+ case 1226: return new ::Ifc4x3_add1::IfcTransportationDevice(data);
+ case 1227: return new ::Ifc4x3_add1::IfcTransportationDeviceType(data);
+ case 1228: return new ::Ifc4x3_add1::IfcTransportElement(data);
+ case 1229: return new ::Ifc4x3_add1::IfcTransportElementType(data);
+ case 1230: return new ::Ifc4x3_add1::IfcTransportElementTypeEnum(data);
+ case 1231: return new ::Ifc4x3_add1::IfcTrapeziumProfileDef(data);
+ case 1232: return new ::Ifc4x3_add1::IfcTriangulatedFaceSet(data);
+ case 1233: return new ::Ifc4x3_add1::IfcTriangulatedIrregularNetwork(data);
+ case 1234: return new ::Ifc4x3_add1::IfcTrimmedCurve(data);
+ case 1235: return new ::Ifc4x3_add1::IfcTrimmingPreference(data);
+ case 1237: return new ::Ifc4x3_add1::IfcTShapeProfileDef(data);
+ case 1238: return new ::Ifc4x3_add1::IfcTubeBundle(data);
+ case 1239: return new ::Ifc4x3_add1::IfcTubeBundleType(data);
+ case 1240: return new ::Ifc4x3_add1::IfcTubeBundleTypeEnum(data);
+ case 1241: return new ::Ifc4x3_add1::IfcTypeObject(data);
+ case 1242: return new ::Ifc4x3_add1::IfcTypeProcess(data);
+ case 1243: return new ::Ifc4x3_add1::IfcTypeProduct(data);
+ case 1244: return new ::Ifc4x3_add1::IfcTypeResource(data);
+ case 1246: return new ::Ifc4x3_add1::IfcUnitaryControlElement(data);
+ case 1247: return new ::Ifc4x3_add1::IfcUnitaryControlElementType(data);
+ case 1248: return new ::Ifc4x3_add1::IfcUnitaryControlElementTypeEnum(data);
+ case 1249: return new ::Ifc4x3_add1::IfcUnitaryEquipment(data);
+ case 1250: return new ::Ifc4x3_add1::IfcUnitaryEquipmentType(data);
+ case 1251: return new ::Ifc4x3_add1::IfcUnitaryEquipmentTypeEnum(data);
+ case 1252: return new ::Ifc4x3_add1::IfcUnitAssignment(data);
+ case 1253: return new ::Ifc4x3_add1::IfcUnitEnum(data);
+ case 1254: return new ::Ifc4x3_add1::IfcURIReference(data);
+ case 1255: return new ::Ifc4x3_add1::IfcUShapeProfileDef(data);
+ case 1257: return new ::Ifc4x3_add1::IfcValve(data);
+ case 1258: return new ::Ifc4x3_add1::IfcValveType(data);
+ case 1259: return new ::Ifc4x3_add1::IfcValveTypeEnum(data);
+ case 1260: return new ::Ifc4x3_add1::IfcVaporPermeabilityMeasure(data);
+ case 1261: return new ::Ifc4x3_add1::IfcVector(data);
+ case 1263: return new ::Ifc4x3_add1::IfcVehicle(data);
+ case 1264: return new ::Ifc4x3_add1::IfcVehicleType(data);
+ case 1265: return new ::Ifc4x3_add1::IfcVehicleTypeEnum(data);
+ case 1266: return new ::Ifc4x3_add1::IfcVertex(data);
+ case 1267: return new ::Ifc4x3_add1::IfcVertexLoop(data);
+ case 1268: return new ::Ifc4x3_add1::IfcVertexPoint(data);
+ case 1269: return new ::Ifc4x3_add1::IfcVibrationDamper(data);
+ case 1270: return new ::Ifc4x3_add1::IfcVibrationDamperType(data);
+ case 1271: return new ::Ifc4x3_add1::IfcVibrationDamperTypeEnum(data);
+ case 1272: return new ::Ifc4x3_add1::IfcVibrationIsolator(data);
+ case 1273: return new ::Ifc4x3_add1::IfcVibrationIsolatorType(data);
+ case 1274: return new ::Ifc4x3_add1::IfcVibrationIsolatorTypeEnum(data);
+ case 1275: return new ::Ifc4x3_add1::IfcVirtualElement(data);
+ case 1276: return new ::Ifc4x3_add1::IfcVirtualElementTypeEnum(data);
+ case 1277: return new ::Ifc4x3_add1::IfcVirtualGridIntersection(data);
+ case 1278: return new ::Ifc4x3_add1::IfcVoidingFeature(data);
+ case 1279: return new ::Ifc4x3_add1::IfcVoidingFeatureTypeEnum(data);
+ case 1280: return new ::Ifc4x3_add1::IfcVolumeMeasure(data);
+ case 1281: return new ::Ifc4x3_add1::IfcVolumetricFlowRateMeasure(data);
+ case 1282: return new ::Ifc4x3_add1::IfcWall(data);
+ case 1283: return new ::Ifc4x3_add1::IfcWallStandardCase(data);
+ case 1284: return new ::Ifc4x3_add1::IfcWallType(data);
+ case 1285: return new ::Ifc4x3_add1::IfcWallTypeEnum(data);
+ case 1286: return new ::Ifc4x3_add1::IfcWarpingConstantMeasure(data);
+ case 1287: return new ::Ifc4x3_add1::IfcWarpingMomentMeasure(data);
+ case 1289: return new ::Ifc4x3_add1::IfcWasteTerminal(data);
+ case 1290: return new ::Ifc4x3_add1::IfcWasteTerminalType(data);
+ case 1291: return new ::Ifc4x3_add1::IfcWasteTerminalTypeEnum(data);
+ case 1292: return new ::Ifc4x3_add1::IfcWellKnownText(data);
+ case 1293: return new ::Ifc4x3_add1::IfcWellKnownTextLiteral(data);
+ case 1294: return new ::Ifc4x3_add1::IfcWindow(data);
+ case 1295: return new ::Ifc4x3_add1::IfcWindowLiningProperties(data);
+ case 1296: return new ::Ifc4x3_add1::IfcWindowPanelOperationEnum(data);
+ case 1297: return new ::Ifc4x3_add1::IfcWindowPanelPositionEnum(data);
+ case 1298: return new ::Ifc4x3_add1::IfcWindowPanelProperties(data);
+ case 1299: return new ::Ifc4x3_add1::IfcWindowType(data);
+ case 1300: return new ::Ifc4x3_add1::IfcWindowTypeEnum(data);
+ case 1301: return new ::Ifc4x3_add1::IfcWindowTypePartitioningEnum(data);
+ case 1302: return new ::Ifc4x3_add1::IfcWorkCalendar(data);
+ case 1303: return new ::Ifc4x3_add1::IfcWorkCalendarTypeEnum(data);
+ case 1304: return new ::Ifc4x3_add1::IfcWorkControl(data);
+ case 1305: return new ::Ifc4x3_add1::IfcWorkPlan(data);
+ case 1306: return new ::Ifc4x3_add1::IfcWorkPlanTypeEnum(data);
+ case 1307: return new ::Ifc4x3_add1::IfcWorkSchedule(data);
+ case 1308: return new ::Ifc4x3_add1::IfcWorkScheduleTypeEnum(data);
+ case 1309: return new ::Ifc4x3_add1::IfcWorkTime(data);
+ case 1310: return new ::Ifc4x3_add1::IfcZone(data);
+ case 1311: return new ::Ifc4x3_add1::IfcZShapeProfileDef(data);
+ default: throw IfcParse::IfcException(data->type()->name() + " cannot be instantiated");
+ }
+
+ }
+};
+
+
+#if defined(__clang__)
+__attribute__((optnone))
+#elif defined(__GNUC__) || defined(__GNUG__)
+#pragma GCC push_options
+#pragma GCC optimize ("O0")
+#elif defined(_MSC_VER)
+#pragma optimize("", off)
+#endif
+
+IfcParse::schema_definition* IFC4X3_ADD1_populate_schema() {
+ IFC4X3_ADD1_IfcAbsorbedDoseMeasure_type = new type_declaration("IfcAbsorbedDoseMeasure", 0, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcAccelerationMeasure_type = new type_declaration("IfcAccelerationMeasure", 1, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("EMAIL");
+ items.push_back("FAX");
+ items.push_back("NOTDEFINED");
+ items.push_back("PHONE");
+ items.push_back("POST");
+ items.push_back("USERDEFINED");
+ items.push_back("VERBAL");
+ IFC4X3_ADD1_IfcActionRequestTypeEnum_type = new enumeration_type("IfcActionRequestTypeEnum", 3, items);
+ }
+ {
+ std::vector items; items.reserve(27);
+ items.push_back("BRAKES");
+ items.push_back("BUOYANCY");
+ items.push_back("COMPLETION_G1");
+ items.push_back("CREEP");
+ items.push_back("CURRENT");
+ items.push_back("DEAD_LOAD_G");
+ items.push_back("EARTHQUAKE_E");
+ items.push_back("ERECTION");
+ items.push_back("FIRE");
+ items.push_back("ICE");
+ items.push_back("IMPACT");
+ items.push_back("IMPULSE");
+ items.push_back("LACK_OF_FIT");
+ items.push_back("LIVE_LOAD_Q");
+ items.push_back("NOTDEFINED");
+ items.push_back("PRESTRESSING_P");
+ items.push_back("PROPPING");
+ items.push_back("RAIN");
+ items.push_back("SETTLEMENT_U");
+ items.push_back("SHRINKAGE");
+ items.push_back("SNOW_S");
+ items.push_back("SYSTEM_IMPERFECTION");
+ items.push_back("TEMPERATURE_T");
+ items.push_back("TRANSPORT");
+ items.push_back("USERDEFINED");
+ items.push_back("WAVE");
+ items.push_back("WIND_W");
+ IFC4X3_ADD1_IfcActionSourceTypeEnum_type = new enumeration_type("IfcActionSourceTypeEnum", 4, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("EXTRAORDINARY_A");
+ items.push_back("NOTDEFINED");
+ items.push_back("PERMANENT_G");
+ items.push_back("USERDEFINED");
+ items.push_back("VARIABLE_Q");
+ IFC4X3_ADD1_IfcActionTypeEnum_type = new enumeration_type("IfcActionTypeEnum", 5, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("ELECTRICACTUATOR");
+ items.push_back("HANDOPERATEDACTUATOR");
+ items.push_back("HYDRAULICACTUATOR");
+ items.push_back("NOTDEFINED");
+ items.push_back("PNEUMATICACTUATOR");
+ items.push_back("THERMOSTATICACTUATOR");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcActuatorTypeEnum_type = new enumeration_type("IfcActuatorTypeEnum", 11, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("DISTRIBUTIONPOINT");
+ items.push_back("HOME");
+ items.push_back("OFFICE");
+ items.push_back("SITE");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcAddressTypeEnum_type = new enumeration_type("IfcAddressTypeEnum", 13, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("CONSTANTFLOW");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ items.push_back("VARIABLEFLOWPRESSUREDEPENDANT");
+ items.push_back("VARIABLEFLOWPRESSUREINDEPENDANT");
+ IFC4X3_ADD1_IfcAirTerminalBoxTypeEnum_type = new enumeration_type("IfcAirTerminalBoxTypeEnum", 20, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("DIFFUSER");
+ items.push_back("GRILLE");
+ items.push_back("LOUVRE");
+ items.push_back("NOTDEFINED");
+ items.push_back("REGISTER");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcAirTerminalTypeEnum_type = new enumeration_type("IfcAirTerminalTypeEnum", 22, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("FIXEDPLATECOUNTERFLOWEXCHANGER");
+ items.push_back("FIXEDPLATECROSSFLOWEXCHANGER");
+ items.push_back("FIXEDPLATEPARALLELFLOWEXCHANGER");
+ items.push_back("HEATPIPE");
+ items.push_back("NOTDEFINED");
+ items.push_back("ROTARYWHEEL");
+ items.push_back("RUNAROUNDCOILLOOP");
+ items.push_back("THERMOSIPHONCOILTYPEHEATEXCHANGERS");
+ items.push_back("THERMOSIPHONSEALEDTUBEHEATEXCHANGERS");
+ items.push_back("TWINTOWERENTHALPYRECOVERYLOOPS");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcAirToAirHeatRecoveryTypeEnum_type = new enumeration_type("IfcAirToAirHeatRecoveryTypeEnum", 25, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("BELL");
+ items.push_back("BREAKGLASSBUTTON");
+ items.push_back("LIGHT");
+ items.push_back("MANUALPULLBOX");
+ items.push_back("NOTDEFINED");
+ items.push_back("RAILWAYCROCODILE");
+ items.push_back("RAILWAYDETONATOR");
+ items.push_back("SIREN");
+ items.push_back("USERDEFINED");
+ items.push_back("WHISTLE");
+ IFC4X3_ADD1_IfcAlarmTypeEnum_type = new enumeration_type("IfcAlarmTypeEnum", 28, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("BLOSSCURVE");
+ items.push_back("CONSTANTCANT");
+ items.push_back("COSINECURVE");
+ items.push_back("HELMERTCURVE");
+ items.push_back("LINEARTRANSITION");
+ items.push_back("SINECURVE");
+ items.push_back("VIENNESEBEND");
+ IFC4X3_ADD1_IfcAlignmentCantSegmentTypeEnum_type = new enumeration_type("IfcAlignmentCantSegmentTypeEnum", 32, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("BLOSSCURVE");
+ items.push_back("CIRCULARARC");
+ items.push_back("CLOTHOID");
+ items.push_back("COSINECURVE");
+ items.push_back("CUBIC");
+ items.push_back("HELMERTCURVE");
+ items.push_back("LINE");
+ items.push_back("SINECURVE");
+ items.push_back("VIENNESEBEND");
+ IFC4X3_ADD1_IfcAlignmentHorizontalSegmentTypeEnum_type = new enumeration_type("IfcAlignmentHorizontalSegmentTypeEnum", 35, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcAlignmentTypeEnum_type = new enumeration_type("IfcAlignmentTypeEnum", 38, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("CIRCULARARC");
+ items.push_back("CLOTHOID");
+ items.push_back("CONSTANTGRADIENT");
+ items.push_back("PARABOLICARC");
+ IFC4X3_ADD1_IfcAlignmentVerticalSegmentTypeEnum_type = new enumeration_type("IfcAlignmentVerticalSegmentTypeEnum", 41, items);
+ }
+ IFC4X3_ADD1_IfcAmountOfSubstanceMeasure_type = new type_declaration("IfcAmountOfSubstanceMeasure", 42, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("IN_PLANE_LOADING_2D");
+ items.push_back("LOADING_3D");
+ items.push_back("NOTDEFINED");
+ items.push_back("OUT_PLANE_LOADING_2D");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcAnalysisModelTypeEnum_type = new enumeration_type("IfcAnalysisModelTypeEnum", 43, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("FIRST_ORDER_THEORY");
+ items.push_back("FULL_NONLINEAR_THEORY");
+ items.push_back("NOTDEFINED");
+ items.push_back("SECOND_ORDER_THEORY");
+ items.push_back("THIRD_ORDER_THEORY");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcAnalysisTheoryTypeEnum_type = new enumeration_type("IfcAnalysisTheoryTypeEnum", 44, items);
+ }
+ IFC4X3_ADD1_IfcAngularVelocityMeasure_type = new type_declaration("IfcAngularVelocityMeasure", 45, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("ASBUILTAREA");
+ items.push_back("ASBUILTLINE");
+ items.push_back("ASBUILTPOINT");
+ items.push_back("ASSUMEDAREA");
+ items.push_back("ASSUMEDLINE");
+ items.push_back("ASSUMEDPOINT");
+ items.push_back("NON_PHYSICAL_SIGNAL");
+ items.push_back("NOTDEFINED");
+ items.push_back("SUPERELEVATIONEVENT");
+ items.push_back("USERDEFINED");
+ items.push_back("WIDTHEVENT");
+ IFC4X3_ADD1_IfcAnnotationTypeEnum_type = new enumeration_type("IfcAnnotationTypeEnum", 48, items);
+ }
+ IFC4X3_ADD1_IfcAreaDensityMeasure_type = new type_declaration("IfcAreaDensityMeasure", 58, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcAreaMeasure_type = new type_declaration("IfcAreaMeasure", 59, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("ADD");
+ items.push_back("DIVIDE");
+ items.push_back("MULTIPLY");
+ items.push_back("SUBTRACT");
+ IFC4X3_ADD1_IfcArithmeticOperatorEnum_type = new enumeration_type("IfcArithmeticOperatorEnum", 60, items);
+ }
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("FACTORY");
+ items.push_back("NOTDEFINED");
+ items.push_back("SITE");
+ IFC4X3_ADD1_IfcAssemblyPlaceEnum_type = new enumeration_type("IfcAssemblyPlaceEnum", 61, items);
+ }
+ {
+ std::vector items; items.reserve(15);
+ items.push_back("AMPLIFIER");
+ items.push_back("CAMERA");
+ items.push_back("COMMUNICATIONTERMINAL");
+ items.push_back("DISPLAY");
+ items.push_back("MICROPHONE");
+ items.push_back("NOTDEFINED");
+ items.push_back("PLAYER");
+ items.push_back("PROJECTOR");
+ items.push_back("RECEIVER");
+ items.push_back("RECORDINGEQUIPMENT");
+ items.push_back("SPEAKER");
+ items.push_back("SWITCHER");
+ items.push_back("TELEPHONE");
+ items.push_back("TUNER");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcAudioVisualApplianceTypeEnum_type = new enumeration_type("IfcAudioVisualApplianceTypeEnum", 66, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("CIRCULAR_ARC");
+ items.push_back("ELLIPTIC_ARC");
+ items.push_back("HYPERBOLIC_ARC");
+ items.push_back("PARABOLIC_ARC");
+ items.push_back("POLYLINE_FORM");
+ items.push_back("UNSPECIFIED");
+ IFC4X3_ADD1_IfcBSplineCurveForm_type = new enumeration_type("IfcBSplineCurveForm", 108, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("CONICAL_SURF");
+ items.push_back("CYLINDRICAL_SURF");
+ items.push_back("GENERALISED_CONE");
+ items.push_back("PLANE_SURF");
+ items.push_back("QUADRIC_SURF");
+ items.push_back("RULED_SURF");
+ items.push_back("SPHERICAL_SURF");
+ items.push_back("SURF_OF_LINEAR_EXTRUSION");
+ items.push_back("SURF_OF_REVOLUTION");
+ items.push_back("TOROIDAL_SURF");
+ items.push_back("UNSPECIFIED");
+ IFC4X3_ADD1_IfcBSplineSurfaceForm_type = new enumeration_type("IfcBSplineSurfaceForm", 111, items);
+ }
+ {
+ std::vector items; items.reserve(14);
+ items.push_back("BEAM");
+ items.push_back("CORNICE");
+ items.push_back("DIAPHRAGM");
+ items.push_back("EDGEBEAM");
+ items.push_back("GIRDER_SEGMENT");
+ items.push_back("HATSTONE");
+ items.push_back("HOLLOWCORE");
+ items.push_back("JOIST");
+ items.push_back("LINTEL");
+ items.push_back("NOTDEFINED");
+ items.push_back("PIERCAP");
+ items.push_back("SPANDREL");
+ items.push_back("T_BEAM");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcBeamTypeEnum_type = new enumeration_type("IfcBeamTypeEnum", 74, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("CYLINDRICAL");
+ items.push_back("DISK");
+ items.push_back("ELASTOMERIC");
+ items.push_back("GUIDE");
+ items.push_back("NOTDEFINED");
+ items.push_back("POT");
+ items.push_back("ROCKER");
+ items.push_back("ROLLER");
+ items.push_back("SPHERICAL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcBearingTypeEnum_type = new enumeration_type("IfcBearingTypeEnum", 77, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("EQUALTO");
+ items.push_back("GREATERTHAN");
+ items.push_back("GREATERTHANOREQUALTO");
+ items.push_back("INCLUDEDIN");
+ items.push_back("INCLUDES");
+ items.push_back("LESSTHAN");
+ items.push_back("LESSTHANOREQUALTO");
+ items.push_back("NOTEQUALTO");
+ items.push_back("NOTINCLUDEDIN");
+ items.push_back("NOTINCLUDES");
+ IFC4X3_ADD1_IfcBenchmarkEnum_type = new enumeration_type("IfcBenchmarkEnum", 78, items);
+ }
+ IFC4X3_ADD1_IfcBinary_type = new type_declaration("IfcBinary", 80, new simple_type(simple_type::binary_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("NOTDEFINED");
+ items.push_back("STEAM");
+ items.push_back("USERDEFINED");
+ items.push_back("WATER");
+ IFC4X3_ADD1_IfcBoilerTypeEnum_type = new enumeration_type("IfcBoilerTypeEnum", 85, items);
+ }
+ IFC4X3_ADD1_IfcBoolean_type = new type_declaration("IfcBoolean", 86, new simple_type(simple_type::boolean_type));
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("DIFFERENCE");
+ items.push_back("INTERSECTION");
+ items.push_back("UNION");
+ IFC4X3_ADD1_IfcBooleanOperator_type = new enumeration_type("IfcBooleanOperator", 89, items);
+ }
+ {
+ std::vector items; items.reserve(12);
+ items.push_back("ABUTMENT");
+ items.push_back("DECK");
+ items.push_back("DECK_SEGMENT");
+ items.push_back("FOUNDATION");
+ items.push_back("NOTDEFINED");
+ items.push_back("PIER");
+ items.push_back("PIER_SEGMENT");
+ items.push_back("PYLON");
+ items.push_back("SUBSTRUCTURE");
+ items.push_back("SUPERSTRUCTURE");
+ items.push_back("SURFACESTRUCTURE");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcBridgePartTypeEnum_type = new enumeration_type("IfcBridgePartTypeEnum", 105, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("ARCHED");
+ items.push_back("CABLE_STAYED");
+ items.push_back("CANTILEVER");
+ items.push_back("CULVERT");
+ items.push_back("FRAMEWORK");
+ items.push_back("GIRDER");
+ items.push_back("NOTDEFINED");
+ items.push_back("SUSPENSION");
+ items.push_back("TRUSS");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcBridgeTypeEnum_type = new enumeration_type("IfcBridgeTypeEnum", 106, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("APRON");
+ items.push_back("ARMOURUNIT");
+ items.push_back("INSULATION");
+ items.push_back("NOTDEFINED");
+ items.push_back("PRECASTPANEL");
+ items.push_back("SAFETYCAGE");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcBuildingElementPartTypeEnum_type = new enumeration_type("IfcBuildingElementPartTypeEnum", 116, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("COMPLEX");
+ items.push_back("ELEMENT");
+ items.push_back("NOTDEFINED");
+ items.push_back("PARTIAL");
+ items.push_back("PROVISIONFORSPACE");
+ items.push_back("PROVISIONFORVOID");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcBuildingElementProxyTypeEnum_type = new enumeration_type("IfcBuildingElementProxyTypeEnum", 119, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("FENESTRATION");
+ items.push_back("FOUNDATION");
+ items.push_back("LOADBEARING");
+ items.push_back("NOTDEFINED");
+ items.push_back("OUTERSHELL");
+ items.push_back("SHADING");
+ items.push_back("TRANSPORT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcBuildingSystemTypeEnum_type = new enumeration_type("IfcBuildingSystemTypeEnum", 122, items);
+ }
+ {
+ std::vector items; items.reserve(15);
+ items.push_back("EROSIONPREVENTION");
+ items.push_back("FENESTRATION");
+ items.push_back("FOUNDATION");
+ items.push_back("LOADBEARING");
+ items.push_back("MOORING");
+ items.push_back("NOTDEFINED");
+ items.push_back("OUTERSHELL");
+ items.push_back("PRESTRESSING");
+ items.push_back("RAILWAYLINE");
+ items.push_back("RAILWAYTRACK");
+ items.push_back("REINFORCING");
+ items.push_back("SHADING");
+ items.push_back("TRACKCIRCUIT");
+ items.push_back("TRANSPORT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcBuiltSystemTypeEnum_type = new enumeration_type("IfcBuiltSystemTypeEnum", 126, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcBurnerTypeEnum_type = new enumeration_type("IfcBurnerTypeEnum", 129, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("BEND");
+ items.push_back("CONNECTOR");
+ items.push_back("CROSS");
+ items.push_back("JUNCTION");
+ items.push_back("NOTDEFINED");
+ items.push_back("REDUCER");
+ items.push_back("TEE");
+ items.push_back("TRANSITION");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCableCarrierFittingTypeEnum_type = new enumeration_type("IfcCableCarrierFittingTypeEnum", 132, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("CABLEBRACKET");
+ items.push_back("CABLELADDERSEGMENT");
+ items.push_back("CABLETRAYSEGMENT");
+ items.push_back("CABLETRUNKINGSEGMENT");
+ items.push_back("CATENARYWIRE");
+ items.push_back("CONDUITSEGMENT");
+ items.push_back("DROPPER");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCableCarrierSegmentTypeEnum_type = new enumeration_type("IfcCableCarrierSegmentTypeEnum", 135, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("CONNECTOR");
+ items.push_back("ENTRY");
+ items.push_back("EXIT");
+ items.push_back("FANOUT");
+ items.push_back("JUNCTION");
+ items.push_back("NOTDEFINED");
+ items.push_back("TRANSITION");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCableFittingTypeEnum_type = new enumeration_type("IfcCableFittingTypeEnum", 138, items);
+ }
+ {
+ std::vector items; items.reserve(12);
+ items.push_back("BUSBARSEGMENT");
+ items.push_back("CABLESEGMENT");
+ items.push_back("CONDUCTORSEGMENT");
+ items.push_back("CONTACTWIRESEGMENT");
+ items.push_back("CORESEGMENT");
+ items.push_back("FIBERSEGMENT");
+ items.push_back("FIBERTUBE");
+ items.push_back("NOTDEFINED");
+ items.push_back("OPTICALCABLESEGMENT");
+ items.push_back("STITCHWIRE");
+ items.push_back("USERDEFINED");
+ items.push_back("WIREPAIRSEGMENT");
+ IFC4X3_ADD1_IfcCableSegmentTypeEnum_type = new enumeration_type("IfcCableSegmentTypeEnum", 141, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("CAISSON");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ items.push_back("WELL");
+ IFC4X3_ADD1_IfcCaissonFoundationTypeEnum_type = new enumeration_type("IfcCaissonFoundationTypeEnum", 144, items);
+ }
+ IFC4X3_ADD1_IfcCardinalPointReference_type = new type_declaration("IfcCardinalPointReference", 145, new simple_type(simple_type::integer_type));
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("ADDED");
+ items.push_back("DELETED");
+ items.push_back("MODIFIED");
+ items.push_back("NOCHANGE");
+ items.push_back("NOTDEFINED");
+ IFC4X3_ADD1_IfcChangeActionEnum_type = new enumeration_type("IfcChangeActionEnum", 156, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("AIRCOOLED");
+ items.push_back("HEATRECOVERY");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ items.push_back("WATERCOOLED");
+ IFC4X3_ADD1_IfcChillerTypeEnum_type = new enumeration_type("IfcChillerTypeEnum", 159, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcChimneyTypeEnum_type = new enumeration_type("IfcChimneyTypeEnum", 162, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("DXCOOLINGCOIL");
+ items.push_back("ELECTRICHEATINGCOIL");
+ items.push_back("GASHEATINGCOIL");
+ items.push_back("HYDRONICCOIL");
+ items.push_back("NOTDEFINED");
+ items.push_back("STEAMHEATINGCOIL");
+ items.push_back("USERDEFINED");
+ items.push_back("WATERCOOLINGCOIL");
+ items.push_back("WATERHEATINGCOIL");
+ IFC4X3_ADD1_IfcCoilTypeEnum_type = new enumeration_type("IfcCoilTypeEnum", 176, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("COLUMN");
+ items.push_back("NOTDEFINED");
+ items.push_back("PIERSTEM");
+ items.push_back("PIERSTEM_SEGMENT");
+ items.push_back("PILASTER");
+ items.push_back("STANDCOLUMN");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcColumnTypeEnum_type = new enumeration_type("IfcColumnTypeEnum", 184, items);
+ }
+ {
+ std::vector items; items.reserve(26);
+ items.push_back("ANTENNA");
+ items.push_back("AUTOMATON");
+ items.push_back("COMPUTER");
+ items.push_back("FAX");
+ items.push_back("GATEWAY");
+ items.push_back("INTELLIGENTPERIPHERAL");
+ items.push_back("IPNETWORKEQUIPMENT");
+ items.push_back("LINESIDEELECTRONICUNIT");
+ items.push_back("MODEM");
+ items.push_back("NETWORKAPPLIANCE");
+ items.push_back("NETWORKBRIDGE");
+ items.push_back("NETWORKHUB");
+ items.push_back("NOTDEFINED");
+ items.push_back("OPTICALLINETERMINAL");
+ items.push_back("OPTICALNETWORKUNIT");
+ items.push_back("PRINTER");
+ items.push_back("RADIOBLOCKCENTER");
+ items.push_back("REPEATER");
+ items.push_back("ROUTER");
+ items.push_back("SCANNER");
+ items.push_back("TELECOMMAND");
+ items.push_back("TELEPHONYEXCHANGE");
+ items.push_back("TRANSITIONCOMPONENT");
+ items.push_back("TRANSPONDER");
+ items.push_back("TRANSPORTEQUIPMENT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCommunicationsApplianceTypeEnum_type = new enumeration_type("IfcCommunicationsApplianceTypeEnum", 187, items);
+ }
+ IFC4X3_ADD1_IfcComplexNumber_type = new type_declaration("IfcComplexNumber", 188, new aggregation_type(aggregation_type::array_type, 1, 2, new simple_type(simple_type::real_type)));
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("P_COMPLEX");
+ items.push_back("Q_COMPLEX");
+ IFC4X3_ADD1_IfcComplexPropertyTemplateTypeEnum_type = new enumeration_type("IfcComplexPropertyTemplateTypeEnum", 191, items);
+ }
+ IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type = new type_declaration("IfcCompoundPlaneAngleMeasure", 196, new aggregation_type(aggregation_type::list_type, 3, 4, new simple_type(simple_type::integer_type)));
+ {
+ std::vector items; items.reserve(17);
+ items.push_back("BOOSTER");
+ items.push_back("DYNAMIC");
+ items.push_back("HERMETIC");
+ items.push_back("NOTDEFINED");
+ items.push_back("OPENTYPE");
+ items.push_back("RECIPROCATING");
+ items.push_back("ROLLINGPISTON");
+ items.push_back("ROTARY");
+ items.push_back("ROTARYVANE");
+ items.push_back("SCROLL");
+ items.push_back("SEMIHERMETIC");
+ items.push_back("SINGLESCREW");
+ items.push_back("SINGLESTAGE");
+ items.push_back("TROCHOIDAL");
+ items.push_back("TWINSCREW");
+ items.push_back("USERDEFINED");
+ items.push_back("WELDEDSHELLHERMETIC");
+ IFC4X3_ADD1_IfcCompressorTypeEnum_type = new enumeration_type("IfcCompressorTypeEnum", 199, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("AIRCOOLED");
+ items.push_back("EVAPORATIVECOOLED");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ items.push_back("WATERCOOLED");
+ items.push_back("WATERCOOLEDBRAZEDPLATE");
+ items.push_back("WATERCOOLEDSHELLCOIL");
+ items.push_back("WATERCOOLEDSHELLTUBE");
+ items.push_back("WATERCOOLEDTUBEINTUBE");
+ IFC4X3_ADD1_IfcCondenserTypeEnum_type = new enumeration_type("IfcCondenserTypeEnum", 202, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("ATEND");
+ items.push_back("ATPATH");
+ items.push_back("ATSTART");
+ items.push_back("NOTDEFINED");
+ IFC4X3_ADD1_IfcConnectionTypeEnum_type = new enumeration_type("IfcConnectionTypeEnum", 210, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("ADVISORY");
+ items.push_back("HARD");
+ items.push_back("NOTDEFINED");
+ items.push_back("SOFT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcConstraintEnum_type = new enumeration_type("IfcConstraintEnum", 213, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("DEMOLISHING");
+ items.push_back("EARTHMOVING");
+ items.push_back("ERECTING");
+ items.push_back("HEATING");
+ items.push_back("LIGHTING");
+ items.push_back("NOTDEFINED");
+ items.push_back("PAVING");
+ items.push_back("PUMPING");
+ items.push_back("TRANSPORTING");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcConstructionEquipmentResourceTypeEnum_type = new enumeration_type("IfcConstructionEquipmentResourceTypeEnum", 216, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("AGGREGATES");
+ items.push_back("CONCRETE");
+ items.push_back("DRYWALL");
+ items.push_back("FUEL");
+ items.push_back("GYPSUM");
+ items.push_back("MASONRY");
+ items.push_back("METAL");
+ items.push_back("NOTDEFINED");
+ items.push_back("PLASTIC");
+ items.push_back("USERDEFINED");
+ items.push_back("WOOD");
+ IFC4X3_ADD1_IfcConstructionMaterialResourceTypeEnum_type = new enumeration_type("IfcConstructionMaterialResourceTypeEnum", 219, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("ASSEMBLY");
+ items.push_back("FORMWORK");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcConstructionProductResourceTypeEnum_type = new enumeration_type("IfcConstructionProductResourceTypeEnum", 222, items);
+ }
+ IFC4X3_ADD1_IfcContextDependentMeasure_type = new type_declaration("IfcContextDependentMeasure", 226, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("FLOATING");
+ items.push_back("MULTIPOSITION");
+ items.push_back("NOTDEFINED");
+ items.push_back("PROGRAMMABLE");
+ items.push_back("PROPORTIONAL");
+ items.push_back("TWOPOSITION");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcControllerTypeEnum_type = new enumeration_type("IfcControllerTypeEnum", 231, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("BELTCONVEYOR");
+ items.push_back("BUCKETCONVEYOR");
+ items.push_back("CHUTECONVEYOR");
+ items.push_back("NOTDEFINED");
+ items.push_back("SCREWCONVEYOR");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcConveyorSegmentTypeEnum_type = new enumeration_type("IfcConveyorSegmentTypeEnum", 236, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("ACTIVE");
+ items.push_back("NOTDEFINED");
+ items.push_back("PASSIVE");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCooledBeamTypeEnum_type = new enumeration_type("IfcCooledBeamTypeEnum", 239, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("MECHANICALFORCEDDRAFT");
+ items.push_back("MECHANICALINDUCEDDRAFT");
+ items.push_back("NATURALDRAFT");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCoolingTowerTypeEnum_type = new enumeration_type("IfcCoolingTowerTypeEnum", 242, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCostItemTypeEnum_type = new enumeration_type("IfcCostItemTypeEnum", 248, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("BUDGET");
+ items.push_back("COSTPLAN");
+ items.push_back("ESTIMATE");
+ items.push_back("NOTDEFINED");
+ items.push_back("PRICEDBILLOFQUANTITIES");
+ items.push_back("SCHEDULEOFRATES");
+ items.push_back("TENDER");
+ items.push_back("UNPRICEDBILLOFQUANTITIES");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCostScheduleTypeEnum_type = new enumeration_type("IfcCostScheduleTypeEnum", 250, items);
+ }
+ IFC4X3_ADD1_IfcCountMeasure_type = new type_declaration("IfcCountMeasure", 252, new simple_type(simple_type::integer_type));
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("ARMOUR");
+ items.push_back("BALLASTBED");
+ items.push_back("CORE");
+ items.push_back("FILTER");
+ items.push_back("NOTDEFINED");
+ items.push_back("PAVEMENT");
+ items.push_back("PROTECTION");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCourseTypeEnum_type = new enumeration_type("IfcCourseTypeEnum", 255, items);
+ }
+ {
+ std::vector items; items.reserve(14);
+ items.push_back("CEILING");
+ items.push_back("CLADDING");
+ items.push_back("COPING");
+ items.push_back("FLOORING");
+ items.push_back("INSULATION");
+ items.push_back("MEMBRANE");
+ items.push_back("MOLDING");
+ items.push_back("NOTDEFINED");
+ items.push_back("ROOFING");
+ items.push_back("SKIRTINGBOARD");
+ items.push_back("SLEEVING");
+ items.push_back("TOPPING");
+ items.push_back("USERDEFINED");
+ items.push_back("WRAPPING");
+ IFC4X3_ADD1_IfcCoveringTypeEnum_type = new enumeration_type("IfcCoveringTypeEnum", 258, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("NOTDEFINED");
+ items.push_back("OFFICE");
+ items.push_back("SITE");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCrewResourceTypeEnum_type = new enumeration_type("IfcCrewResourceTypeEnum", 261, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcCurtainWallTypeEnum_type = new enumeration_type("IfcCurtainWallTypeEnum", 269, items);
+ }
+ IFC4X3_ADD1_IfcCurvatureMeasure_type = new type_declaration("IfcCurvatureMeasure", 270, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("LINEAR");
+ items.push_back("LOG_LINEAR");
+ items.push_back("LOG_LOG");
+ items.push_back("NOTDEFINED");
+ IFC4X3_ADD1_IfcCurveInterpolationEnum_type = new enumeration_type("IfcCurveInterpolationEnum", 275, items);
+ }
+ {
+ std::vector items; items.reserve(13);
+ items.push_back("BACKDRAFTDAMPER");
+ items.push_back("BALANCINGDAMPER");
+ items.push_back("BLASTDAMPER");
+ items.push_back("CONTROLDAMPER");
+ items.push_back("FIREDAMPER");
+ items.push_back("FIRESMOKEDAMPER");
+ items.push_back("FUMEHOODEXHAUST");
+ items.push_back("GRAVITYDAMPER");
+ items.push_back("GRAVITYRELIEFDAMPER");
+ items.push_back("NOTDEFINED");
+ items.push_back("RELIEFDAMPER");
+ items.push_back("SMOKEDAMPER");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDamperTypeEnum_type = new enumeration_type("IfcDamperTypeEnum", 288, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("MEASURED");
+ items.push_back("NOTDEFINED");
+ items.push_back("PREDICTED");
+ items.push_back("SIMULATED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDataOriginEnum_type = new enumeration_type("IfcDataOriginEnum", 289, items);
+ }
+ IFC4X3_ADD1_IfcDate_type = new type_declaration("IfcDate", 290, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcDateTime_type = new type_declaration("IfcDateTime", 291, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcDayInMonthNumber_type = new type_declaration("IfcDayInMonthNumber", 292, new simple_type(simple_type::integer_type));
+ IFC4X3_ADD1_IfcDayInWeekNumber_type = new type_declaration("IfcDayInWeekNumber", 293, new simple_type(simple_type::integer_type));
+ {
+ std::vector items; items.reserve(53);
+ items.push_back("ACCELERATIONUNIT");
+ items.push_back("ANGULARVELOCITYUNIT");
+ items.push_back("AREADENSITYUNIT");
+ items.push_back("COMPOUNDPLANEANGLEUNIT");
+ items.push_back("CURVATUREUNIT");
+ items.push_back("DYNAMICVISCOSITYUNIT");
+ items.push_back("HEATFLUXDENSITYUNIT");
+ items.push_back("HEATINGVALUEUNIT");
+ items.push_back("INTEGERCOUNTRATEUNIT");
+ items.push_back("IONCONCENTRATIONUNIT");
+ items.push_back("ISOTHERMALMOISTURECAPACITYUNIT");
+ items.push_back("KINEMATICVISCOSITYUNIT");
+ items.push_back("LINEARFORCEUNIT");
+ items.push_back("LINEARMOMENTUNIT");
+ items.push_back("LINEARSTIFFNESSUNIT");
+ items.push_back("LINEARVELOCITYUNIT");
+ items.push_back("LUMINOUSINTENSITYDISTRIBUTIONUNIT");
+ items.push_back("MASSDENSITYUNIT");
+ items.push_back("MASSFLOWRATEUNIT");
+ items.push_back("MASSPERLENGTHUNIT");
+ items.push_back("MODULUSOFELASTICITYUNIT");
+ items.push_back("MODULUSOFLINEARSUBGRADEREACTIONUNIT");
+ items.push_back("MODULUSOFROTATIONALSUBGRADEREACTIONUNIT");
+ items.push_back("MODULUSOFSUBGRADEREACTIONUNIT");
+ items.push_back("MOISTUREDIFFUSIVITYUNIT");
+ items.push_back("MOLECULARWEIGHTUNIT");
+ items.push_back("MOMENTOFINERTIAUNIT");
+ items.push_back("PHUNIT");
+ items.push_back("PLANARFORCEUNIT");
+ items.push_back("ROTATIONALFREQUENCYUNIT");
+ items.push_back("ROTATIONALMASSUNIT");
+ items.push_back("ROTATIONALSTIFFNESSUNIT");
+ items.push_back("SECTIONAREAINTEGRALUNIT");
+ items.push_back("SECTIONMODULUSUNIT");
+ items.push_back("SHEARMODULUSUNIT");
+ items.push_back("SOUNDPOWERLEVELUNIT");
+ items.push_back("SOUNDPOWERUNIT");
+ items.push_back("SOUNDPRESSURELEVELUNIT");
+ items.push_back("SOUNDPRESSUREUNIT");
+ items.push_back("SPECIFICHEATCAPACITYUNIT");
+ items.push_back("TEMPERATUREGRADIENTUNIT");
+ items.push_back("TEMPERATURERATEOFCHANGEUNIT");
+ items.push_back("THERMALADMITTANCEUNIT");
+ items.push_back("THERMALCONDUCTANCEUNIT");
+ items.push_back("THERMALEXPANSIONCOEFFICIENTUNIT");
+ items.push_back("THERMALRESISTANCEUNIT");
+ items.push_back("THERMALTRANSMITTANCEUNIT");
+ items.push_back("TORQUEUNIT");
+ items.push_back("USERDEFINED");
+ items.push_back("VAPORPERMEABILITYUNIT");
+ items.push_back("VOLUMETRICFLOWRATEUNIT");
+ items.push_back("WARPINGCONSTANTUNIT");
+ items.push_back("WARPINGMOMENTUNIT");
+ IFC4X3_ADD1_IfcDerivedUnitEnum_type = new enumeration_type("IfcDerivedUnitEnum", 301, items);
+ }
+ IFC4X3_ADD1_IfcDescriptiveMeasure_type = new type_declaration("IfcDescriptiveMeasure", 302, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcDimensionCount_type = new type_declaration("IfcDimensionCount", 304, new simple_type(simple_type::integer_type));
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NEGATIVE");
+ items.push_back("POSITIVE");
+ IFC4X3_ADD1_IfcDirectionSenseEnum_type = new enumeration_type("IfcDirectionSenseEnum", 306, items);
+ }
+ {
+ std::vector items; items.reserve(23);
+ items.push_back("ANCHORPLATE");
+ items.push_back("BIRDPROTECTION");
+ items.push_back("BRACKET");
+ items.push_back("CABLEARRANGER");
+ items.push_back("ELASTIC_CUSHION");
+ items.push_back("EXPANSION_JOINT_DEVICE");
+ items.push_back("FILLER");
+ items.push_back("FLASHING");
+ items.push_back("INSULATOR");
+ items.push_back("LOCK");
+ items.push_back("NOTDEFINED");
+ items.push_back("PANEL_STRENGTHENING");
+ items.push_back("POINTMACHINEMOUNTINGDEVICE");
+ items.push_back("POINT_MACHINE_LOCKING_DEVICE");
+ items.push_back("RAILBRACE");
+ items.push_back("RAILPAD");
+ items.push_back("RAIL_LUBRICATION");
+ items.push_back("RAIL_MECHANICAL_EQUIPMENT");
+ items.push_back("SHOE");
+ items.push_back("SLIDINGCHAIR");
+ items.push_back("SOUNDABSORPTION");
+ items.push_back("TENSIONINGEQUIPMENT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDiscreteAccessoryTypeEnum_type = new enumeration_type("IfcDiscreteAccessoryTypeEnum", 311, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("CONSUMERUNIT");
+ items.push_back("DISPATCHINGBOARD");
+ items.push_back("DISTRIBUTIONBOARD");
+ items.push_back("DISTRIBUTIONFRAME");
+ items.push_back("MOTORCONTROLCENTRE");
+ items.push_back("NOTDEFINED");
+ items.push_back("SWITCHBOARD");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDistributionBoardTypeEnum_type = new enumeration_type("IfcDistributionBoardTypeEnum", 314, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("FORMEDDUCT");
+ items.push_back("INSPECTIONCHAMBER");
+ items.push_back("INSPECTIONPIT");
+ items.push_back("MANHOLE");
+ items.push_back("METERCHAMBER");
+ items.push_back("NOTDEFINED");
+ items.push_back("SUMP");
+ items.push_back("TRENCH");
+ items.push_back("USERDEFINED");
+ items.push_back("VALVECHAMBER");
+ IFC4X3_ADD1_IfcDistributionChamberElementTypeEnum_type = new enumeration_type("IfcDistributionChamberElementTypeEnum", 317, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("CABLE");
+ items.push_back("CABLECARRIER");
+ items.push_back("DUCT");
+ items.push_back("NOTDEFINED");
+ items.push_back("PIPE");
+ items.push_back("USERDEFINED");
+ items.push_back("WIRELESS");
+ IFC4X3_ADD1_IfcDistributionPortTypeEnum_type = new enumeration_type("IfcDistributionPortTypeEnum", 326, items);
+ }
+ {
+ std::vector items; items.reserve(51);
+ items.push_back("AIRCONDITIONING");
+ items.push_back("AUDIOVISUAL");
+ items.push_back("CATENARY_SYSTEM");
+ items.push_back("CHEMICAL");
+ items.push_back("CHILLEDWATER");
+ items.push_back("COMMUNICATION");
+ items.push_back("COMPRESSEDAIR");
+ items.push_back("CONDENSERWATER");
+ items.push_back("CONTROL");
+ items.push_back("CONVEYING");
+ items.push_back("DATA");
+ items.push_back("DISPOSAL");
+ items.push_back("DOMESTICCOLDWATER");
+ items.push_back("DOMESTICHOTWATER");
+ items.push_back("DRAINAGE");
+ items.push_back("EARTHING");
+ items.push_back("ELECTRICAL");
+ items.push_back("ELECTROACOUSTIC");
+ items.push_back("EXHAUST");
+ items.push_back("FIREPROTECTION");
+ items.push_back("FIXEDTRANSMISSIONNETWORK");
+ items.push_back("FUEL");
+ items.push_back("GAS");
+ items.push_back("HAZARDOUS");
+ items.push_back("HEATING");
+ items.push_back("LIGHTING");
+ items.push_back("LIGHTNINGPROTECTION");
+ items.push_back("MOBILENETWORK");
+ items.push_back("MONITORINGSYSTEM");
+ items.push_back("MUNICIPALSOLIDWASTE");
+ items.push_back("NOTDEFINED");
+ items.push_back("OIL");
+ items.push_back("OPERATIONAL");
+ items.push_back("OPERATIONALTELEPHONYSYSTEM");
+ items.push_back("OVERHEAD_CONTACTLINE_SYSTEM");
+ items.push_back("POWERGENERATION");
+ items.push_back("RAINWATER");
+ items.push_back("REFRIGERATION");
+ items.push_back("RETURN_CIRCUIT");
+ items.push_back("SECURITY");
+ items.push_back("SEWAGE");
+ items.push_back("SIGNAL");
+ items.push_back("STORMWATER");
+ items.push_back("TELEPHONE");
+ items.push_back("TV");
+ items.push_back("USERDEFINED");
+ items.push_back("VACUUM");
+ items.push_back("VENT");
+ items.push_back("VENTILATION");
+ items.push_back("WASTEWATER");
+ items.push_back("WATERSUPPLY");
+ IFC4X3_ADD1_IfcDistributionSystemEnum_type = new enumeration_type("IfcDistributionSystemEnum", 328, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("CONFIDENTIAL");
+ items.push_back("NOTDEFINED");
+ items.push_back("PERSONAL");
+ items.push_back("PUBLIC");
+ items.push_back("RESTRICTED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDocumentConfidentialityEnum_type = new enumeration_type("IfcDocumentConfidentialityEnum", 329, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("DRAFT");
+ items.push_back("FINAL");
+ items.push_back("FINALDRAFT");
+ items.push_back("NOTDEFINED");
+ items.push_back("REVISION");
+ IFC4X3_ADD1_IfcDocumentStatusEnum_type = new enumeration_type("IfcDocumentStatusEnum", 334, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("DOUBLE_ACTING");
+ items.push_back("FIXEDPANEL");
+ items.push_back("FOLDING");
+ items.push_back("NOTDEFINED");
+ items.push_back("REVOLVING");
+ items.push_back("ROLLINGUP");
+ items.push_back("SLIDING");
+ items.push_back("SWINGING");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDoorPanelOperationEnum_type = new enumeration_type("IfcDoorPanelOperationEnum", 337, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("LEFT");
+ items.push_back("MIDDLE");
+ items.push_back("NOTDEFINED");
+ items.push_back("RIGHT");
+ IFC4X3_ADD1_IfcDoorPanelPositionEnum_type = new enumeration_type("IfcDoorPanelPositionEnum", 338, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("BOOM_BARRIER");
+ items.push_back("DOOR");
+ items.push_back("GATE");
+ items.push_back("NOTDEFINED");
+ items.push_back("TRAPDOOR");
+ items.push_back("TURNSTILE");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDoorTypeEnum_type = new enumeration_type("IfcDoorTypeEnum", 341, items);
+ }
+ {
+ std::vector items; items.reserve(25);
+ items.push_back("DOUBLE_DOOR_DOUBLE_SWING");
+ items.push_back("DOUBLE_DOOR_FOLDING");
+ items.push_back("DOUBLE_DOOR_LIFTING_VERTICAL");
+ items.push_back("DOUBLE_DOOR_SINGLE_SWING");
+ items.push_back("DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT");
+ items.push_back("DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT");
+ items.push_back("DOUBLE_DOOR_SLIDING");
+ items.push_back("DOUBLE_SWING_LEFT");
+ items.push_back("DOUBLE_SWING_RIGHT");
+ items.push_back("FOLDING_TO_LEFT");
+ items.push_back("FOLDING_TO_RIGHT");
+ items.push_back("LIFTING_HORIZONTAL");
+ items.push_back("LIFTING_VERTICAL_LEFT");
+ items.push_back("LIFTING_VERTICAL_RIGHT");
+ items.push_back("NOTDEFINED");
+ items.push_back("REVOLVING");
+ items.push_back("REVOLVING_VERTICAL");
+ items.push_back("ROLLINGUP");
+ items.push_back("SINGLE_SWING_LEFT");
+ items.push_back("SINGLE_SWING_RIGHT");
+ items.push_back("SLIDING_TO_LEFT");
+ items.push_back("SLIDING_TO_RIGHT");
+ items.push_back("SWING_FIXED_LEFT");
+ items.push_back("SWING_FIXED_RIGHT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDoorTypeOperationEnum_type = new enumeration_type("IfcDoorTypeOperationEnum", 342, items);
+ }
+ IFC4X3_ADD1_IfcDoseEquivalentMeasure_type = new type_declaration("IfcDoseEquivalentMeasure", 343, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("BEND");
+ items.push_back("CONNECTOR");
+ items.push_back("ENTRY");
+ items.push_back("EXIT");
+ items.push_back("JUNCTION");
+ items.push_back("NOTDEFINED");
+ items.push_back("OBSTRUCTION");
+ items.push_back("TRANSITION");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDuctFittingTypeEnum_type = new enumeration_type("IfcDuctFittingTypeEnum", 348, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("FLEXIBLESEGMENT");
+ items.push_back("NOTDEFINED");
+ items.push_back("RIGIDSEGMENT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDuctSegmentTypeEnum_type = new enumeration_type("IfcDuctSegmentTypeEnum", 351, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("FLATOVAL");
+ items.push_back("NOTDEFINED");
+ items.push_back("RECTANGULAR");
+ items.push_back("ROUND");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcDuctSilencerTypeEnum_type = new enumeration_type("IfcDuctSilencerTypeEnum", 354, items);
+ }
+ IFC4X3_ADD1_IfcDuration_type = new type_declaration("IfcDuration", 355, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcDynamicViscosityMeasure_type = new type_declaration("IfcDynamicViscosityMeasure", 356, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("BASE_EXCAVATION");
+ items.push_back("CUT");
+ items.push_back("DREDGING");
+ items.push_back("EXCAVATION");
+ items.push_back("NOTDEFINED");
+ items.push_back("OVEREXCAVATION");
+ items.push_back("PAVEMENTMILLING");
+ items.push_back("STEPEXCAVATION");
+ items.push_back("TOPSOILREMOVAL");
+ items.push_back("TRENCH");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcEarthworksCutTypeEnum_type = new enumeration_type("IfcEarthworksCutTypeEnum", 358, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("BACKFILL");
+ items.push_back("COUNTERWEIGHT");
+ items.push_back("EMBANKMENT");
+ items.push_back("NOTDEFINED");
+ items.push_back("SLOPEFILL");
+ items.push_back("SUBGRADE");
+ items.push_back("SUBGRADEBED");
+ items.push_back("TRANSITIONSECTION");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcEarthworksFillTypeEnum_type = new enumeration_type("IfcEarthworksFillTypeEnum", 361, items);
+ }
+ {
+ std::vector items; items.reserve(18);
+ items.push_back("DISHWASHER");
+ items.push_back("ELECTRICCOOKER");
+ items.push_back("FREESTANDINGELECTRICHEATER");
+ items.push_back("FREESTANDINGFAN");
+ items.push_back("FREESTANDINGWATERCOOLER");
+ items.push_back("FREESTANDINGWATERHEATER");
+ items.push_back("FREEZER");
+ items.push_back("FRIDGE_FREEZER");
+ items.push_back("HANDDRYER");
+ items.push_back("KITCHENMACHINE");
+ items.push_back("MICROWAVE");
+ items.push_back("NOTDEFINED");
+ items.push_back("PHOTOCOPIER");
+ items.push_back("REFRIGERATOR");
+ items.push_back("TUMBLEDRYER");
+ items.push_back("USERDEFINED");
+ items.push_back("VENDINGMACHINE");
+ items.push_back("WASHINGMACHINE");
+ IFC4X3_ADD1_IfcElectricApplianceTypeEnum_type = new enumeration_type("IfcElectricApplianceTypeEnum", 367, items);
+ }
+ IFC4X3_ADD1_IfcElectricCapacitanceMeasure_type = new type_declaration("IfcElectricCapacitanceMeasure", 368, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcElectricChargeMeasure_type = new type_declaration("IfcElectricChargeMeasure", 369, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcElectricConductanceMeasure_type = new type_declaration("IfcElectricConductanceMeasure", 370, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcElectricCurrentMeasure_type = new type_declaration("IfcElectricCurrentMeasure", 371, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("CONSUMERUNIT");
+ items.push_back("DISTRIBUTIONBOARD");
+ items.push_back("MOTORCONTROLCENTRE");
+ items.push_back("NOTDEFINED");
+ items.push_back("SWITCHBOARD");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcElectricDistributionBoardTypeEnum_type = new enumeration_type("IfcElectricDistributionBoardTypeEnum", 374, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("BATTERY");
+ items.push_back("CAPACITOR");
+ items.push_back("CAPACITORBANK");
+ items.push_back("COMPENSATOR");
+ items.push_back("HARMONICFILTER");
+ items.push_back("INDUCTOR");
+ items.push_back("INDUCTORBANK");
+ items.push_back("NOTDEFINED");
+ items.push_back("RECHARGER");
+ items.push_back("UPS");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcElectricFlowStorageDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowStorageDeviceTypeEnum", 377, items);
+ }
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("ELECTRONICFILTER");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcElectricFlowTreatmentDeviceTypeEnum_type = new enumeration_type("IfcElectricFlowTreatmentDeviceTypeEnum", 380, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("CHP");
+ items.push_back("ENGINEGENERATOR");
+ items.push_back("NOTDEFINED");
+ items.push_back("STANDALONE");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcElectricGeneratorTypeEnum_type = new enumeration_type("IfcElectricGeneratorTypeEnum", 383, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("DC");
+ items.push_back("INDUCTION");
+ items.push_back("NOTDEFINED");
+ items.push_back("POLYPHASE");
+ items.push_back("RELUCTANCESYNCHRONOUS");
+ items.push_back("SYNCHRONOUS");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcElectricMotorTypeEnum_type = new enumeration_type("IfcElectricMotorTypeEnum", 386, items);
+ }
+ IFC4X3_ADD1_IfcElectricResistanceMeasure_type = new type_declaration("IfcElectricResistanceMeasure", 387, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("NOTDEFINED");
+ items.push_back("RELAY");
+ items.push_back("TIMECLOCK");
+ items.push_back("TIMEDELAY");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcElectricTimeControlTypeEnum_type = new enumeration_type("IfcElectricTimeControlTypeEnum", 390, items);
+ }
+ IFC4X3_ADD1_IfcElectricVoltageMeasure_type = new type_declaration("IfcElectricVoltageMeasure", 391, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(30);
+ items.push_back("ABUTMENT");
+ items.push_back("ACCESSORY_ASSEMBLY");
+ items.push_back("ARCH");
+ items.push_back("BEAM_GRID");
+ items.push_back("BRACED_FRAME");
+ items.push_back("CROSS_BRACING");
+ items.push_back("DECK");
+ items.push_back("DILATATIONPANEL");
+ items.push_back("ENTRANCEWORKS");
+ items.push_back("GIRDER");
+ items.push_back("GRID");
+ items.push_back("MAST");
+ items.push_back("NOTDEFINED");
+ items.push_back("PIER");
+ items.push_back("PYLON");
+ items.push_back("RAIL_MECHANICAL_EQUIPMENT_ASSEMBLY");
+ items.push_back("REINFORCEMENT_UNIT");
+ items.push_back("RIGID_FRAME");
+ items.push_back("SHELTER");
+ items.push_back("SIGNALASSEMBLY");
+ items.push_back("SLAB_FIELD");
+ items.push_back("SUMPBUSTER");
+ items.push_back("SUPPORTINGASSEMBLY");
+ items.push_back("SUSPENSIONASSEMBLY");
+ items.push_back("TRACKPANEL");
+ items.push_back("TRACTION_SWITCHING_ASSEMBLY");
+ items.push_back("TRAFFIC_CALMING_DEVICE");
+ items.push_back("TRUSS");
+ items.push_back("TURNOUTPANEL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcElementAssemblyTypeEnum_type = new enumeration_type("IfcElementAssemblyTypeEnum", 396, items);
+ }
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("COMPLEX");
+ items.push_back("ELEMENT");
+ items.push_back("PARTIAL");
+ IFC4X3_ADD1_IfcElementCompositionEnum_type = new enumeration_type("IfcElementCompositionEnum", 399, items);
+ }
+ IFC4X3_ADD1_IfcEnergyMeasure_type = new type_declaration("IfcEnergyMeasure", 406, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("EXTERNALCOMBUSTION");
+ items.push_back("INTERNALCOMBUSTION");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcEngineTypeEnum_type = new enumeration_type("IfcEngineTypeEnum", 409, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("DIRECTEVAPORATIVEAIRWASHER");
+ items.push_back("DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER");
+ items.push_back("DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER");
+ items.push_back("DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER");
+ items.push_back("DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER");
+ items.push_back("INDIRECTDIRECTCOMBINATION");
+ items.push_back("INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER");
+ items.push_back("INDIRECTEVAPORATIVEPACKAGEAIRCOOLER");
+ items.push_back("INDIRECTEVAPORATIVEWETCOIL");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcEvaporativeCoolerTypeEnum_type = new enumeration_type("IfcEvaporativeCoolerTypeEnum", 412, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("DIRECTEXPANSION");
+ items.push_back("DIRECTEXPANSIONBRAZEDPLATE");
+ items.push_back("DIRECTEXPANSIONSHELLANDTUBE");
+ items.push_back("DIRECTEXPANSIONTUBEINTUBE");
+ items.push_back("FLOODEDSHELLANDTUBE");
+ items.push_back("NOTDEFINED");
+ items.push_back("SHELLANDCOIL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcEvaporatorTypeEnum_type = new enumeration_type("IfcEvaporatorTypeEnum", 415, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("EVENTCOMPLEX");
+ items.push_back("EVENTMESSAGE");
+ items.push_back("EVENTRULE");
+ items.push_back("EVENTTIME");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcEventTriggerTypeEnum_type = new enumeration_type("IfcEventTriggerTypeEnum", 418, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("ENDEVENT");
+ items.push_back("INTERMEDIATEEVENT");
+ items.push_back("NOTDEFINED");
+ items.push_back("STARTEVENT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcEventTypeEnum_type = new enumeration_type("IfcEventTypeEnum", 420, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("EXTERNAL");
+ items.push_back("EXTERNAL_EARTH");
+ items.push_back("EXTERNAL_FIRE");
+ items.push_back("EXTERNAL_WATER");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcExternalSpatialElementTypeEnum_type = new enumeration_type("IfcExternalSpatialElementTypeEnum", 429, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("ABOVEGROUND");
+ items.push_back("BELOWGROUND");
+ items.push_back("JUNCTION");
+ items.push_back("LEVELCROSSING");
+ items.push_back("NOTDEFINED");
+ items.push_back("SEGMENT");
+ items.push_back("SUBSTRUCTURE");
+ items.push_back("SUPERSTRUCTURE");
+ items.push_back("TERMINAL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcFacilityPartCommonTypeEnum_type = new enumeration_type("IfcFacilityPartCommonTypeEnum", 443, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("LATERAL");
+ items.push_back("LONGITUDINAL");
+ items.push_back("NOTDEFINED");
+ items.push_back("REGION");
+ items.push_back("USERDEFINED");
+ items.push_back("VERTICAL");
+ IFC4X3_ADD1_IfcFacilityUsageEnum_type = new enumeration_type("IfcFacilityUsageEnum", 444, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("CENTRIFUGALAIRFOIL");
+ items.push_back("CENTRIFUGALBACKWARDINCLINEDCURVED");
+ items.push_back("CENTRIFUGALFORWARDCURVED");
+ items.push_back("CENTRIFUGALRADIAL");
+ items.push_back("NOTDEFINED");
+ items.push_back("PROPELLORAXIAL");
+ items.push_back("TUBEAXIAL");
+ items.push_back("USERDEFINED");
+ items.push_back("VANEAXIAL");
+ IFC4X3_ADD1_IfcFanTypeEnum_type = new enumeration_type("IfcFanTypeEnum", 448, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("GLUE");
+ items.push_back("MORTAR");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ items.push_back("WELD");
+ IFC4X3_ADD1_IfcFastenerTypeEnum_type = new enumeration_type("IfcFastenerTypeEnum", 451, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("AIRPARTICLEFILTER");
+ items.push_back("COMPRESSEDAIRFILTER");
+ items.push_back("NOTDEFINED");
+ items.push_back("ODORFILTER");
+ items.push_back("OILFILTER");
+ items.push_back("STRAINER");
+ items.push_back("USERDEFINED");
+ items.push_back("WATERFILTER");
+ IFC4X3_ADD1_IfcFilterTypeEnum_type = new enumeration_type("IfcFilterTypeEnum", 461, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("BREECHINGINLET");
+ items.push_back("FIREHYDRANT");
+ items.push_back("FIREMONITOR");
+ items.push_back("HOSEREEL");
+ items.push_back("NOTDEFINED");
+ items.push_back("SPRINKLER");
+ items.push_back("SPRINKLERDEFLECTOR");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcFireSuppressionTerminalTypeEnum_type = new enumeration_type("IfcFireSuppressionTerminalTypeEnum", 464, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("NOTDEFINED");
+ items.push_back("SINK");
+ items.push_back("SOURCE");
+ items.push_back("SOURCEANDSINK");
+ IFC4X3_ADD1_IfcFlowDirectionEnum_type = new enumeration_type("IfcFlowDirectionEnum", 468, items);
+ }
+ {
+ std::vector items; items.reserve(12);
+ items.push_back("AMMETER");
+ items.push_back("COMBINED");
+ items.push_back("FREQUENCYMETER");
+ items.push_back("NOTDEFINED");
+ items.push_back("PHASEANGLEMETER");
+ items.push_back("POWERFACTORMETER");
+ items.push_back("PRESSUREGAUGE");
+ items.push_back("THERMOMETER");
+ items.push_back("USERDEFINED");
+ items.push_back("VOLTMETER");
+ items.push_back("VOLTMETER_PEAK");
+ items.push_back("VOLTMETER_RMS");
+ IFC4X3_ADD1_IfcFlowInstrumentTypeEnum_type = new enumeration_type("IfcFlowInstrumentTypeEnum", 473, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("ENERGYMETER");
+ items.push_back("GASMETER");
+ items.push_back("NOTDEFINED");
+ items.push_back("OILMETER");
+ items.push_back("USERDEFINED");
+ items.push_back("WATERMETER");
+ IFC4X3_ADD1_IfcFlowMeterTypeEnum_type = new enumeration_type("IfcFlowMeterTypeEnum", 476, items);
+ }
+ IFC4X3_ADD1_IfcFontStyle_type = new type_declaration("IfcFontStyle", 487, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcFontVariant_type = new type_declaration("IfcFontVariant", 488, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcFontWeight_type = new type_declaration("IfcFontWeight", 489, new simple_type(simple_type::string_type));
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("CAISSON_FOUNDATION");
+ items.push_back("FOOTING_BEAM");
+ items.push_back("NOTDEFINED");
+ items.push_back("PAD_FOOTING");
+ items.push_back("PILE_CAP");
+ items.push_back("STRIP_FOOTING");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcFootingTypeEnum_type = new enumeration_type("IfcFootingTypeEnum", 492, items);
+ }
+ IFC4X3_ADD1_IfcForceMeasure_type = new type_declaration("IfcForceMeasure", 493, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcFrequencyMeasure_type = new type_declaration("IfcFrequencyMeasure", 494, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("BED");
+ items.push_back("CHAIR");
+ items.push_back("DESK");
+ items.push_back("FILECABINET");
+ items.push_back("NOTDEFINED");
+ items.push_back("SHELF");
+ items.push_back("SOFA");
+ items.push_back("TABLE");
+ items.push_back("TECHNICALCABINET");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcFurnitureTypeEnum_type = new enumeration_type("IfcFurnitureTypeEnum", 499, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("NOTDEFINED");
+ items.push_back("SOIL_BORING_POINT");
+ items.push_back("TERRAIN");
+ items.push_back("USERDEFINED");
+ items.push_back("VEGETATION");
+ IFC4X3_ADD1_IfcGeographicElementTypeEnum_type = new enumeration_type("IfcGeographicElementTypeEnum", 503, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("ELEVATION_VIEW");
+ items.push_back("GRAPH_VIEW");
+ items.push_back("MODEL_VIEW");
+ items.push_back("NOTDEFINED");
+ items.push_back("PLAN_VIEW");
+ items.push_back("REFLECTED_PLAN_VIEW");
+ items.push_back("SECTION_VIEW");
+ items.push_back("SKETCH_VIEW");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcGeometricProjectionEnum_type = new enumeration_type("IfcGeometricProjectionEnum", 505, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("NOTDEFINED");
+ items.push_back("SOLID");
+ items.push_back("USERDEFINED");
+ items.push_back("VOID");
+ items.push_back("WATER");
+ IFC4X3_ADD1_IfcGeotechnicalStratumTypeEnum_type = new enumeration_type("IfcGeotechnicalStratumTypeEnum", 516, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("GLOBAL_COORDS");
+ items.push_back("LOCAL_COORDS");
+ IFC4X3_ADD1_IfcGlobalOrLocalEnum_type = new enumeration_type("IfcGlobalOrLocalEnum", 518, items);
+ }
+ IFC4X3_ADD1_IfcGloballyUniqueId_type = new type_declaration("IfcGloballyUniqueId", 517, new simple_type(simple_type::string_type));
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("IRREGULAR");
+ items.push_back("NOTDEFINED");
+ items.push_back("RADIAL");
+ items.push_back("RECTANGULAR");
+ items.push_back("TRIANGULAR");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcGridTypeEnum_type = new enumeration_type("IfcGridTypeEnum", 524, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("NOTDEFINED");
+ items.push_back("PLATE");
+ items.push_back("SHELLANDTUBE");
+ items.push_back("TURNOUTHEATING");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcHeatExchangerTypeEnum_type = new enumeration_type("IfcHeatExchangerTypeEnum", 530, items);
+ }
+ IFC4X3_ADD1_IfcHeatFluxDensityMeasure_type = new type_declaration("IfcHeatFluxDensityMeasure", 531, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcHeatingValueMeasure_type = new type_declaration("IfcHeatingValueMeasure", 532, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(15);
+ items.push_back("ADIABATICAIRWASHER");
+ items.push_back("ADIABATICATOMIZING");
+ items.push_back("ADIABATICCOMPRESSEDAIRNOZZLE");
+ items.push_back("ADIABATICPAN");
+ items.push_back("ADIABATICRIGIDMEDIA");
+ items.push_back("ADIABATICULTRASONIC");
+ items.push_back("ADIABATICWETTEDELEMENT");
+ items.push_back("ASSISTEDBUTANE");
+ items.push_back("ASSISTEDELECTRIC");
+ items.push_back("ASSISTEDNATURALGAS");
+ items.push_back("ASSISTEDPROPANE");
+ items.push_back("ASSISTEDSTEAM");
+ items.push_back("NOTDEFINED");
+ items.push_back("STEAMINJECTION");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcHumidifierTypeEnum_type = new enumeration_type("IfcHumidifierTypeEnum", 535, items);
+ }
+ IFC4X3_ADD1_IfcIdentifier_type = new type_declaration("IfcIdentifier", 536, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcIlluminanceMeasure_type = new type_declaration("IfcIlluminanceMeasure", 537, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("BUMPER");
+ items.push_back("CRASHCUSHION");
+ items.push_back("DAMPINGSYSTEM");
+ items.push_back("FENDER");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcImpactProtectionDeviceTypeEnum_type = new enumeration_type("IfcImpactProtectionDeviceTypeEnum", 541, items);
+ }
+ IFC4X3_ADD1_IfcInductanceMeasure_type = new type_declaration("IfcInductanceMeasure", 549, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcInteger_type = new type_declaration("IfcInteger", 550, new simple_type(simple_type::integer_type));
+ IFC4X3_ADD1_IfcIntegerCountRateMeasure_type = new type_declaration("IfcIntegerCountRateMeasure", 551, new simple_type(simple_type::integer_type));
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("CYCLONIC");
+ items.push_back("GREASE");
+ items.push_back("NOTDEFINED");
+ items.push_back("OIL");
+ items.push_back("PETROL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcInterceptorTypeEnum_type = new enumeration_type("IfcInterceptorTypeEnum", 554, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("EXTERNAL");
+ items.push_back("EXTERNAL_EARTH");
+ items.push_back("EXTERNAL_FIRE");
+ items.push_back("EXTERNAL_WATER");
+ items.push_back("INTERNAL");
+ items.push_back("NOTDEFINED");
+ IFC4X3_ADD1_IfcInternalOrExternalEnum_type = new enumeration_type("IfcInternalOrExternalEnum", 556, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("ASSETINVENTORY");
+ items.push_back("FURNITUREINVENTORY");
+ items.push_back("NOTDEFINED");
+ items.push_back("SPACEINVENTORY");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcInventoryTypeEnum_type = new enumeration_type("IfcInventoryTypeEnum", 559, items);
+ }
+ IFC4X3_ADD1_IfcIonConcentrationMeasure_type = new type_declaration("IfcIonConcentrationMeasure", 560, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcIsothermalMoistureCapacityMeasure_type = new type_declaration("IfcIsothermalMoistureCapacityMeasure", 564, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("DATA");
+ items.push_back("NOTDEFINED");
+ items.push_back("POWER");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcJunctionBoxTypeEnum_type = new enumeration_type("IfcJunctionBoxTypeEnum", 567, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcKerbTypeEnum_type = new enumeration_type("IfcKerbTypeEnum", 570, items);
+ }
+ IFC4X3_ADD1_IfcKinematicViscosityMeasure_type = new type_declaration("IfcKinematicViscosityMeasure", 571, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("PIECEWISE_BEZIER_KNOTS");
+ items.push_back("QUASI_UNIFORM_KNOTS");
+ items.push_back("UNIFORM_KNOTS");
+ items.push_back("UNSPECIFIED");
+ IFC4X3_ADD1_IfcKnotType_type = new enumeration_type("IfcKnotType", 572, items);
+ }
+ IFC4X3_ADD1_IfcLabel_type = new type_declaration("IfcLabel", 573, new simple_type(simple_type::string_type));
+ {
+ std::vector items; items.reserve(21);
+ items.push_back("ADMINISTRATION");
+ items.push_back("CARPENTRY");
+ items.push_back("CLEANING");
+ items.push_back("CONCRETE");
+ items.push_back("DRYWALL");
+ items.push_back("ELECTRIC");
+ items.push_back("FINISHING");
+ items.push_back("FLOORING");
+ items.push_back("GENERAL");
+ items.push_back("HVAC");
+ items.push_back("LANDSCAPING");
+ items.push_back("MASONRY");
+ items.push_back("NOTDEFINED");
+ items.push_back("PAINTING");
+ items.push_back("PAVING");
+ items.push_back("PLUMBING");
+ items.push_back("ROOFING");
+ items.push_back("SITEGRADING");
+ items.push_back("STEELWORK");
+ items.push_back("SURVEYING");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcLaborResourceTypeEnum_type = new enumeration_type("IfcLaborResourceTypeEnum", 576, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("COMPACTFLUORESCENT");
+ items.push_back("FLUORESCENT");
+ items.push_back("HALOGEN");
+ items.push_back("HIGHPRESSUREMERCURY");
+ items.push_back("HIGHPRESSURESODIUM");
+ items.push_back("LED");
+ items.push_back("METALHALIDE");
+ items.push_back("NOTDEFINED");
+ items.push_back("OLED");
+ items.push_back("TUNGSTENFILAMENT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcLampTypeEnum_type = new enumeration_type("IfcLampTypeEnum", 580, items);
+ }
+ IFC4X3_ADD1_IfcLanguageId_type = new type_declaration("IfcLanguageId", 581, new named_type(IFC4X3_ADD1_IfcIdentifier_type));
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("AXIS1");
+ items.push_back("AXIS2");
+ items.push_back("AXIS3");
+ IFC4X3_ADD1_IfcLayerSetDirectionEnum_type = new enumeration_type("IfcLayerSetDirectionEnum", 583, items);
+ }
+ IFC4X3_ADD1_IfcLengthMeasure_type = new type_declaration("IfcLengthMeasure", 584, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("NOTDEFINED");
+ items.push_back("TYPE_A");
+ items.push_back("TYPE_B");
+ items.push_back("TYPE_C");
+ IFC4X3_ADD1_IfcLightDistributionCurveEnum_type = new enumeration_type("IfcLightDistributionCurveEnum", 588, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("COMPACTFLUORESCENT");
+ items.push_back("FLUORESCENT");
+ items.push_back("HIGHPRESSUREMERCURY");
+ items.push_back("HIGHPRESSURESODIUM");
+ items.push_back("LIGHTEMITTINGDIODE");
+ items.push_back("LOWPRESSURESODIUM");
+ items.push_back("LOWVOLTAGEHALOGEN");
+ items.push_back("MAINVOLTAGEHALOGEN");
+ items.push_back("METALHALIDE");
+ items.push_back("NOTDEFINED");
+ items.push_back("TUNGSTENFILAMENT");
+ IFC4X3_ADD1_IfcLightEmissionSourceEnum_type = new enumeration_type("IfcLightEmissionSourceEnum", 591, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("DIRECTIONSOURCE");
+ items.push_back("NOTDEFINED");
+ items.push_back("POINTSOURCE");
+ items.push_back("SECURITYLIGHTING");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcLightFixtureTypeEnum_type = new enumeration_type("IfcLightFixtureTypeEnum", 594, items);
+ }
+ IFC4X3_ADD1_IfcLinearForceMeasure_type = new type_declaration("IfcLinearForceMeasure", 604, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcLinearMomentMeasure_type = new type_declaration("IfcLinearMomentMeasure", 605, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcLinearStiffnessMeasure_type = new type_declaration("IfcLinearStiffnessMeasure", 608, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcLinearVelocityMeasure_type = new type_declaration("IfcLinearVelocityMeasure", 609, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("HOSEREEL");
+ items.push_back("LOADINGARM");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcLiquidTerminalTypeEnum_type = new enumeration_type("IfcLiquidTerminalTypeEnum", 613, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("LOAD_CASE");
+ items.push_back("LOAD_COMBINATION");
+ items.push_back("LOAD_GROUP");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcLoadGroupTypeEnum_type = new enumeration_type("IfcLoadGroupTypeEnum", 614, items);
+ }
+ IFC4X3_ADD1_IfcLogical_type = new type_declaration("IfcLogical", 616, new simple_type(simple_type::logical_type));
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("LOGICALAND");
+ items.push_back("LOGICALNOTAND");
+ items.push_back("LOGICALNOTOR");
+ items.push_back("LOGICALOR");
+ items.push_back("LOGICALXOR");
+ IFC4X3_ADD1_IfcLogicalOperatorEnum_type = new enumeration_type("IfcLogicalOperatorEnum", 617, items);
+ }
+ IFC4X3_ADD1_IfcLuminousFluxMeasure_type = new type_declaration("IfcLuminousFluxMeasure", 620, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type = new type_declaration("IfcLuminousIntensityDistributionMeasure", 621, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcLuminousIntensityMeasure_type = new type_declaration("IfcLuminousIntensityMeasure", 622, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcMagneticFluxDensityMeasure_type = new type_declaration("IfcMagneticFluxDensityMeasure", 623, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcMagneticFluxMeasure_type = new type_declaration("IfcMagneticFluxMeasure", 624, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(21);
+ items.push_back("BARRIERBEACH");
+ items.push_back("BREAKWATER");
+ items.push_back("CANAL");
+ items.push_back("DRYDOCK");
+ items.push_back("FLOATINGDOCK");
+ items.push_back("HYDROLIFT");
+ items.push_back("JETTY");
+ items.push_back("LAUNCHRECOVERY");
+ items.push_back("MARINEDEFENCE");
+ items.push_back("NAVIGATIONALCHANNEL");
+ items.push_back("NOTDEFINED");
+ items.push_back("PORT");
+ items.push_back("QUAY");
+ items.push_back("REVETMENT");
+ items.push_back("SHIPLIFT");
+ items.push_back("SHIPLOCK");
+ items.push_back("SHIPYARD");
+ items.push_back("SLIPWAY");
+ items.push_back("USERDEFINED");
+ items.push_back("WATERWAY");
+ items.push_back("WATERWAYSHIPLIFT");
+ IFC4X3_ADD1_IfcMarineFacilityTypeEnum_type = new enumeration_type("IfcMarineFacilityTypeEnum", 630, items);
+ }
+ {
+ std::vector items; items.reserve(26);
+ items.push_back("ABOVEWATERLINE");
+ items.push_back("ANCHORAGE");
+ items.push_back("APPROACHCHANNEL");
+ items.push_back("BELOWWATERLINE");
+ items.push_back("BERTHINGSTRUCTURE");
+ items.push_back("CHAMBER");
+ items.push_back("CILL_LEVEL");
+ items.push_back("COPELEVEL");
+ items.push_back("CORE");
+ items.push_back("CREST");
+ items.push_back("GATEHEAD");
+ items.push_back("GUDINGSTRUCTURE");
+ items.push_back("HIGHWATERLINE");
+ items.push_back("LANDFIELD");
+ items.push_back("LEEWARDSIDE");
+ items.push_back("LOWWATERLINE");
+ items.push_back("MANUFACTURING");
+ items.push_back("NAVIGATIONALAREA");
+ items.push_back("NOTDEFINED");
+ items.push_back("PROTECTION");
+ items.push_back("SHIPTRANSFER");
+ items.push_back("STORAGEAREA");
+ items.push_back("USERDEFINED");
+ items.push_back("VEHICLESERVICING");
+ items.push_back("WATERFIELD");
+ items.push_back("WEATHERSIDE");
+ IFC4X3_ADD1_IfcMarinePartTypeEnum_type = new enumeration_type("IfcMarinePartTypeEnum", 632, items);
+ }
+ IFC4X3_ADD1_IfcMassDensityMeasure_type = new type_declaration("IfcMassDensityMeasure", 633, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcMassFlowRateMeasure_type = new type_declaration("IfcMassFlowRateMeasure", 634, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcMassMeasure_type = new type_declaration("IfcMassMeasure", 635, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcMassPerLengthMeasure_type = new type_declaration("IfcMassPerLengthMeasure", 636, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(17);
+ items.push_back("ANCHORBOLT");
+ items.push_back("BOLT");
+ items.push_back("CHAIN");
+ items.push_back("COUPLER");
+ items.push_back("DOWEL");
+ items.push_back("NAIL");
+ items.push_back("NAILPLATE");
+ items.push_back("NOTDEFINED");
+ items.push_back("RAILFASTENING");
+ items.push_back("RAILJOINT");
+ items.push_back("RIVET");
+ items.push_back("ROPE");
+ items.push_back("SCREW");
+ items.push_back("SHEARCONNECTOR");
+ items.push_back("STAPLE");
+ items.push_back("STUDSHEARCONNECTOR");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcMechanicalFastenerTypeEnum_type = new enumeration_type("IfcMechanicalFastenerTypeEnum", 661, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("AIRSTATION");
+ items.push_back("FEEDAIRUNIT");
+ items.push_back("NOTDEFINED");
+ items.push_back("OXYGENGENERATOR");
+ items.push_back("OXYGENPLANT");
+ items.push_back("USERDEFINED");
+ items.push_back("VACUUMSTATION");
+ IFC4X3_ADD1_IfcMedicalDeviceTypeEnum_type = new enumeration_type("IfcMedicalDeviceTypeEnum", 664, items);
+ }
+ {
+ std::vector items; items.reserve(21);
+ items.push_back("ARCH_SEGMENT");
+ items.push_back("BRACE");
+ items.push_back("CHORD");
+ items.push_back("COLLAR");
+ items.push_back("MEMBER");
+ items.push_back("MULLION");
+ items.push_back("NOTDEFINED");
+ items.push_back("PLATE");
+ items.push_back("POST");
+ items.push_back("PURLIN");
+ items.push_back("RAFTER");
+ items.push_back("STAY_CABLE");
+ items.push_back("STIFFENING_RIB");
+ items.push_back("STRINGER");
+ items.push_back("STRUCTURALCABLE");
+ items.push_back("STRUT");
+ items.push_back("STUD");
+ items.push_back("SUSPENDER");
+ items.push_back("SUSPENSION_CABLE");
+ items.push_back("TIEBAR");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcMemberTypeEnum_type = new enumeration_type("IfcMemberTypeEnum", 667, items);
+ }
+ {
+ std::vector items; items.reserve(15);
+ items.push_back("ACCESSPOINT");
+ items.push_back("BASEBANDUNIT");
+ items.push_back("BASETRANSCEIVERSTATION");
+ items.push_back("E_UTRAN_NODE_B");
+ items.push_back("GATEWAY_GPRS_SUPPORT_NODE");
+ items.push_back("MASTERUNIT");
+ items.push_back("MOBILESWITCHINGCENTER");
+ items.push_back("MSCSERVER");
+ items.push_back("NOTDEFINED");
+ items.push_back("PACKETCONTROLUNIT");
+ items.push_back("REMOTERADIOUNIT");
+ items.push_back("REMOTEUNIT");
+ items.push_back("SERVICE_GPRS_SUPPORT_NODE");
+ items.push_back("SUBSCRIBERSERVER");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcMobileTelecommunicationsApplianceTypeEnum_type = new enumeration_type("IfcMobileTelecommunicationsApplianceTypeEnum", 673, items);
+ }
+ IFC4X3_ADD1_IfcModulusOfElasticityMeasure_type = new type_declaration("IfcModulusOfElasticityMeasure", 674, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfLinearSubgradeReactionMeasure", 675, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfRotationalSubgradeReactionMeasure", 676, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(2);
+ items.push_back(IFC4X3_ADD1_IfcBoolean_type);
+ items.push_back(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type);
+ IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionSelect_type = new select_type("IfcModulusOfRotationalSubgradeReactionSelect", 677, items);
+ }
+ IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type = new type_declaration("IfcModulusOfSubgradeReactionMeasure", 678, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(2);
+ items.push_back(IFC4X3_ADD1_IfcBoolean_type);
+ items.push_back(IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type);
+ IFC4X3_ADD1_IfcModulusOfSubgradeReactionSelect_type = new select_type("IfcModulusOfSubgradeReactionSelect", 679, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back(IFC4X3_ADD1_IfcBoolean_type);
+ items.push_back(IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type);
+ IFC4X3_ADD1_IfcModulusOfTranslationalSubgradeReactionSelect_type = new select_type("IfcModulusOfTranslationalSubgradeReactionSelect", 680, items);
+ }
+ IFC4X3_ADD1_IfcMoistureDiffusivityMeasure_type = new type_declaration("IfcMoistureDiffusivityMeasure", 681, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcMolecularWeightMeasure_type = new type_declaration("IfcMolecularWeightMeasure", 682, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcMomentOfInertiaMeasure_type = new type_declaration("IfcMomentOfInertiaMeasure", 683, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcMonetaryMeasure_type = new type_declaration("IfcMonetaryMeasure", 684, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcMonthInYearNumber_type = new type_declaration("IfcMonthInYearNumber", 686, new simple_type(simple_type::integer_type));
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("BOLLARD");
+ items.push_back("LINETENSIONER");
+ items.push_back("MAGNETICDEVICE");
+ items.push_back("MOORINGHOOKS");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ items.push_back("VACUUMDEVICE");
+ IFC4X3_ADD1_IfcMooringDeviceTypeEnum_type = new enumeration_type("IfcMooringDeviceTypeEnum", 689, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("BELTDRIVE");
+ items.push_back("COUPLING");
+ items.push_back("DIRECTDRIVE");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcMotorConnectionTypeEnum_type = new enumeration_type("IfcMotorConnectionTypeEnum", 692, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("BEACON");
+ items.push_back("BUOY");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcNavigationElementTypeEnum_type = new enumeration_type("IfcNavigationElementTypeEnum", 696, items);
+ }
+ IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type = new type_declaration("IfcNonNegativeLengthMeasure", 697, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type));
+ IFC4X3_ADD1_IfcNumericMeasure_type = new type_declaration("IfcNumericMeasure", 699, new simple_type(simple_type::number_type));
+ {
+ std::vector items; items.reserve(13);
+ items.push_back("CODECOMPLIANCE");
+ items.push_back("CODEWAIVER");
+ items.push_back("DESIGNINTENT");
+ items.push_back("EXTERNAL");
+ items.push_back("HEALTHANDSAFETY");
+ items.push_back("MERGECONFLICT");
+ items.push_back("MODELVIEW");
+ items.push_back("NOTDEFINED");
+ items.push_back("PARAMETER");
+ items.push_back("REQUIREMENT");
+ items.push_back("SPECIFICATION");
+ items.push_back("TRIGGERCONDITION");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcObjectiveEnum_type = new enumeration_type("IfcObjectiveEnum", 703, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("ASSIGNEE");
+ items.push_back("ASSIGNOR");
+ items.push_back("LESSEE");
+ items.push_back("LESSOR");
+ items.push_back("LETTINGAGENT");
+ items.push_back("NOTDEFINED");
+ items.push_back("OWNER");
+ items.push_back("TENANT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcOccupantTypeEnum_type = new enumeration_type("IfcOccupantTypeEnum", 707, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("NOTDEFINED");
+ items.push_back("OPENING");
+ items.push_back("RECESS");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcOpeningElementTypeEnum_type = new enumeration_type("IfcOpeningElementTypeEnum", 714, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("AUDIOVISUALOUTLET");
+ items.push_back("COMMUNICATIONSOUTLET");
+ items.push_back("DATAOUTLET");
+ items.push_back("NOTDEFINED");
+ items.push_back("POWEROUTLET");
+ items.push_back("TELEPHONEOUTLET");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcOutletTypeEnum_type = new enumeration_type("IfcOutletTypeEnum", 722, items);
+ }
+ IFC4X3_ADD1_IfcPHMeasure_type = new type_declaration("IfcPHMeasure", 739, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcParameterValue_type = new type_declaration("IfcParameterValue", 725, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("FLEXIBLE");
+ items.push_back("NOTDEFINED");
+ items.push_back("RIGID");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcPavementTypeEnum_type = new enumeration_type("IfcPavementTypeEnum", 729, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcPerformanceHistoryTypeEnum_type = new enumeration_type("IfcPerformanceHistoryTypeEnum", 732, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("GRILL");
+ items.push_back("LOUVER");
+ items.push_back("NOTDEFINED");
+ items.push_back("SCREEN");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcPermeableCoveringOperationEnum_type = new enumeration_type("IfcPermeableCoveringOperationEnum", 733, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("ACCESS");
+ items.push_back("BUILDING");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ items.push_back("WORK");
+ IFC4X3_ADD1_IfcPermitTypeEnum_type = new enumeration_type("IfcPermitTypeEnum", 736, items);
+ }
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("NOTDEFINED");
+ items.push_back("PHYSICAL");
+ items.push_back("VIRTUAL");
+ IFC4X3_ADD1_IfcPhysicalOrVirtualEnum_type = new enumeration_type("IfcPhysicalOrVirtualEnum", 741, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("CAST_IN_PLACE");
+ items.push_back("COMPOSITE");
+ items.push_back("NOTDEFINED");
+ items.push_back("PRECAST_CONCRETE");
+ items.push_back("PREFAB_STEEL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcPileConstructionEnum_type = new enumeration_type("IfcPileConstructionEnum", 745, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("BORED");
+ items.push_back("COHESION");
+ items.push_back("DRIVEN");
+ items.push_back("FRICTION");
+ items.push_back("JETGROUTING");
+ items.push_back("NOTDEFINED");
+ items.push_back("SUPPORT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcPileTypeEnum_type = new enumeration_type("IfcPileTypeEnum", 747, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("BEND");
+ items.push_back("CONNECTOR");
+ items.push_back("ENTRY");
+ items.push_back("EXIT");
+ items.push_back("JUNCTION");
+ items.push_back("NOTDEFINED");
+ items.push_back("OBSTRUCTION");
+ items.push_back("TRANSITION");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcPipeFittingTypeEnum_type = new enumeration_type("IfcPipeFittingTypeEnum", 750, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("CULVERT");
+ items.push_back("FLEXIBLESEGMENT");
+ items.push_back("GUTTER");
+ items.push_back("NOTDEFINED");
+ items.push_back("RIGIDSEGMENT");
+ items.push_back("SPOOL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcPipeSegmentTypeEnum_type = new enumeration_type("IfcPipeSegmentTypeEnum", 753, items);
+ }
+ IFC4X3_ADD1_IfcPlanarForceMeasure_type = new type_declaration("IfcPlanarForceMeasure", 758, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcPlaneAngleMeasure_type = new type_declaration("IfcPlaneAngleMeasure", 760, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("BASE_PLATE");
+ items.push_back("COVER_PLATE");
+ items.push_back("CURTAIN_PANEL");
+ items.push_back("FLANGE_PLATE");
+ items.push_back("GUSSET_PLATE");
+ items.push_back("NOTDEFINED");
+ items.push_back("SHEET");
+ items.push_back("SPLICE_PLATE");
+ items.push_back("STIFFENER_PLATE");
+ items.push_back("USERDEFINED");
+ items.push_back("WEB_PLATE");
+ IFC4X3_ADD1_IfcPlateTypeEnum_type = new enumeration_type("IfcPlateTypeEnum", 763, items);
+ }
+ IFC4X3_ADD1_IfcPositiveInteger_type = new type_declaration("IfcPositiveInteger", 776, new named_type(IFC4X3_ADD1_IfcInteger_type));
+ IFC4X3_ADD1_IfcPositiveLengthMeasure_type = new type_declaration("IfcPositiveLengthMeasure", 777, new named_type(IFC4X3_ADD1_IfcLengthMeasure_type));
+ IFC4X3_ADD1_IfcPositivePlaneAngleMeasure_type = new type_declaration("IfcPositivePlaneAngleMeasure", 778, new named_type(IFC4X3_ADD1_IfcPlaneAngleMeasure_type));
+ IFC4X3_ADD1_IfcPowerMeasure_type = new type_declaration("IfcPowerMeasure", 781, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("CURVE3D");
+ items.push_back("PCURVE_S1");
+ items.push_back("PCURVE_S2");
+ IFC4X3_ADD1_IfcPreferredSurfaceCurveRepresentation_type = new enumeration_type("IfcPreferredSurfaceCurveRepresentation", 788, items);
+ }
+ IFC4X3_ADD1_IfcPresentableText_type = new type_declaration("IfcPresentableText", 789, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcPressureMeasure_type = new type_declaration("IfcPressureMeasure", 794, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("ADVICE_CAUTION");
+ items.push_back("ADVICE_NOTE");
+ items.push_back("ADVICE_WARNING");
+ items.push_back("CALIBRATION");
+ items.push_back("DIAGNOSTIC");
+ items.push_back("NOTDEFINED");
+ items.push_back("SHUTDOWN");
+ items.push_back("STARTUP");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcProcedureTypeEnum_type = new enumeration_type("IfcProcedureTypeEnum", 797, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("AREA");
+ items.push_back("CURVE");
+ IFC4X3_ADD1_IfcProfileTypeEnum_type = new enumeration_type("IfcProfileTypeEnum", 807, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("CHANGEORDER");
+ items.push_back("MAINTENANCEWORKORDER");
+ items.push_back("MOVEORDER");
+ items.push_back("NOTDEFINED");
+ items.push_back("PURCHASEORDER");
+ items.push_back("USERDEFINED");
+ items.push_back("WORKORDER");
+ IFC4X3_ADD1_IfcProjectOrderTypeEnum_type = new enumeration_type("IfcProjectOrderTypeEnum", 815, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("PROJECTED_LENGTH");
+ items.push_back("TRUE_LENGTH");
+ IFC4X3_ADD1_IfcProjectedOrTrueLengthEnum_type = new enumeration_type("IfcProjectedOrTrueLengthEnum", 810, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("BLISTER");
+ items.push_back("DEVIATOR");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcProjectionElementTypeEnum_type = new enumeration_type("IfcProjectionElementTypeEnum", 812, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("NOTDEFINED");
+ items.push_back("PSET_MATERIALDRIVEN");
+ items.push_back("PSET_OCCURRENCEDRIVEN");
+ items.push_back("PSET_PERFORMANCEDRIVEN");
+ items.push_back("PSET_PROFILEDRIVEN");
+ items.push_back("PSET_TYPEDRIVENONLY");
+ items.push_back("PSET_TYPEDRIVENOVERRIDE");
+ items.push_back("QTO_OCCURRENCEDRIVEN");
+ items.push_back("QTO_TYPEDRIVENONLY");
+ items.push_back("QTO_TYPEDRIVENOVERRIDE");
+ IFC4X3_ADD1_IfcPropertySetTemplateTypeEnum_type = new enumeration_type("IfcPropertySetTemplateTypeEnum", 830, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("ELECTROMAGNETIC");
+ items.push_back("ELECTRONIC");
+ items.push_back("NOTDEFINED");
+ items.push_back("RESIDUALCURRENT");
+ items.push_back("THERMAL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcProtectiveDeviceTrippingUnitTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTrippingUnitTypeEnum", 838, items);
+ }
+ {
+ std::vector items; items.reserve(12);
+ items.push_back("ANTI_ARCING_DEVICE");
+ items.push_back("CIRCUITBREAKER");
+ items.push_back("EARTHINGSWITCH");
+ items.push_back("EARTHLEAKAGECIRCUITBREAKER");
+ items.push_back("FUSEDISCONNECTOR");
+ items.push_back("NOTDEFINED");
+ items.push_back("RESIDUALCURRENTCIRCUITBREAKER");
+ items.push_back("RESIDUALCURRENTSWITCH");
+ items.push_back("SPARKGAP");
+ items.push_back("USERDEFINED");
+ items.push_back("VARISTOR");
+ items.push_back("VOLTAGELIMITER");
+ IFC4X3_ADD1_IfcProtectiveDeviceTypeEnum_type = new enumeration_type("IfcProtectiveDeviceTypeEnum", 840, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("CIRCULATOR");
+ items.push_back("ENDSUCTION");
+ items.push_back("NOTDEFINED");
+ items.push_back("SPLITCASE");
+ items.push_back("SUBMERSIBLEPUMP");
+ items.push_back("SUMPPUMP");
+ items.push_back("USERDEFINED");
+ items.push_back("VERTICALINLINE");
+ items.push_back("VERTICALTURBINE");
+ IFC4X3_ADD1_IfcPumpTypeEnum_type = new enumeration_type("IfcPumpTypeEnum", 843, items);
+ }
+ IFC4X3_ADD1_IfcRadioActivityMeasure_type = new type_declaration("IfcRadioActivityMeasure", 852, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("BLADE");
+ items.push_back("CHECKRAIL");
+ items.push_back("GUARDRAIL");
+ items.push_back("NOTDEFINED");
+ items.push_back("RACKRAIL");
+ items.push_back("RAIL");
+ items.push_back("STOCKRAIL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcRailTypeEnum_type = new enumeration_type("IfcRailTypeEnum", 858, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("BALUSTRADE");
+ items.push_back("FENCE");
+ items.push_back("GUARDRAIL");
+ items.push_back("HANDRAIL");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcRailingTypeEnum_type = new enumeration_type("IfcRailingTypeEnum", 856, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("DILATATIONSUPERSTRUCTURE");
+ items.push_back("LINESIDESTRUCTURE");
+ items.push_back("LINESIDESTRUCTUREPART");
+ items.push_back("NOTDEFINED");
+ items.push_back("PLAINTRACKSUPERSTRUCTURE");
+ items.push_back("SUPERSTRUCTURE");
+ items.push_back("TRACKSTRUCTURE");
+ items.push_back("TRACKSTRUCTUREPART");
+ items.push_back("TURNOUTSUPERSTRUCTURE");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcRailwayPartTypeEnum_type = new enumeration_type("IfcRailwayPartTypeEnum", 861, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcRailwayTypeEnum_type = new enumeration_type("IfcRailwayTypeEnum", 862, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("NOTDEFINED");
+ items.push_back("SPIRAL");
+ items.push_back("STRAIGHT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcRampFlightTypeEnum_type = new enumeration_type("IfcRampFlightTypeEnum", 866, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("HALF_TURN_RAMP");
+ items.push_back("NOTDEFINED");
+ items.push_back("QUARTER_TURN_RAMP");
+ items.push_back("SPIRAL_RAMP");
+ items.push_back("STRAIGHT_RUN_RAMP");
+ items.push_back("TWO_QUARTER_TURN_RAMP");
+ items.push_back("TWO_STRAIGHT_RUN_RAMP");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcRampTypeEnum_type = new enumeration_type("IfcRampTypeEnum", 868, items);
+ }
+ IFC4X3_ADD1_IfcRatioMeasure_type = new type_declaration("IfcRatioMeasure", 869, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcReal_type = new type_declaration("IfcReal", 872, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("BY_DAY_COUNT");
+ items.push_back("BY_WEEKDAY_COUNT");
+ items.push_back("DAILY");
+ items.push_back("MONTHLY_BY_DAY_OF_MONTH");
+ items.push_back("MONTHLY_BY_POSITION");
+ items.push_back("WEEKLY");
+ items.push_back("YEARLY_BY_DAY_OF_MONTH");
+ items.push_back("YEARLY_BY_POSITION");
+ IFC4X3_ADD1_IfcRecurrenceTypeEnum_type = new enumeration_type("IfcRecurrenceTypeEnum", 878, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("BOUNDARY");
+ items.push_back("INTERSECTION");
+ items.push_back("KILOPOINT");
+ items.push_back("LANDMARK");
+ items.push_back("MILEPOINT");
+ items.push_back("NOTDEFINED");
+ items.push_back("POSITION");
+ items.push_back("REFERENCEMARKER");
+ items.push_back("STATION");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcReferentTypeEnum_type = new enumeration_type("IfcReferentTypeEnum", 881, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("BLINN");
+ items.push_back("FLAT");
+ items.push_back("GLASS");
+ items.push_back("MATT");
+ items.push_back("METAL");
+ items.push_back("MIRROR");
+ items.push_back("NOTDEFINED");
+ items.push_back("PHONG");
+ items.push_back("PHYSICAL");
+ items.push_back("PLASTIC");
+ items.push_back("STRAUSS");
+ IFC4X3_ADD1_IfcReflectanceMethodEnum_type = new enumeration_type("IfcReflectanceMethodEnum", 882, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("DYNAMICALLYCOMPACTED");
+ items.push_back("GROUTED");
+ items.push_back("NOTDEFINED");
+ items.push_back("REPLACED");
+ items.push_back("ROLLERCOMPACTED");
+ items.push_back("SURCHARGEPRELOADED");
+ items.push_back("USERDEFINED");
+ items.push_back("VERTICALLYDRAINED");
+ IFC4X3_ADD1_IfcReinforcedSoilTypeEnum_type = new enumeration_type("IfcReinforcedSoilTypeEnum", 885, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("ANCHORING");
+ items.push_back("EDGE");
+ items.push_back("LIGATURE");
+ items.push_back("MAIN");
+ items.push_back("NOTDEFINED");
+ items.push_back("PUNCHING");
+ items.push_back("RING");
+ items.push_back("SHEAR");
+ items.push_back("STUD");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcReinforcingBarRoleEnum_type = new enumeration_type("IfcReinforcingBarRoleEnum", 889, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("PLAIN");
+ items.push_back("TEXTURED");
+ IFC4X3_ADD1_IfcReinforcingBarSurfaceEnum_type = new enumeration_type("IfcReinforcingBarSurfaceEnum", 890, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("ANCHORING");
+ items.push_back("EDGE");
+ items.push_back("LIGATURE");
+ items.push_back("MAIN");
+ items.push_back("NOTDEFINED");
+ items.push_back("PUNCHING");
+ items.push_back("RING");
+ items.push_back("SHEAR");
+ items.push_back("SPACEBAR");
+ items.push_back("STUD");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcReinforcingBarTypeEnum_type = new enumeration_type("IfcReinforcingBarTypeEnum", 892, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcReinforcingMeshTypeEnum_type = new enumeration_type("IfcReinforcingMeshTypeEnum", 897, items);
+ }
+ {
+ std::vector items; items.reserve(26);
+ items.push_back("BICYCLECROSSING");
+ items.push_back("BUS_STOP");
+ items.push_back("CARRIAGEWAY");
+ items.push_back("CENTRALISLAND");
+ items.push_back("CENTRALRESERVE");
+ items.push_back("HARDSHOULDER");
+ items.push_back("INTERSECTION");
+ items.push_back("LAYBY");
+ items.push_back("NOTDEFINED");
+ items.push_back("PARKINGBAY");
+ items.push_back("PASSINGBAY");
+ items.push_back("PEDESTRIAN_CROSSING");
+ items.push_back("RAILWAYCROSSING");
+ items.push_back("REFUGEISLAND");
+ items.push_back("ROADSEGMENT");
+ items.push_back("ROADSIDE");
+ items.push_back("ROADSIDEPART");
+ items.push_back("ROADWAYPLATEAU");
+ items.push_back("ROUNDABOUT");
+ items.push_back("SHOULDER");
+ items.push_back("SIDEWALK");
+ items.push_back("SOFTSHOULDER");
+ items.push_back("TOLLPLAZA");
+ items.push_back("TRAFFICISLAND");
+ items.push_back("TRAFFICLANE");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcRoadPartTypeEnum_type = new enumeration_type("IfcRoadPartTypeEnum", 968, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcRoadTypeEnum_type = new enumeration_type("IfcRoadTypeEnum", 969, items);
+ }
+ {
+ std::vector items; items.reserve(23);
+ items.push_back("ARCHITECT");
+ items.push_back("BUILDINGOPERATOR");
+ items.push_back("BUILDINGOWNER");
+ items.push_back("CIVILENGINEER");
+ items.push_back("CLIENT");
+ items.push_back("COMMISSIONINGENGINEER");
+ items.push_back("CONSTRUCTIONMANAGER");
+ items.push_back("CONSULTANT");
+ items.push_back("CONTRACTOR");
+ items.push_back("COSTENGINEER");
+ items.push_back("ELECTRICALENGINEER");
+ items.push_back("ENGINEER");
+ items.push_back("FACILITIESMANAGER");
+ items.push_back("FIELDCONSTRUCTIONMANAGER");
+ items.push_back("MANUFACTURER");
+ items.push_back("MECHANICALENGINEER");
+ items.push_back("OWNER");
+ items.push_back("PROJECTMANAGER");
+ items.push_back("RESELLER");
+ items.push_back("STRUCTURALENGINEER");
+ items.push_back("SUBCONTRACTOR");
+ items.push_back("SUPPLIER");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcRoleEnum_type = new enumeration_type("IfcRoleEnum", 970, items);
+ }
+ {
+ std::vector items; items.reserve(15);
+ items.push_back("BARREL_ROOF");
+ items.push_back("BUTTERFLY_ROOF");
+ items.push_back("DOME_ROOF");
+ items.push_back("FLAT_ROOF");
+ items.push_back("FREEFORM");
+ items.push_back("GABLE_ROOF");
+ items.push_back("GAMBREL_ROOF");
+ items.push_back("HIPPED_GABLE_ROOF");
+ items.push_back("HIP_ROOF");
+ items.push_back("MANSARD_ROOF");
+ items.push_back("NOTDEFINED");
+ items.push_back("PAVILION_ROOF");
+ items.push_back("RAINBOW_ROOF");
+ items.push_back("SHED_ROOF");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcRoofTypeEnum_type = new enumeration_type("IfcRoofTypeEnum", 973, items);
+ }
+ IFC4X3_ADD1_IfcRotationalFrequencyMeasure_type = new type_declaration("IfcRotationalFrequencyMeasure", 975, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcRotationalMassMeasure_type = new type_declaration("IfcRotationalMassMeasure", 976, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type = new type_declaration("IfcRotationalStiffnessMeasure", 977, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(2);
+ items.push_back(IFC4X3_ADD1_IfcBoolean_type);
+ items.push_back(IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type);
+ IFC4X3_ADD1_IfcRotationalStiffnessSelect_type = new select_type("IfcRotationalStiffnessSelect", 978, items);
+ }
+ {
+ std::vector items; items.reserve(16);
+ items.push_back("ATTO");
+ items.push_back("CENTI");
+ items.push_back("DECA");
+ items.push_back("DECI");
+ items.push_back("EXA");
+ items.push_back("FEMTO");
+ items.push_back("GIGA");
+ items.push_back("HECTO");
+ items.push_back("KILO");
+ items.push_back("MEGA");
+ items.push_back("MICRO");
+ items.push_back("MILLI");
+ items.push_back("NANO");
+ items.push_back("PETA");
+ items.push_back("PICO");
+ items.push_back("TERA");
+ IFC4X3_ADD1_IfcSIPrefix_type = new enumeration_type("IfcSIPrefix", 1023, items);
+ }
+ {
+ std::vector items; items.reserve(30);
+ items.push_back("AMPERE");
+ items.push_back("BECQUEREL");
+ items.push_back("CANDELA");
+ items.push_back("COULOMB");
+ items.push_back("CUBIC_METRE");
+ items.push_back("DEGREE_CELSIUS");
+ items.push_back("FARAD");
+ items.push_back("GRAM");
+ items.push_back("GRAY");
+ items.push_back("HENRY");
+ items.push_back("HERTZ");
+ items.push_back("JOULE");
+ items.push_back("KELVIN");
+ items.push_back("LUMEN");
+ items.push_back("LUX");
+ items.push_back("METRE");
+ items.push_back("MOLE");
+ items.push_back("NEWTON");
+ items.push_back("OHM");
+ items.push_back("PASCAL");
+ items.push_back("RADIAN");
+ items.push_back("SECOND");
+ items.push_back("SIEMENS");
+ items.push_back("SIEVERT");
+ items.push_back("SQUARE_METRE");
+ items.push_back("STERADIAN");
+ items.push_back("TESLA");
+ items.push_back("VOLT");
+ items.push_back("WATT");
+ items.push_back("WEBER");
+ IFC4X3_ADD1_IfcSIUnitName_type = new enumeration_type("IfcSIUnitName", 1026, items);
+ }
+ {
+ std::vector items; items.reserve(12);
+ items.push_back("BATH");
+ items.push_back("BIDET");
+ items.push_back("CISTERN");
+ items.push_back("NOTDEFINED");
+ items.push_back("SANITARYFOUNTAIN");
+ items.push_back("SHOWER");
+ items.push_back("SINK");
+ items.push_back("TOILETPAN");
+ items.push_back("URINAL");
+ items.push_back("USERDEFINED");
+ items.push_back("WASHHANDBASIN");
+ items.push_back("WCSEAT");
+ IFC4X3_ADD1_IfcSanitaryTerminalTypeEnum_type = new enumeration_type("IfcSanitaryTerminalTypeEnum", 982, items);
+ }
+ IFC4X3_ADD1_IfcSectionModulusMeasure_type = new type_declaration("IfcSectionModulusMeasure", 991, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(2);
+ items.push_back("TAPERED");
+ items.push_back("UNIFORM");
+ IFC4X3_ADD1_IfcSectionTypeEnum_type = new enumeration_type("IfcSectionTypeEnum", 994, items);
+ }
+ IFC4X3_ADD1_IfcSectionalAreaIntegralMeasure_type = new type_declaration("IfcSectionalAreaIntegralMeasure", 986, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(34);
+ items.push_back("CO2SENSOR");
+ items.push_back("CONDUCTANCESENSOR");
+ items.push_back("CONTACTSENSOR");
+ items.push_back("COSENSOR");
+ items.push_back("EARTHQUAKESENSOR");
+ items.push_back("FIRESENSOR");
+ items.push_back("FLOWSENSOR");
+ items.push_back("FOREIGNOBJECTDETECTIONSENSOR");
+ items.push_back("FROSTSENSOR");
+ items.push_back("GASSENSOR");
+ items.push_back("HEATSENSOR");
+ items.push_back("HUMIDITYSENSOR");
+ items.push_back("IDENTIFIERSENSOR");
+ items.push_back("IONCONCENTRATIONSENSOR");
+ items.push_back("LEVELSENSOR");
+ items.push_back("LIGHTSENSOR");
+ items.push_back("MOISTURESENSOR");
+ items.push_back("MOVEMENTSENSOR");
+ items.push_back("NOTDEFINED");
+ items.push_back("OBSTACLESENSOR");
+ items.push_back("PHSENSOR");
+ items.push_back("PRESSURESENSOR");
+ items.push_back("RADIATIONSENSOR");
+ items.push_back("RADIOACTIVITYSENSOR");
+ items.push_back("RAINSENSOR");
+ items.push_back("SMOKESENSOR");
+ items.push_back("SNOWDEPTHSENSOR");
+ items.push_back("SOUNDSENSOR");
+ items.push_back("TEMPERATURESENSOR");
+ items.push_back("TRAINSENSOR");
+ items.push_back("TURNOUTCLOSURESENSOR");
+ items.push_back("USERDEFINED");
+ items.push_back("WHEELSENSOR");
+ items.push_back("WINDSENSOR");
+ IFC4X3_ADD1_IfcSensorTypeEnum_type = new enumeration_type("IfcSensorTypeEnum", 1000, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("FINISH_FINISH");
+ items.push_back("FINISH_START");
+ items.push_back("NOTDEFINED");
+ items.push_back("START_FINISH");
+ items.push_back("START_START");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcSequenceEnum_type = new enumeration_type("IfcSequenceEnum", 1001, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("AWNING");
+ items.push_back("JALOUSIE");
+ items.push_back("NOTDEFINED");
+ items.push_back("SHUTTER");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcShadingDeviceTypeEnum_type = new enumeration_type("IfcShadingDeviceTypeEnum", 1005, items);
+ }
+ IFC4X3_ADD1_IfcShearModulusMeasure_type = new type_declaration("IfcShearModulusMeasure", 1009, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("MARKER");
+ items.push_back("MIRROR");
+ items.push_back("NOTDEFINED");
+ items.push_back("PICTORAL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcSignTypeEnum_type = new enumeration_type("IfcSignTypeEnum", 1017, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("AUDIO");
+ items.push_back("MIXED");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ items.push_back("VISUAL");
+ IFC4X3_ADD1_IfcSignalTypeEnum_type = new enumeration_type("IfcSignalTypeEnum", 1015, items);
+ }
+ {
+ std::vector items; items.reserve(13);
+ items.push_back("P_BOUNDEDVALUE");
+ items.push_back("P_ENUMERATEDVALUE");
+ items.push_back("P_LISTVALUE");
+ items.push_back("P_REFERENCEVALUE");
+ items.push_back("P_SINGLEVALUE");
+ items.push_back("P_TABLEVALUE");
+ items.push_back("Q_AREA");
+ items.push_back("Q_COUNT");
+ items.push_back("Q_LENGTH");
+ items.push_back("Q_NUMBER");
+ items.push_back("Q_TIME");
+ items.push_back("Q_VOLUME");
+ items.push_back("Q_WEIGHT");
+ IFC4X3_ADD1_IfcSimplePropertyTemplateTypeEnum_type = new enumeration_type("IfcSimplePropertyTemplateTypeEnum", 1020, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("APPROACH_SLAB");
+ items.push_back("BASESLAB");
+ items.push_back("FLOOR");
+ items.push_back("LANDING");
+ items.push_back("NOTDEFINED");
+ items.push_back("PAVING");
+ items.push_back("ROOF");
+ items.push_back("SIDEWALK");
+ items.push_back("TRACKSLAB");
+ items.push_back("USERDEFINED");
+ items.push_back("WEARING");
+ IFC4X3_ADD1_IfcSlabTypeEnum_type = new enumeration_type("IfcSlabTypeEnum", 1030, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("NOTDEFINED");
+ items.push_back("SOLARCOLLECTOR");
+ items.push_back("SOLARPANEL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcSolarDeviceTypeEnum_type = new enumeration_type("IfcSolarDeviceTypeEnum", 1034, items);
+ }
+ IFC4X3_ADD1_IfcSolidAngleMeasure_type = new type_declaration("IfcSolidAngleMeasure", 1035, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcSoundPowerLevelMeasure_type = new type_declaration("IfcSoundPowerLevelMeasure", 1038, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcSoundPowerMeasure_type = new type_declaration("IfcSoundPowerMeasure", 1039, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcSoundPressureLevelMeasure_type = new type_declaration("IfcSoundPressureLevelMeasure", 1040, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcSoundPressureMeasure_type = new type_declaration("IfcSoundPressureMeasure", 1041, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("CONVECTOR");
+ items.push_back("NOTDEFINED");
+ items.push_back("RADIATOR");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcSpaceHeaterTypeEnum_type = new enumeration_type("IfcSpaceHeaterTypeEnum", 1046, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("BERTH");
+ items.push_back("EXTERNAL");
+ items.push_back("GFA");
+ items.push_back("INTERNAL");
+ items.push_back("NOTDEFINED");
+ items.push_back("PARKING");
+ items.push_back("SPACE");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcSpaceTypeEnum_type = new enumeration_type("IfcSpaceTypeEnum", 1048, items);
+ }
+ {
+ std::vector items; items.reserve(12);
+ items.push_back("CONSTRUCTION");
+ items.push_back("FIRESAFETY");
+ items.push_back("INTERFERENCE");
+ items.push_back("LIGHTING");
+ items.push_back("NOTDEFINED");
+ items.push_back("OCCUPANCY");
+ items.push_back("RESERVATION");
+ items.push_back("SECURITY");
+ items.push_back("THERMAL");
+ items.push_back("TRANSPORT");
+ items.push_back("USERDEFINED");
+ items.push_back("VENTILATION");
+ IFC4X3_ADD1_IfcSpatialZoneTypeEnum_type = new enumeration_type("IfcSpatialZoneTypeEnum", 1056, items);
+ }
+ IFC4X3_ADD1_IfcSpecificHeatCapacityMeasure_type = new type_declaration("IfcSpecificHeatCapacityMeasure", 1057, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcSpecularExponent_type = new type_declaration("IfcSpecularExponent", 1058, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcSpecularRoughness_type = new type_declaration("IfcSpecularRoughness", 1060, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("BIRDCAGE");
+ items.push_back("COWL");
+ items.push_back("NOTDEFINED");
+ items.push_back("RAINWATERHOPPER");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcStackTerminalTypeEnum_type = new enumeration_type("IfcStackTerminalTypeEnum", 1066, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("CURVED");
+ items.push_back("FREEFORM");
+ items.push_back("NOTDEFINED");
+ items.push_back("SPIRAL");
+ items.push_back("STRAIGHT");
+ items.push_back("USERDEFINED");
+ items.push_back("WINDER");
+ IFC4X3_ADD1_IfcStairFlightTypeEnum_type = new enumeration_type("IfcStairFlightTypeEnum", 1070, items);
+ }
+ {
+ std::vector items; items.reserve(17);
+ items.push_back("CURVED_RUN_STAIR");
+ items.push_back("DOUBLE_RETURN_STAIR");
+ items.push_back("HALF_TURN_STAIR");
+ items.push_back("HALF_WINDING_STAIR");
+ items.push_back("LADDER");
+ items.push_back("NOTDEFINED");
+ items.push_back("QUARTER_TURN_STAIR");
+ items.push_back("QUARTER_WINDING_STAIR");
+ items.push_back("SPIRAL_STAIR");
+ items.push_back("STRAIGHT_RUN_STAIR");
+ items.push_back("THREE_QUARTER_TURN_STAIR");
+ items.push_back("THREE_QUARTER_WINDING_STAIR");
+ items.push_back("TWO_CURVED_RUN_STAIR");
+ items.push_back("TWO_QUARTER_TURN_STAIR");
+ items.push_back("TWO_QUARTER_WINDING_STAIR");
+ items.push_back("TWO_STRAIGHT_RUN_STAIR");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcStairTypeEnum_type = new enumeration_type("IfcStairTypeEnum", 1072, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("LOCKED");
+ items.push_back("READONLY");
+ items.push_back("READONLYLOCKED");
+ items.push_back("READWRITE");
+ items.push_back("READWRITELOCKED");
+ IFC4X3_ADD1_IfcStateEnum_type = new enumeration_type("IfcStateEnum", 1073, items);
+ }
+ IFC4X3_ADD1_IfcStrippedOptional_type = new type_declaration("IfcStrippedOptional", 1074, new simple_type(simple_type::boolean_type));
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("CONST");
+ items.push_back("DISCRETE");
+ items.push_back("EQUIDISTANT");
+ items.push_back("LINEAR");
+ items.push_back("NOTDEFINED");
+ items.push_back("PARABOLA");
+ items.push_back("POLYGONAL");
+ items.push_back("SINUS");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcStructuralCurveActivityTypeEnum_type = new enumeration_type("IfcStructuralCurveActivityTypeEnum", 1082, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("CABLE");
+ items.push_back("COMPRESSION_MEMBER");
+ items.push_back("NOTDEFINED");
+ items.push_back("PIN_JOINED_MEMBER");
+ items.push_back("RIGID_JOINED_MEMBER");
+ items.push_back("TENSION_MEMBER");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcStructuralCurveMemberTypeEnum_type = new enumeration_type("IfcStructuralCurveMemberTypeEnum", 1085, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("BILINEAR");
+ items.push_back("CONST");
+ items.push_back("DISCRETE");
+ items.push_back("ISOCONTOUR");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcStructuralSurfaceActivityTypeEnum_type = new enumeration_type("IfcStructuralSurfaceActivityTypeEnum", 1111, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("BENDING_ELEMENT");
+ items.push_back("MEMBRANE_ELEMENT");
+ items.push_back("NOTDEFINED");
+ items.push_back("SHELL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcStructuralSurfaceMemberTypeEnum_type = new enumeration_type("IfcStructuralSurfaceMemberTypeEnum", 1114, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("NOTDEFINED");
+ items.push_back("PURCHASE");
+ items.push_back("USERDEFINED");
+ items.push_back("WORK");
+ IFC4X3_ADD1_IfcSubContractResourceTypeEnum_type = new enumeration_type("IfcSubContractResourceTypeEnum", 1122, items);
+ }
+ {
+ std::vector items; items.reserve(13);
+ items.push_back("DEFECT");
+ items.push_back("HATCHMARKING");
+ items.push_back("LINEMARKING");
+ items.push_back("MARK");
+ items.push_back("NONSKIDSURFACING");
+ items.push_back("NOTDEFINED");
+ items.push_back("PAVEMENTSURFACEMARKING");
+ items.push_back("RUMBLESTRIP");
+ items.push_back("SYMBOLMARKING");
+ items.push_back("TAG");
+ items.push_back("TRANSVERSERUMBLESTRIP");
+ items.push_back("TREATMENT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcSurfaceFeatureTypeEnum_type = new enumeration_type("IfcSurfaceFeatureTypeEnum", 1128, items);
+ }
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("BOTH");
+ items.push_back("NEGATIVE");
+ items.push_back("POSITIVE");
+ IFC4X3_ADD1_IfcSurfaceSide_type = new enumeration_type("IfcSurfaceSide", 1133, items);
+ }
+ {
+ std::vector items; items.reserve(13);
+ items.push_back("CONTACTOR");
+ items.push_back("DIMMERSWITCH");
+ items.push_back("EMERGENCYSTOP");
+ items.push_back("KEYPAD");
+ items.push_back("MOMENTARYSWITCH");
+ items.push_back("NOTDEFINED");
+ items.push_back("RELAY");
+ items.push_back("SELECTORSWITCH");
+ items.push_back("STARTER");
+ items.push_back("START_AND_STOP_EQUIPMENT");
+ items.push_back("SWITCHDISCONNECTOR");
+ items.push_back("TOGGLESWITCH");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcSwitchingDeviceTypeEnum_type = new enumeration_type("IfcSwitchingDeviceTypeEnum", 1148, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("NOTDEFINED");
+ items.push_back("PANEL");
+ items.push_back("SUBRACK");
+ items.push_back("USERDEFINED");
+ items.push_back("WORKSURFACE");
+ IFC4X3_ADD1_IfcSystemFurnitureElementTypeEnum_type = new enumeration_type("IfcSystemFurnitureElementTypeEnum", 1152, items);
+ }
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("BASIN");
+ items.push_back("BREAKPRESSURE");
+ items.push_back("EXPANSION");
+ items.push_back("FEEDANDEXPANSION");
+ items.push_back("NOTDEFINED");
+ items.push_back("OILRETENTIONTRAY");
+ items.push_back("PRESSUREVESSEL");
+ items.push_back("STORAGE");
+ items.push_back("USERDEFINED");
+ items.push_back("VESSEL");
+ IFC4X3_ADD1_IfcTankTypeEnum_type = new enumeration_type("IfcTankTypeEnum", 1158, items);
+ }
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("ELAPSEDTIME");
+ items.push_back("NOTDEFINED");
+ items.push_back("WORKTIME");
+ IFC4X3_ADD1_IfcTaskDurationEnum_type = new enumeration_type("IfcTaskDurationEnum", 1160, items);
+ }
+ {
+ std::vector items; items.reserve(23);
+ items.push_back("ADJUSTMENT");
+ items.push_back("ATTENDANCE");
+ items.push_back("CALIBRATION");
+ items.push_back("CONSTRUCTION");
+ items.push_back("DEMOLITION");
+ items.push_back("DISMANTLE");
+ items.push_back("DISPOSAL");
+ items.push_back("EMERGENCY");
+ items.push_back("INSPECTION");
+ items.push_back("INSTALLATION");
+ items.push_back("LOGISTIC");
+ items.push_back("MAINTENANCE");
+ items.push_back("MOVE");
+ items.push_back("NOTDEFINED");
+ items.push_back("OPERATION");
+ items.push_back("REMOVAL");
+ items.push_back("RENOVATION");
+ items.push_back("SAFETY");
+ items.push_back("SHUTDOWN");
+ items.push_back("STARTUP");
+ items.push_back("TESTING");
+ items.push_back("TROUBLESHOOTING");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcTaskTypeEnum_type = new enumeration_type("IfcTaskTypeEnum", 1164, items);
+ }
+ IFC4X3_ADD1_IfcTemperatureGradientMeasure_type = new type_declaration("IfcTemperatureGradientMeasure", 1166, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcTemperatureRateOfChangeMeasure_type = new type_declaration("IfcTemperatureRateOfChangeMeasure", 1167, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("COUPLER");
+ items.push_back("FIXED_END");
+ items.push_back("NOTDEFINED");
+ items.push_back("TENSIONING_END");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcTendonAnchorTypeEnum_type = new enumeration_type("IfcTendonAnchorTypeEnum", 1171, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("COUPLER");
+ items.push_back("DIABOLO");
+ items.push_back("DUCT");
+ items.push_back("GROUTING_DUCT");
+ items.push_back("NOTDEFINED");
+ items.push_back("TRUMPET");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcTendonConduitTypeEnum_type = new enumeration_type("IfcTendonConduitTypeEnum", 1174, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("BAR");
+ items.push_back("COATED");
+ items.push_back("NOTDEFINED");
+ items.push_back("STRAND");
+ items.push_back("USERDEFINED");
+ items.push_back("WIRE");
+ IFC4X3_ADD1_IfcTendonTypeEnum_type = new enumeration_type("IfcTendonTypeEnum", 1176, items);
+ }
+ IFC4X3_ADD1_IfcText_type = new type_declaration("IfcText", 1179, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcTextAlignment_type = new type_declaration("IfcTextAlignment", 1180, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcTextDecoration_type = new type_declaration("IfcTextDecoration", 1181, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcTextFontName_type = new type_declaration("IfcTextFontName", 1182, new simple_type(simple_type::string_type));
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("DOWN");
+ items.push_back("LEFT");
+ items.push_back("RIGHT");
+ items.push_back("UP");
+ IFC4X3_ADD1_IfcTextPath_type = new enumeration_type("IfcTextPath", 1186, items);
+ }
+ IFC4X3_ADD1_IfcTextTransformation_type = new type_declaration("IfcTextTransformation", 1191, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcThermalAdmittanceMeasure_type = new type_declaration("IfcThermalAdmittanceMeasure", 1199, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcThermalConductivityMeasure_type = new type_declaration("IfcThermalConductivityMeasure", 1200, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcThermalExpansionCoefficientMeasure_type = new type_declaration("IfcThermalExpansionCoefficientMeasure", 1201, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcThermalResistanceMeasure_type = new type_declaration("IfcThermalResistanceMeasure", 1202, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcThermalTransmittanceMeasure_type = new type_declaration("IfcThermalTransmittanceMeasure", 1203, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcThermodynamicTemperatureMeasure_type = new type_declaration("IfcThermodynamicTemperatureMeasure", 1204, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcTime_type = new type_declaration("IfcTime", 1206, new simple_type(simple_type::string_type));
+ IFC4X3_ADD1_IfcTimeMeasure_type = new type_declaration("IfcTimeMeasure", 1207, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(2);
+ items.push_back(IFC4X3_ADD1_IfcDuration_type);
+ items.push_back(IFC4X3_ADD1_IfcRatioMeasure_type);
+ IFC4X3_ADD1_IfcTimeOrRatioSelect_type = new select_type("IfcTimeOrRatioSelect", 1208, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("CONTINUOUS");
+ items.push_back("DISCRETE");
+ items.push_back("DISCRETEBINARY");
+ items.push_back("NOTDEFINED");
+ items.push_back("PIECEWISEBINARY");
+ items.push_back("PIECEWISECONSTANT");
+ items.push_back("PIECEWISECONTINUOUS");
+ IFC4X3_ADD1_IfcTimeSeriesDataTypeEnum_type = new enumeration_type("IfcTimeSeriesDataTypeEnum", 1211, items);
+ }
+ IFC4X3_ADD1_IfcTimeStamp_type = new type_declaration("IfcTimeStamp", 1213, new simple_type(simple_type::integer_type));
+ IFC4X3_ADD1_IfcTorqueMeasure_type = new type_declaration("IfcTorqueMeasure", 1217, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(10);
+ items.push_back("BLOCKINGDEVICE");
+ items.push_back("DERAILER");
+ items.push_back("FROG");
+ items.push_back("HALF_SET_OF_BLADES");
+ items.push_back("NOTDEFINED");
+ items.push_back("SLEEPER");
+ items.push_back("SPEEDREGULATOR");
+ items.push_back("TRACKENDOFALIGNMENT");
+ items.push_back("USERDEFINED");
+ items.push_back("VEHICLESTOP");
+ IFC4X3_ADD1_IfcTrackElementTypeEnum_type = new enumeration_type("IfcTrackElementTypeEnum", 1220, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("CHOPPER");
+ items.push_back("COMBINED");
+ items.push_back("CURRENT");
+ items.push_back("FREQUENCY");
+ items.push_back("INVERTER");
+ items.push_back("NOTDEFINED");
+ items.push_back("RECTIFIER");
+ items.push_back("USERDEFINED");
+ items.push_back("VOLTAGE");
+ IFC4X3_ADD1_IfcTransformerTypeEnum_type = new enumeration_type("IfcTransformerTypeEnum", 1223, items);
+ }
+ {
+ std::vector items; items.reserve(4);
+ items.push_back("CONTINUOUS");
+ items.push_back("CONTSAMEGRADIENT");
+ items.push_back("CONTSAMEGRADIENTSAMECURVATURE");
+ items.push_back("DISCONTINUOUS");
+ IFC4X3_ADD1_IfcTransitionCode_type = new enumeration_type("IfcTransitionCode", 1224, items);
+ }
+ {
+ std::vector items; items.reserve(2);
+ items.push_back(IFC4X3_ADD1_IfcBoolean_type);
+ items.push_back(IFC4X3_ADD1_IfcLinearStiffnessMeasure_type);
+ IFC4X3_ADD1_IfcTranslationalStiffnessSelect_type = new select_type("IfcTranslationalStiffnessSelect", 1225, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("CRANEWAY");
+ items.push_back("ELEVATOR");
+ items.push_back("ESCALATOR");
+ items.push_back("HAULINGGEAR");
+ items.push_back("LIFTINGGEAR");
+ items.push_back("MOVINGWALKWAY");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcTransportElementTypeEnum_type = new enumeration_type("IfcTransportElementTypeEnum", 1230, items);
+ }
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("CARTESIAN");
+ items.push_back("PARAMETER");
+ items.push_back("UNSPECIFIED");
+ IFC4X3_ADD1_IfcTrimmingPreference_type = new enumeration_type("IfcTrimmingPreference", 1235, items);
+ }
+ {
+ std::vector items; items.reserve(3);
+ items.push_back("FINNED");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcTubeBundleTypeEnum_type = new enumeration_type("IfcTubeBundleTypeEnum", 1240, items);
+ }
+ IFC4X3_ADD1_IfcURIReference_type = new type_declaration("IfcURIReference", 1254, new simple_type(simple_type::string_type));
+ {
+ std::vector items; items.reserve(30);
+ items.push_back("ABSORBEDDOSEUNIT");
+ items.push_back("AMOUNTOFSUBSTANCEUNIT");
+ items.push_back("AREAUNIT");
+ items.push_back("DOSEEQUIVALENTUNIT");
+ items.push_back("ELECTRICCAPACITANCEUNIT");
+ items.push_back("ELECTRICCHARGEUNIT");
+ items.push_back("ELECTRICCONDUCTANCEUNIT");
+ items.push_back("ELECTRICCURRENTUNIT");
+ items.push_back("ELECTRICRESISTANCEUNIT");
+ items.push_back("ELECTRICVOLTAGEUNIT");
+ items.push_back("ENERGYUNIT");
+ items.push_back("FORCEUNIT");
+ items.push_back("FREQUENCYUNIT");
+ items.push_back("ILLUMINANCEUNIT");
+ items.push_back("INDUCTANCEUNIT");
+ items.push_back("LENGTHUNIT");
+ items.push_back("LUMINOUSFLUXUNIT");
+ items.push_back("LUMINOUSINTENSITYUNIT");
+ items.push_back("MAGNETICFLUXDENSITYUNIT");
+ items.push_back("MAGNETICFLUXUNIT");
+ items.push_back("MASSUNIT");
+ items.push_back("PLANEANGLEUNIT");
+ items.push_back("POWERUNIT");
+ items.push_back("PRESSUREUNIT");
+ items.push_back("RADIOACTIVITYUNIT");
+ items.push_back("SOLIDANGLEUNIT");
+ items.push_back("THERMODYNAMICTEMPERATUREUNIT");
+ items.push_back("TIMEUNIT");
+ items.push_back("USERDEFINED");
+ items.push_back("VOLUMEUNIT");
+ IFC4X3_ADD1_IfcUnitEnum_type = new enumeration_type("IfcUnitEnum", 1253, items);
+ }
+ {
+ std::vector items; items.reserve(12);
+ items.push_back("ALARMPANEL");
+ items.push_back("BASESTATIONCONTROLLER");
+ items.push_back("COMBINED");
+ items.push_back("CONTROLPANEL");
+ items.push_back("GASDETECTIONPANEL");
+ items.push_back("HUMIDISTAT");
+ items.push_back("INDICATORPANEL");
+ items.push_back("MIMICPANEL");
+ items.push_back("NOTDEFINED");
+ items.push_back("THERMOSTAT");
+ items.push_back("USERDEFINED");
+ items.push_back("WEATHERSTATION");
+ IFC4X3_ADD1_IfcUnitaryControlElementTypeEnum_type = new enumeration_type("IfcUnitaryControlElementTypeEnum", 1248, items);
+ }
+ {
+ std::vector items; items.reserve(7);
+ items.push_back("AIRCONDITIONINGUNIT");
+ items.push_back("AIRHANDLER");
+ items.push_back("DEHUMIDIFIER");
+ items.push_back("NOTDEFINED");
+ items.push_back("ROOFTOPUNIT");
+ items.push_back("SPLITSYSTEM");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcUnitaryEquipmentTypeEnum_type = new enumeration_type("IfcUnitaryEquipmentTypeEnum", 1251, items);
+ }
+ {
+ std::vector items; items.reserve(23);
+ items.push_back("AIRRELEASE");
+ items.push_back("ANTIVACUUM");
+ items.push_back("CHANGEOVER");
+ items.push_back("CHECK");
+ items.push_back("COMMISSIONING");
+ items.push_back("DIVERTING");
+ items.push_back("DOUBLECHECK");
+ items.push_back("DOUBLEREGULATING");
+ items.push_back("DRAWOFFCOCK");
+ items.push_back("FAUCET");
+ items.push_back("FLUSHING");
+ items.push_back("GASCOCK");
+ items.push_back("GASTAP");
+ items.push_back("ISOLATING");
+ items.push_back("MIXING");
+ items.push_back("NOTDEFINED");
+ items.push_back("PRESSUREREDUCING");
+ items.push_back("PRESSURERELIEF");
+ items.push_back("REGULATING");
+ items.push_back("SAFETYCUTOFF");
+ items.push_back("STEAMTRAP");
+ items.push_back("STOPCOCK");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcValveTypeEnum_type = new enumeration_type("IfcValveTypeEnum", 1259, items);
+ }
+ IFC4X3_ADD1_IfcVaporPermeabilityMeasure_type = new type_declaration("IfcVaporPermeabilityMeasure", 1260, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("CARGO");
+ items.push_back("NOTDEFINED");
+ items.push_back("ROLLINGSTOCK");
+ items.push_back("USERDEFINED");
+ items.push_back("VEHICLE");
+ items.push_back("VEHICLEAIR");
+ items.push_back("VEHICLEMARINE");
+ items.push_back("VEHICLETRACKED");
+ items.push_back("VEHICLEWHEELED");
+ IFC4X3_ADD1_IfcVehicleTypeEnum_type = new enumeration_type("IfcVehicleTypeEnum", 1265, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("AXIAL_YIELD");
+ items.push_back("BENDING_YIELD");
+ items.push_back("FRICTION");
+ items.push_back("NOTDEFINED");
+ items.push_back("RUBBER");
+ items.push_back("SHEAR_YIELD");
+ items.push_back("USERDEFINED");
+ items.push_back("VISCOUS");
+ IFC4X3_ADD1_IfcVibrationDamperTypeEnum_type = new enumeration_type("IfcVibrationDamperTypeEnum", 1271, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("BASE");
+ items.push_back("COMPRESSION");
+ items.push_back("NOTDEFINED");
+ items.push_back("SPRING");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcVibrationIsolatorTypeEnum_type = new enumeration_type("IfcVibrationIsolatorTypeEnum", 1274, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("BOUNDARY");
+ items.push_back("CLEARANCE");
+ items.push_back("NOTDEFINED");
+ items.push_back("PROVISIONFORVOID");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcVirtualElementTypeEnum_type = new enumeration_type("IfcVirtualElementTypeEnum", 1276, items);
+ }
+ {
+ std::vector items; items.reserve(8);
+ items.push_back("CHAMFER");
+ items.push_back("CUTOUT");
+ items.push_back("EDGE");
+ items.push_back("HOLE");
+ items.push_back("MITER");
+ items.push_back("NOTCH");
+ items.push_back("NOTDEFINED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcVoidingFeatureTypeEnum_type = new enumeration_type("IfcVoidingFeatureTypeEnum", 1279, items);
+ }
+ IFC4X3_ADD1_IfcVolumeMeasure_type = new type_declaration("IfcVolumeMeasure", 1280, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcVolumetricFlowRateMeasure_type = new type_declaration("IfcVolumetricFlowRateMeasure", 1281, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(13);
+ items.push_back("ELEMENTEDWALL");
+ items.push_back("MOVABLE");
+ items.push_back("NOTDEFINED");
+ items.push_back("PARAPET");
+ items.push_back("PARTITIONING");
+ items.push_back("PLUMBINGWALL");
+ items.push_back("POLYGONAL");
+ items.push_back("RETAININGWALL");
+ items.push_back("SHEAR");
+ items.push_back("SOLIDWALL");
+ items.push_back("STANDARD");
+ items.push_back("USERDEFINED");
+ items.push_back("WAVEWALL");
+ IFC4X3_ADD1_IfcWallTypeEnum_type = new enumeration_type("IfcWallTypeEnum", 1285, items);
+ }
+ IFC4X3_ADD1_IfcWarpingConstantMeasure_type = new type_declaration("IfcWarpingConstantMeasure", 1286, new simple_type(simple_type::real_type));
+ IFC4X3_ADD1_IfcWarpingMomentMeasure_type = new type_declaration("IfcWarpingMomentMeasure", 1287, new simple_type(simple_type::real_type));
+ {
+ std::vector items; items.reserve(2);
+ items.push_back(IFC4X3_ADD1_IfcBoolean_type);
+ items.push_back(IFC4X3_ADD1_IfcWarpingMomentMeasure_type);
+ IFC4X3_ADD1_IfcWarpingStiffnessSelect_type = new select_type("IfcWarpingStiffnessSelect", 1288, items);
+ }
+ {
+ std::vector items; items.reserve(9);
+ items.push_back("FLOORTRAP");
+ items.push_back("FLOORWASTE");
+ items.push_back("GULLYSUMP");
+ items.push_back("GULLYTRAP");
+ items.push_back("NOTDEFINED");
+ items.push_back("ROOFDRAIN");
+ items.push_back("USERDEFINED");
+ items.push_back("WASTEDISPOSALUNIT");
+ items.push_back("WASTETRAP");
+ IFC4X3_ADD1_IfcWasteTerminalTypeEnum_type = new enumeration_type("IfcWasteTerminalTypeEnum", 1291, items);
+ }
+ IFC4X3_ADD1_IfcWellKnownTextLiteral_type = new type_declaration("IfcWellKnownTextLiteral", 1293, new simple_type(simple_type::string_type));
+ {
+ std::vector items; items.reserve(14);
+ items.push_back("BOTTOMHUNG");
+ items.push_back("FIXEDCASEMENT");
+ items.push_back("NOTDEFINED");
+ items.push_back("OTHEROPERATION");
+ items.push_back("PIVOTHORIZONTAL");
+ items.push_back("PIVOTVERTICAL");
+ items.push_back("REMOVABLECASEMENT");
+ items.push_back("SIDEHUNGLEFTHAND");
+ items.push_back("SIDEHUNGRIGHTHAND");
+ items.push_back("SLIDINGHORIZONTAL");
+ items.push_back("SLIDINGVERTICAL");
+ items.push_back("TILTANDTURNLEFTHAND");
+ items.push_back("TILTANDTURNRIGHTHAND");
+ items.push_back("TOPHUNG");
+ IFC4X3_ADD1_IfcWindowPanelOperationEnum_type = new enumeration_type("IfcWindowPanelOperationEnum", 1296, items);
+ }
+ {
+ std::vector items; items.reserve(6);
+ items.push_back("BOTTOM");
+ items.push_back("LEFT");
+ items.push_back("MIDDLE");
+ items.push_back("NOTDEFINED");
+ items.push_back("RIGHT");
+ items.push_back("TOP");
+ IFC4X3_ADD1_IfcWindowPanelPositionEnum_type = new enumeration_type("IfcWindowPanelPositionEnum", 1297, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("LIGHTDOME");
+ items.push_back("NOTDEFINED");
+ items.push_back("SKYLIGHT");
+ items.push_back("USERDEFINED");
+ items.push_back("WINDOW");
+ IFC4X3_ADD1_IfcWindowTypeEnum_type = new enumeration_type("IfcWindowTypeEnum", 1300, items);
+ }
+ {
+ std::vector items; items.reserve(11);
+ items.push_back("DOUBLE_PANEL_HORIZONTAL");
+ items.push_back("DOUBLE_PANEL_VERTICAL");
+ items.push_back("NOTDEFINED");
+ items.push_back("SINGLE_PANEL");
+ items.push_back("TRIPLE_PANEL_BOTTOM");
+ items.push_back("TRIPLE_PANEL_HORIZONTAL");
+ items.push_back("TRIPLE_PANEL_LEFT");
+ items.push_back("TRIPLE_PANEL_RIGHT");
+ items.push_back("TRIPLE_PANEL_TOP");
+ items.push_back("TRIPLE_PANEL_VERTICAL");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcWindowTypePartitioningEnum_type = new enumeration_type("IfcWindowTypePartitioningEnum", 1301, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("FIRSTSHIFT");
+ items.push_back("NOTDEFINED");
+ items.push_back("SECONDSHIFT");
+ items.push_back("THIRDSHIFT");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcWorkCalendarTypeEnum_type = new enumeration_type("IfcWorkCalendarTypeEnum", 1303, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("ACTUAL");
+ items.push_back("BASELINE");
+ items.push_back("NOTDEFINED");
+ items.push_back("PLANNED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcWorkPlanTypeEnum_type = new enumeration_type("IfcWorkPlanTypeEnum", 1306, items);
+ }
+ {
+ std::vector items; items.reserve(5);
+ items.push_back("ACTUAL");
+ items.push_back("BASELINE");
+ items.push_back("NOTDEFINED");
+ items.push_back("PLANNED");
+ items.push_back("USERDEFINED");
+ IFC4X3_ADD1_IfcWorkScheduleTypeEnum_type = new enumeration_type("IfcWorkScheduleTypeEnum", 1308, items);
+ }
+ IFC4X3_ADD1_IfcActorRole_type = new entity("IfcActorRole", false, 7, 0);
+ IFC4X3_ADD1_IfcAddress_type = new entity("IfcAddress", true, 12, 0);
+ IFC4X3_ADD1_IfcAlignmentParameterSegment_type = new entity("IfcAlignmentParameterSegment", true, 36, 0);
+ IFC4X3_ADD1_IfcAlignmentVerticalSegment_type = new entity("IfcAlignmentVerticalSegment", false, 40, IFC4X3_ADD1_IfcAlignmentParameterSegment_type);
+ IFC4X3_ADD1_IfcApplication_type = new entity("IfcApplication", false, 49, 0);
+ IFC4X3_ADD1_IfcAppliedValue_type = new entity("IfcAppliedValue", false, 50, 0);
+ IFC4X3_ADD1_IfcApproval_type = new entity("IfcApproval", false, 52, 0);
+ IFC4X3_ADD1_IfcBoundaryCondition_type = new entity("IfcBoundaryCondition", true, 92, 0);
+ IFC4X3_ADD1_IfcBoundaryEdgeCondition_type = new entity("IfcBoundaryEdgeCondition", false, 94, IFC4X3_ADD1_IfcBoundaryCondition_type);
+ IFC4X3_ADD1_IfcBoundaryFaceCondition_type = new entity("IfcBoundaryFaceCondition", false, 95, IFC4X3_ADD1_IfcBoundaryCondition_type);
+ IFC4X3_ADD1_IfcBoundaryNodeCondition_type = new entity("IfcBoundaryNodeCondition", false, 96, IFC4X3_ADD1_IfcBoundaryCondition_type);
+ IFC4X3_ADD1_IfcBoundaryNodeConditionWarping_type = new entity("IfcBoundaryNodeConditionWarping", false, 97, IFC4X3_ADD1_IfcBoundaryNodeCondition_type);
+ IFC4X3_ADD1_IfcConnectionGeometry_type = new entity("IfcConnectionGeometry", true, 206, 0);
+ IFC4X3_ADD1_IfcConnectionPointGeometry_type = new entity("IfcConnectionPointGeometry", false, 208, IFC4X3_ADD1_IfcConnectionGeometry_type);
+ IFC4X3_ADD1_IfcConnectionSurfaceGeometry_type = new entity("IfcConnectionSurfaceGeometry", false, 209, IFC4X3_ADD1_IfcConnectionGeometry_type);
+ IFC4X3_ADD1_IfcConnectionVolumeGeometry_type = new entity("IfcConnectionVolumeGeometry", false, 211, IFC4X3_ADD1_IfcConnectionGeometry_type);
+ IFC4X3_ADD1_IfcConstraint_type = new entity("IfcConstraint", true, 212, 0);
+ IFC4X3_ADD1_IfcCoordinateOperation_type = new entity("IfcCoordinateOperation", true, 243, 0);
+ IFC4X3_ADD1_IfcCoordinateReferenceSystem_type = new entity("IfcCoordinateReferenceSystem", true, 244, 0);
+ IFC4X3_ADD1_IfcCostValue_type = new entity("IfcCostValue", false, 251, IFC4X3_ADD1_IfcAppliedValue_type);
+ IFC4X3_ADD1_IfcDerivedUnit_type = new entity("IfcDerivedUnit", false, 299, 0);
+ IFC4X3_ADD1_IfcDerivedUnitElement_type = new entity("IfcDerivedUnitElement", false, 300, 0);
+ IFC4X3_ADD1_IfcDimensionalExponents_type = new entity("IfcDimensionalExponents", false, 303, 0);
+ IFC4X3_ADD1_IfcExternalInformation_type = new entity("IfcExternalInformation", true, 422, 0);
+ IFC4X3_ADD1_IfcExternalReference_type = new entity("IfcExternalReference", true, 426, 0);
+ IFC4X3_ADD1_IfcExternallyDefinedHatchStyle_type = new entity("IfcExternallyDefinedHatchStyle", false, 423, IFC4X3_ADD1_IfcExternalReference_type);
+ IFC4X3_ADD1_IfcExternallyDefinedSurfaceStyle_type = new entity("IfcExternallyDefinedSurfaceStyle", false, 424, IFC4X3_ADD1_IfcExternalReference_type);
+ IFC4X3_ADD1_IfcExternallyDefinedTextFont_type = new entity("IfcExternallyDefinedTextFont", false, 425, IFC4X3_ADD1_IfcExternalReference_type);
+ IFC4X3_ADD1_IfcGeographicCRS_type = new entity("IfcGeographicCRS", false, 500, IFC4X3_ADD1_IfcCoordinateReferenceSystem_type);
+ IFC4X3_ADD1_IfcGridAxis_type = new entity("IfcGridAxis", false, 521, 0);
+ IFC4X3_ADD1_IfcIrregularTimeSeriesValue_type = new entity("IfcIrregularTimeSeriesValue", false, 562, 0);
+ IFC4X3_ADD1_IfcLibraryInformation_type = new entity("IfcLibraryInformation", false, 585, IFC4X3_ADD1_IfcExternalInformation_type);
+ IFC4X3_ADD1_IfcLibraryReference_type = new entity("IfcLibraryReference", false, 586, IFC4X3_ADD1_IfcExternalReference_type);
+ IFC4X3_ADD1_IfcLightDistributionData_type = new entity("IfcLightDistributionData", false, 589, 0);
+ IFC4X3_ADD1_IfcLightIntensityDistribution_type = new entity("IfcLightIntensityDistribution", false, 595, 0);
+ IFC4X3_ADD1_IfcMapConversion_type = new entity("IfcMapConversion", false, 626, IFC4X3_ADD1_IfcCoordinateOperation_type);
+ IFC4X3_ADD1_IfcMapConversionScaled_type = new entity("IfcMapConversionScaled", false, 627, IFC4X3_ADD1_IfcMapConversion_type);
+ IFC4X3_ADD1_IfcMaterialClassificationRelationship_type = new entity("IfcMaterialClassificationRelationship", false, 638, 0);
+ IFC4X3_ADD1_IfcMaterialDefinition_type = new entity("IfcMaterialDefinition", true, 641, 0);
+ IFC4X3_ADD1_IfcMaterialLayer_type = new entity("IfcMaterialLayer", false, 643, IFC4X3_ADD1_IfcMaterialDefinition_type);
+ IFC4X3_ADD1_IfcMaterialLayerSet_type = new entity("IfcMaterialLayerSet", false, 644, IFC4X3_ADD1_IfcMaterialDefinition_type);
+ IFC4X3_ADD1_IfcMaterialLayerWithOffsets_type = new entity("IfcMaterialLayerWithOffsets", false, 646, IFC4X3_ADD1_IfcMaterialLayer_type);
+ IFC4X3_ADD1_IfcMaterialList_type = new entity("IfcMaterialList", false, 647, 0);
+ IFC4X3_ADD1_IfcMaterialProfile_type = new entity("IfcMaterialProfile", false, 648, IFC4X3_ADD1_IfcMaterialDefinition_type);
+ IFC4X3_ADD1_IfcMaterialProfileSet_type = new entity("IfcMaterialProfileSet", false, 649, IFC4X3_ADD1_IfcMaterialDefinition_type);
+ IFC4X3_ADD1_IfcMaterialProfileWithOffsets_type = new entity("IfcMaterialProfileWithOffsets", false, 652, IFC4X3_ADD1_IfcMaterialProfile_type);
+ IFC4X3_ADD1_IfcMaterialUsageDefinition_type = new entity("IfcMaterialUsageDefinition", true, 656, 0);
+ IFC4X3_ADD1_IfcMeasureWithUnit_type = new entity("IfcMeasureWithUnit", false, 658, 0);
+ IFC4X3_ADD1_IfcMetric_type = new entity("IfcMetric", false, 668, IFC4X3_ADD1_IfcConstraint_type);
+ IFC4X3_ADD1_IfcMonetaryUnit_type = new entity("IfcMonetaryUnit", false, 685, 0);
+ IFC4X3_ADD1_IfcNamedUnit_type = new entity("IfcNamedUnit", true, 693, 0);
+ IFC4X3_ADD1_IfcObjectPlacement_type = new entity("IfcObjectPlacement", true, 704, 0);
+ IFC4X3_ADD1_IfcObjective_type = new entity("IfcObjective", false, 702, IFC4X3_ADD1_IfcConstraint_type);
+ IFC4X3_ADD1_IfcOrganization_type = new entity("IfcOrganization", false, 716, 0);
+ IFC4X3_ADD1_IfcOwnerHistory_type = new entity("IfcOwnerHistory", false, 723, 0);
+ IFC4X3_ADD1_IfcPerson_type = new entity("IfcPerson", false, 737, 0);
+ IFC4X3_ADD1_IfcPersonAndOrganization_type = new entity("IfcPersonAndOrganization", false, 738, 0);
+ IFC4X3_ADD1_IfcPhysicalQuantity_type = new entity("IfcPhysicalQuantity", true, 742, 0);
+ IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type = new entity("IfcPhysicalSimpleQuantity", true, 743, IFC4X3_ADD1_IfcPhysicalQuantity_type);
+ IFC4X3_ADD1_IfcPostalAddress_type = new entity("IfcPostalAddress", false, 780, IFC4X3_ADD1_IfcAddress_type);
+ IFC4X3_ADD1_IfcPresentationItem_type = new entity("IfcPresentationItem", true, 790, 0);
+ IFC4X3_ADD1_IfcPresentationLayerAssignment_type = new entity("IfcPresentationLayerAssignment", false, 791, 0);
+ IFC4X3_ADD1_IfcPresentationLayerWithStyle_type = new entity("IfcPresentationLayerWithStyle", false, 792, IFC4X3_ADD1_IfcPresentationLayerAssignment_type);
+ IFC4X3_ADD1_IfcPresentationStyle_type = new entity("IfcPresentationStyle", true, 793, 0);
+ IFC4X3_ADD1_IfcProductRepresentation_type = new entity("IfcProductRepresentation", true, 802, 0);
+ IFC4X3_ADD1_IfcProfileDef_type = new entity("IfcProfileDef", false, 805, 0);
+ IFC4X3_ADD1_IfcProjectedCRS_type = new entity("IfcProjectedCRS", false, 809, IFC4X3_ADD1_IfcCoordinateReferenceSystem_type);
+ IFC4X3_ADD1_IfcPropertyAbstraction_type = new entity("IfcPropertyAbstraction", true, 817, 0);
+ IFC4X3_ADD1_IfcPropertyEnumeration_type = new entity("IfcPropertyEnumeration", false, 822, IFC4X3_ADD1_IfcPropertyAbstraction_type);
+ IFC4X3_ADD1_IfcQuantityArea_type = new entity("IfcQuantityArea", false, 844, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type);
+ IFC4X3_ADD1_IfcQuantityCount_type = new entity("IfcQuantityCount", false, 845, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type);
+ IFC4X3_ADD1_IfcQuantityLength_type = new entity("IfcQuantityLength", false, 846, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type);
+ IFC4X3_ADD1_IfcQuantityNumber_type = new entity("IfcQuantityNumber", false, 847, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type);
+ IFC4X3_ADD1_IfcQuantityTime_type = new entity("IfcQuantityTime", false, 849, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type);
+ IFC4X3_ADD1_IfcQuantityVolume_type = new entity("IfcQuantityVolume", false, 850, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type);
+ IFC4X3_ADD1_IfcQuantityWeight_type = new entity("IfcQuantityWeight", false, 851, IFC4X3_ADD1_IfcPhysicalSimpleQuantity_type);
+ IFC4X3_ADD1_IfcRecurrencePattern_type = new entity("IfcRecurrencePattern", false, 877, 0);
+ IFC4X3_ADD1_IfcReference_type = new entity("IfcReference", false, 879, 0);
+ IFC4X3_ADD1_IfcRepresentation_type = new entity("IfcRepresentation", true, 950, 0);
+ IFC4X3_ADD1_IfcRepresentationContext_type = new entity("IfcRepresentationContext", true, 951, 0);
+ IFC4X3_ADD1_IfcRepresentationItem_type = new entity("IfcRepresentationItem", true, 952, 0);
+ IFC4X3_ADD1_IfcRepresentationMap_type = new entity("IfcRepresentationMap", false, 953, 0);
+ IFC4X3_ADD1_IfcResourceLevelRelationship_type = new entity("IfcResourceLevelRelationship", true, 957, 0);
+ IFC4X3_ADD1_IfcRigidOperation_type = new entity("IfcRigidOperation", false, 965, IFC4X3_ADD1_IfcCoordinateOperation_type);
+ IFC4X3_ADD1_IfcRoot_type = new entity("IfcRoot", true, 974, 0);
+ IFC4X3_ADD1_IfcSIUnit_type = new entity("IfcSIUnit", false, 1025, IFC4X3_ADD1_IfcNamedUnit_type);
+ IFC4X3_ADD1_IfcSchedulingTime_type = new entity("IfcSchedulingTime", true, 983, 0);
+ IFC4X3_ADD1_IfcShapeAspect_type = new entity("IfcShapeAspect", false, 1006, 0);
+ IFC4X3_ADD1_IfcShapeModel_type = new entity("IfcShapeModel", true, 1007, IFC4X3_ADD1_IfcRepresentation_type);
+ IFC4X3_ADD1_IfcShapeRepresentation_type = new entity("IfcShapeRepresentation", false, 1008, IFC4X3_ADD1_IfcShapeModel_type);
+ IFC4X3_ADD1_IfcStructuralConnectionCondition_type = new entity("IfcStructuralConnectionCondition", true, 1080, 0);
+ IFC4X3_ADD1_IfcStructuralLoad_type = new entity("IfcStructuralLoad", true, 1090, 0);
+ IFC4X3_ADD1_IfcStructuralLoadConfiguration_type = new entity("IfcStructuralLoadConfiguration", false, 1092, IFC4X3_ADD1_IfcStructuralLoad_type);
+ IFC4X3_ADD1_IfcStructuralLoadOrResult_type = new entity("IfcStructuralLoadOrResult", true, 1095, IFC4X3_ADD1_IfcStructuralLoad_type);
+ IFC4X3_ADD1_IfcStructuralLoadStatic_type = new entity("IfcStructuralLoadStatic", true, 1101, IFC4X3_ADD1_IfcStructuralLoadOrResult_type);
+ IFC4X3_ADD1_IfcStructuralLoadTemperature_type = new entity("IfcStructuralLoadTemperature", false, 1102, IFC4X3_ADD1_IfcStructuralLoadStatic_type);
+ IFC4X3_ADD1_IfcStyleModel_type = new entity("IfcStyleModel", true, 1119, IFC4X3_ADD1_IfcRepresentation_type);
+ IFC4X3_ADD1_IfcStyledItem_type = new entity("IfcStyledItem", false, 1117, IFC4X3_ADD1_IfcRepresentationItem_type);
+ IFC4X3_ADD1_IfcStyledRepresentation_type = new entity("IfcStyledRepresentation", false, 1118, IFC4X3_ADD1_IfcStyleModel_type);
+ IFC4X3_ADD1_IfcSurfaceReinforcementArea_type = new entity("IfcSurfaceReinforcementArea", false, 1132, IFC4X3_ADD1_IfcStructuralLoadOrResult_type);
+ IFC4X3_ADD1_IfcSurfaceStyle_type = new entity("IfcSurfaceStyle", false, 1134, IFC4X3_ADD1_IfcPresentationStyle_type);
+ IFC4X3_ADD1_IfcSurfaceStyleLighting_type = new entity("IfcSurfaceStyleLighting", false, 1136, IFC4X3_ADD1_IfcPresentationItem_type);
+ IFC4X3_ADD1_IfcSurfaceStyleRefraction_type = new entity("IfcSurfaceStyleRefraction", false, 1137, IFC4X3_ADD1_IfcPresentationItem_type);
+ IFC4X3_ADD1_IfcSurfaceStyleShading_type = new entity("IfcSurfaceStyleShading", false, 1139, IFC4X3_ADD1_IfcPresentationItem_type);
+ IFC4X3_ADD1_IfcSurfaceStyleWithTextures_type = new entity("IfcSurfaceStyleWithTextures", false, 1140, IFC4X3_ADD1_IfcPresentationItem_type);
+ IFC4X3_ADD1_IfcSurfaceTexture_type = new entity("IfcSurfaceTexture", true, 1141, IFC4X3_ADD1_IfcPresentationItem_type);
+ IFC4X3_ADD1_IfcTable_type = new entity("IfcTable", false, 1153, 0);
+ IFC4X3_ADD1_IfcTableColumn_type = new entity("IfcTableColumn", false, 1154, 0);
+ IFC4X3_ADD1_IfcTableRow_type = new entity("IfcTableRow", false, 1155, 0);
+ IFC4X3_ADD1_IfcTaskTime_type = new entity("IfcTaskTime", false, 1161, IFC4X3_ADD1_IfcSchedulingTime_type);
+ IFC4X3_ADD1_IfcTaskTimeRecurring_type = new entity("IfcTaskTimeRecurring", false, 1162, IFC4X3_ADD1_IfcTaskTime_type);
+ IFC4X3_ADD1_IfcTelecomAddress_type = new entity("IfcTelecomAddress", false, 1165, IFC4X3_ADD1_IfcAddress_type);
+ IFC4X3_ADD1_IfcTextStyle_type = new entity("IfcTextStyle", false, 1187, IFC4X3_ADD1_IfcPresentationStyle_type);
+ IFC4X3_ADD1_IfcTextStyleForDefinedFont_type = new entity("IfcTextStyleForDefinedFont", false, 1189, IFC4X3_ADD1_IfcPresentationItem_type);
+ IFC4X3_ADD1_IfcTextStyleTextModel_type = new entity("IfcTextStyleTextModel", false, 1190, IFC4X3_ADD1_IfcPresentationItem_type);
+ IFC4X3_ADD1_IfcTextureCoordinate_type = new entity("IfcTextureCoordinate", true, 1192, IFC4X3_ADD1_IfcPresentationItem_type);
+ IFC4X3_ADD1_IfcTextureCoordinateGenerator_type = new entity("IfcTextureCoordinateGenerator", false, 1193, IFC4X3_ADD1_IfcTextureCoordinate_type);
+ IFC4X3_ADD1_IfcTextureCoordinateIndices_type = new entity("IfcTextureCoordinateIndices", false, 1194, 0);
+ IFC4X3_ADD1_IfcTextureCoordinateIndicesWithVoids_type = new entity("IfcTextureCoordinateIndicesWithVoids", false, 1195, IFC4X3_ADD1_IfcTextureCoordinateIndices_type);
+ IFC4X3_ADD1_IfcTextureMap_type = new entity("IfcTextureMap", false, 1196, IFC4X3_ADD1_IfcTextureCoordinate_type);
+ IFC4X3_ADD1_IfcTextureVertex_type = new entity("IfcTextureVertex", false, 1197, IFC4X3_ADD1_IfcPresentationItem_type);
+ IFC4X3_ADD1_IfcTextureVertexList_type = new entity("IfcTextureVertexList", false, 1198, IFC4X3_ADD1_IfcPresentationItem_type);
+ IFC4X3_ADD1_IfcTimePeriod_type = new entity("IfcTimePeriod", false, 1209, 0);
+ IFC4X3_ADD1_IfcTimeSeries_type = new entity("IfcTimeSeries", true, 1210, 0);
+ IFC4X3_ADD1_IfcTimeSeriesValue_type = new entity("IfcTimeSeriesValue", false, 1212, 0);
+ IFC4X3_ADD1_IfcTopologicalRepresentationItem_type = new entity("IfcTopologicalRepresentationItem", true, 1214, IFC4X3_ADD1_IfcRepresentationItem_type);
+ IFC4X3_ADD1_IfcTopologyRepresentation_type = new entity("IfcTopologyRepresentation", false, 1215, IFC4X3_ADD1_IfcShapeModel_type);
+ IFC4X3_ADD1_IfcUnitAssignment_type = new entity("IfcUnitAssignment", false, 1252, 0);
+ IFC4X3_ADD1_IfcVertex_type = new entity("IfcVertex", false, 1266, IFC4X3_ADD1_IfcTopologicalRepresentationItem_type);
+ IFC4X3_ADD1_IfcVertexPoint_type = new entity("IfcVertexPoint", false, 1268, IFC4X3_ADD1_IfcVertex_type);
+ IFC4X3_ADD1_IfcVirtualGridIntersection_type = new entity("IfcVirtualGridIntersection", false, 1277, 0);
+ IFC4X3_ADD1_IfcWellKnownText_type = new entity("IfcWellKnownText", false, 1292, 0);
+ IFC4X3_ADD1_IfcWorkTime_type = new entity("IfcWorkTime", false, 1309, IFC4X3_ADD1_IfcSchedulingTime_type);
+ {
+ std::vector items; items.reserve(3);
+ items.push_back(IFC4X3_ADD1_IfcOrganization_type);
+ items.push_back(IFC4X3_ADD1_IfcPerson_type);
+ items.push_back(IFC4X3_ADD1_IfcPersonAndOrganization_type);
+ IFC4X3_ADD1_IfcActorSelect_type = new select_type("IfcActorSelect", 8, items);
+ }
+ IFC4X3_ADD1_IfcArcIndex_type = new type_declaration("IfcArcIndex", 57, new aggregation_type(aggregation_type::list_type, 3, 3, new named_type(IFC4X3_ADD1_IfcPositiveInteger_type)));
+ {
+ std::vector items; items.reserve(2);
+ items.push_back(IFC4X3_ADD1_IfcLengthMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcPlaneAngleMeasure_type);
+ IFC4X3_ADD1_IfcBendingParameterSelect_type = new select_type("IfcBendingParameterSelect", 79, items);
+ }
+ IFC4X3_ADD1_IfcBoxAlignment_type = new type_declaration("IfcBoxAlignment", 101, new named_type(IFC4X3_ADD1_IfcLabel_type));
+ {
+ std::vector items; items.reserve(2);
+ items.push_back(IFC4X3_ADD1_IfcNonNegativeLengthMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcParameterValue_type);
+ IFC4X3_ADD1_IfcCurveMeasureSelect_type = new select_type("IfcCurveMeasureSelect", 276, items);
+ }
+ {
+ std::vector items; items.reserve(71);
+ items.push_back(IFC4X3_ADD1_IfcAbsorbedDoseMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcAccelerationMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcAngularVelocityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcAreaDensityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcCompoundPlaneAngleMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcCurvatureMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcDoseEquivalentMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcDynamicViscosityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcElectricCapacitanceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcElectricChargeMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcElectricConductanceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcElectricResistanceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcElectricVoltageMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcEnergyMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcForceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcFrequencyMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcHeatFluxDensityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcHeatingValueMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcIlluminanceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcInductanceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcIntegerCountRateMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcIonConcentrationMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcIsothermalMoistureCapacityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcKinematicViscosityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcLinearForceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcLinearMomentMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcLinearStiffnessMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcLinearVelocityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcLuminousFluxMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcLuminousIntensityDistributionMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcMagneticFluxDensityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcMagneticFluxMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcMassDensityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcMassFlowRateMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcMassPerLengthMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcModulusOfElasticityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcModulusOfLinearSubgradeReactionMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcModulusOfRotationalSubgradeReactionMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcModulusOfSubgradeReactionMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcMoistureDiffusivityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcMolecularWeightMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcMomentOfInertiaMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcMonetaryMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcPHMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcPlanarForceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcPowerMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcPressureMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcRadioActivityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcRotationalFrequencyMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcRotationalMassMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcRotationalStiffnessMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcSectionModulusMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcSectionalAreaIntegralMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcShearModulusMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcSoundPowerLevelMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcSoundPowerMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcSoundPressureLevelMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcSoundPressureMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcSpecificHeatCapacityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcTemperatureGradientMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcTemperatureRateOfChangeMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcThermalAdmittanceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcThermalConductivityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcThermalExpansionCoefficientMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcThermalResistanceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcThermalTransmittanceMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcTorqueMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcVaporPermeabilityMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcVolumetricFlowRateMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcWarpingConstantMeasure_type);
+ items.push_back(IFC4X3_ADD1_IfcWarpingMomentMeasure_type);
+ IFC4X3_ADD1_IfcDerivedMeasureValue_type = new select_type("IfcDerivedMeasureValue", 297, items);
+ }
+ {
+ std::vector