summaryrefslogtreecommitdiff
path: root/libs/assimp/scripts/StepImporter/schema_ifc2x3.exp
diff options
context:
space:
mode:
Diffstat (limited to 'libs/assimp/scripts/StepImporter/schema_ifc2x3.exp')
-rw-r--r--libs/assimp/scripts/StepImporter/schema_ifc2x3.exp9571
1 files changed, 0 insertions, 9571 deletions
diff --git a/libs/assimp/scripts/StepImporter/schema_ifc2x3.exp b/libs/assimp/scripts/StepImporter/schema_ifc2x3.exp
deleted file mode 100644
index ae978a6..0000000
--- a/libs/assimp/scripts/StepImporter/schema_ifc2x3.exp
+++ /dev/null
@@ -1,9571 +0,0 @@
-(*
-Copyright by:
-International Alliance for Interoperability, 1996-2005
-
-All rights reserved. No part of this documentation may be
-reproduced, stored in a retrieval system, or transmitted
-in any form or by any means, without the prior written
-permission of the owner.
-
-Contents:
-full IFC object model EXPRESS definitions for the IFC2x Edition 3 final version
-
-
-- express longform distribution
-- compiled for EXPRESS version 1 technical corrigendum 2
-
-Issue date:
-December 15, 2005
-
-Development Team:
-Modeling Support Group of the
-International Alliance for Interoperability
-compiled by Thomas Liebich tl@aec3.com
-*)
-SCHEMA IFC2X3;
-
-TYPE IfcAbsorbedDoseMeasure = REAL;
-END_TYPE;
-
-TYPE IfcAccelerationMeasure = REAL;
-END_TYPE;
-
-TYPE IfcAmountOfSubstanceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcAngularVelocityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcAreaMeasure = REAL;
-END_TYPE;
-
-TYPE IfcBoolean = BOOLEAN;
-END_TYPE;
-
-TYPE IfcBoxAlignment = IfcLabel;
- WHERE
- WR1 : SELF IN ['top-left', 'top-middle', 'top-right', 'middle-left', 'center', 'middle-right', 'bottom-left', 'bottom-middle', 'bottom-right'];
-END_TYPE;
-
-TYPE IfcComplexNumber = ARRAY [1:2] OF REAL;
-END_TYPE;
-
-TYPE IfcCompoundPlaneAngleMeasure = LIST [3:3] OF INTEGER;
- WHERE
- WR1 : { -360 <= SELF[1] < 360 };
- WR2 : { -60 <= SELF[2] < 60 };
- WR3 : { -60 <= SELF[3] < 60 };
- WR4 : ((SELF[1] >= 0) AND (SELF[2] >= 0) AND (SELF[3] >= 0)) OR ((SELF[1] <= 0) AND (SELF[2] <= 0) AND (SELF[3] <= 0));
-END_TYPE;
-
-TYPE IfcContextDependentMeasure = REAL;
-END_TYPE;
-
-TYPE IfcCountMeasure = NUMBER;
-END_TYPE;
-
-TYPE IfcCurvatureMeasure = REAL;
-END_TYPE;
-
-TYPE IfcDayInMonthNumber = INTEGER;
-END_TYPE;
-
-TYPE IfcDaylightSavingHour = INTEGER;
- WHERE
- WR1 : { 0 <= SELF <= 2 };
-END_TYPE;
-
-TYPE IfcDescriptiveMeasure = STRING;
-END_TYPE;
-
-TYPE IfcDimensionCount = INTEGER;
- WHERE
- WR1 : { 0 < SELF <= 3 };
-END_TYPE;
-
-TYPE IfcDoseEquivalentMeasure = REAL;
-END_TYPE;
-
-TYPE IfcDynamicViscosityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcElectricCapacitanceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcElectricChargeMeasure = REAL;
-END_TYPE;
-
-TYPE IfcElectricConductanceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcElectricCurrentMeasure = REAL;
-END_TYPE;
-
-TYPE IfcElectricResistanceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcElectricVoltageMeasure = REAL;
-END_TYPE;
-
-TYPE IfcEnergyMeasure = REAL;
-END_TYPE;
-
-TYPE IfcFontStyle = STRING;
- WHERE
- WR1 : SELF IN ['normal','italic','oblique'];
-END_TYPE;
-
-TYPE IfcFontVariant = STRING;
- WHERE
- WR1 : SELF IN ['normal','small-caps'];
-END_TYPE;
-
-TYPE IfcFontWeight = STRING;
- WHERE
- WR1 : SELF IN ['normal','small-caps','100','200','300','400','500','600','700','800','900'];
-END_TYPE;
-
-TYPE IfcForceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcFrequencyMeasure = REAL;
-END_TYPE;
-
-TYPE IfcGloballyUniqueId = STRING(22) FIXED;
-END_TYPE;
-
-TYPE IfcHeatFluxDensityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcHeatingValueMeasure = REAL;
- WHERE
- WR1 : SELF > 0.;
-END_TYPE;
-
-TYPE IfcHourInDay = INTEGER;
- WHERE
- WR1 : { 0 <= SELF < 24 };
-END_TYPE;
-
-TYPE IfcIdentifier = STRING;
-END_TYPE;
-
-TYPE IfcIlluminanceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcInductanceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcInteger = INTEGER;
-END_TYPE;
-
-TYPE IfcIntegerCountRateMeasure = INTEGER;
-END_TYPE;
-
-TYPE IfcIonConcentrationMeasure = REAL;
-END_TYPE;
-
-TYPE IfcIsothermalMoistureCapacityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcKinematicViscosityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcLabel = STRING;
-END_TYPE;
-
-TYPE IfcLengthMeasure = REAL;
-END_TYPE;
-
-TYPE IfcLinearForceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcLinearMomentMeasure = REAL;
-END_TYPE;
-
-TYPE IfcLinearStiffnessMeasure = REAL;
-END_TYPE;
-
-TYPE IfcLinearVelocityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcLogical = LOGICAL;
-END_TYPE;
-
-TYPE IfcLuminousFluxMeasure = REAL;
-END_TYPE;
-
-TYPE IfcLuminousIntensityDistributionMeasure = REAL;
-END_TYPE;
-
-TYPE IfcLuminousIntensityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMagneticFluxDensityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMagneticFluxMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMassDensityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMassFlowRateMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMassMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMassPerLengthMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMinuteInHour = INTEGER;
- WHERE
- WR1 : {0 <= SELF <= 59 };
-END_TYPE;
-
-TYPE IfcModulusOfElasticityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcModulusOfLinearSubgradeReactionMeasure = REAL;
-END_TYPE;
-
-TYPE IfcModulusOfRotationalSubgradeReactionMeasure = REAL;
-END_TYPE;
-
-TYPE IfcModulusOfSubgradeReactionMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMoistureDiffusivityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMolecularWeightMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMomentOfInertiaMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMonetaryMeasure = REAL;
-END_TYPE;
-
-TYPE IfcMonthInYearNumber = INTEGER;
- WHERE
- WR1 : { 1<= SELF <= 12 };
-END_TYPE;
-
-TYPE IfcNormalisedRatioMeasure = IfcRatioMeasure;
- WHERE
- WR1 : {0.0 <= SELF <= 1.0};
-END_TYPE;
-
-TYPE IfcNumericMeasure = NUMBER;
-END_TYPE;
-
-TYPE IfcPHMeasure = REAL;
- WHERE
- WR21 : {0.0 <= SELF <= 14.0};
-END_TYPE;
-
-TYPE IfcParameterValue = REAL;
-END_TYPE;
-
-TYPE IfcPlanarForceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcPlaneAngleMeasure = REAL;
-END_TYPE;
-
-TYPE IfcPositiveLengthMeasure = IfcLengthMeasure;
- WHERE
- WR1 : SELF > 0.;
-END_TYPE;
-
-TYPE IfcPositivePlaneAngleMeasure = IfcPlaneAngleMeasure;
- WHERE
- WR1 : SELF > 0.;
-END_TYPE;
-
-TYPE IfcPositiveRatioMeasure = IfcRatioMeasure;
- WHERE
- WR1 : SELF > 0.;
-END_TYPE;
-
-TYPE IfcPowerMeasure = REAL;
-END_TYPE;
-
-TYPE IfcPresentableText = STRING;
-END_TYPE;
-
-TYPE IfcPressureMeasure = REAL;
-END_TYPE;
-
-TYPE IfcRadioActivityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcRatioMeasure = REAL;
-END_TYPE;
-
-TYPE IfcReal = REAL;
-END_TYPE;
-
-TYPE IfcRotationalFrequencyMeasure = REAL;
-END_TYPE;
-
-TYPE IfcRotationalMassMeasure = REAL;
-END_TYPE;
-
-TYPE IfcRotationalStiffnessMeasure = REAL;
-END_TYPE;
-
-TYPE IfcSecondInMinute = REAL;
- WHERE
- WR1 : { 0. <= SELF < 60. };
-END_TYPE;
-
-TYPE IfcSectionModulusMeasure = REAL;
-END_TYPE;
-
-TYPE IfcSectionalAreaIntegralMeasure = REAL;
-END_TYPE;
-
-TYPE IfcShearModulusMeasure = REAL;
-END_TYPE;
-
-TYPE IfcSolidAngleMeasure = REAL;
-END_TYPE;
-
-TYPE IfcSoundPowerMeasure = REAL;
-END_TYPE;
-
-TYPE IfcSoundPressureMeasure = REAL;
-END_TYPE;
-
-TYPE IfcSpecificHeatCapacityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcSpecularExponent = REAL;
-END_TYPE;
-
-TYPE IfcSpecularRoughness = REAL;
- WHERE
- WR1 : {0.0 <= SELF <= 1.0};
-END_TYPE;
-
-TYPE IfcTemperatureGradientMeasure = REAL;
-END_TYPE;
-
-TYPE IfcText = STRING;
-END_TYPE;
-
-TYPE IfcTextAlignment = STRING;
- WHERE
- WR1 : SELF IN ['left', 'right', 'center', 'justify'];
-END_TYPE;
-
-TYPE IfcTextDecoration = STRING;
- WHERE
- WR1 : SELF IN ['none', 'underline', 'overline', 'line-through', 'blink'];
-END_TYPE;
-
-TYPE IfcTextFontName = STRING;
-END_TYPE;
-
-TYPE IfcTextTransformation = STRING;
- WHERE
- WR1 : SELF IN ['capitalize', 'uppercase', 'lowercase', 'none'];
-END_TYPE;
-
-TYPE IfcThermalAdmittanceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcThermalConductivityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcThermalExpansionCoefficientMeasure = REAL;
-END_TYPE;
-
-TYPE IfcThermalResistanceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcThermalTransmittanceMeasure = REAL;
-END_TYPE;
-
-TYPE IfcThermodynamicTemperatureMeasure = REAL;
-END_TYPE;
-
-TYPE IfcTimeMeasure = REAL;
-END_TYPE;
-
-TYPE IfcTimeStamp = INTEGER;
-END_TYPE;
-
-TYPE IfcTorqueMeasure = REAL;
-END_TYPE;
-
-TYPE IfcVaporPermeabilityMeasure = REAL;
-END_TYPE;
-
-TYPE IfcVolumeMeasure = REAL;
-END_TYPE;
-
-TYPE IfcVolumetricFlowRateMeasure = REAL;
-END_TYPE;
-
-TYPE IfcWarpingConstantMeasure = REAL;
-END_TYPE;
-
-TYPE IfcWarpingMomentMeasure = REAL;
-END_TYPE;
-
-TYPE IfcYearNumber = INTEGER;
-END_TYPE;
-
-TYPE IfcActionSourceTypeEnum = ENUMERATION OF
- (DEAD_LOAD_G
- ,COMPLETION_G1
- ,LIVE_LOAD_Q
- ,SNOW_S
- ,WIND_W
- ,PRESTRESSING_P
- ,SETTLEMENT_U
- ,TEMPERATURE_T
- ,EARTHQUAKE_E
- ,FIRE
- ,IMPULSE
- ,IMPACT
- ,TRANSPORT
- ,ERECTION
- ,PROPPING
- ,SYSTEM_IMPERFECTION
- ,SHRINKAGE
- ,CREEP
- ,LACK_OF_FIT
- ,BUOYANCY
- ,ICE
- ,CURRENT
- ,WAVE
- ,RAIN
- ,BRAKES
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcActionTypeEnum = ENUMERATION OF
- (PERMANENT_G
- ,VARIABLE_Q
- ,EXTRAORDINARY_A
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcActuatorTypeEnum = ENUMERATION OF
- (ELECTRICACTUATOR
- ,HANDOPERATEDACTUATOR
- ,HYDRAULICACTUATOR
- ,PNEUMATICACTUATOR
- ,THERMOSTATICACTUATOR
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcAddressTypeEnum = ENUMERATION OF
- (OFFICE
- ,SITE
- ,HOME
- ,DISTRIBUTIONPOINT
- ,USERDEFINED);
-END_TYPE;
-
-TYPE IfcAheadOrBehind = ENUMERATION OF
- (AHEAD
- ,BEHIND);
-END_TYPE;
-
-TYPE IfcAirTerminalBoxTypeEnum = ENUMERATION OF
- (CONSTANTFLOW
- ,VARIABLEFLOWPRESSUREDEPENDANT
- ,VARIABLEFLOWPRESSUREINDEPENDANT
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcAirTerminalTypeEnum = ENUMERATION OF
- (GRILLE
- ,REGISTER
- ,DIFFUSER
- ,EYEBALL
- ,IRIS
- ,LINEARGRILLE
- ,LINEARDIFFUSER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcAirToAirHeatRecoveryTypeEnum = ENUMERATION OF
- (FIXEDPLATECOUNTERFLOWEXCHANGER
- ,FIXEDPLATECROSSFLOWEXCHANGER
- ,FIXEDPLATEPARALLELFLOWEXCHANGER
- ,ROTARYWHEEL
- ,RUNAROUNDCOILLOOP
- ,HEATPIPE
- ,TWINTOWERENTHALPYRECOVERYLOOPS
- ,THERMOSIPHONSEALEDTUBEHEATEXCHANGERS
- ,THERMOSIPHONCOILTYPEHEATEXCHANGERS
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcAlarmTypeEnum = ENUMERATION OF
- (BELL
- ,BREAKGLASSBUTTON
- ,LIGHT
- ,MANUALPULLBOX
- ,SIREN
- ,WHISTLE
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcAnalysisModelTypeEnum = ENUMERATION OF
- (IN_PLANE_LOADING_2D
- ,OUT_PLANE_LOADING_2D
- ,LOADING_3D
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcAnalysisTheoryTypeEnum = ENUMERATION OF
- (FIRST_ORDER_THEORY
- ,SECOND_ORDER_THEORY
- ,THIRD_ORDER_THEORY
- ,FULL_NONLINEAR_THEORY
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcArithmeticOperatorEnum = ENUMERATION OF
- (ADD
- ,DIVIDE
- ,MULTIPLY
- ,SUBTRACT);
-END_TYPE;
-
-TYPE IfcAssemblyPlaceEnum = ENUMERATION OF
- (SITE
- ,FACTORY
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcBSplineCurveForm = ENUMERATION OF
- (POLYLINE_FORM
- ,CIRCULAR_ARC
- ,ELLIPTIC_ARC
- ,PARABOLIC_ARC
- ,HYPERBOLIC_ARC
- ,UNSPECIFIED);
-END_TYPE;
-
-TYPE IfcBeamTypeEnum = ENUMERATION OF
- (BEAM
- ,JOIST
- ,LINTEL
- ,T_BEAM
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcBenchmarkEnum = ENUMERATION OF
- (GREATERTHAN
- ,GREATERTHANOREQUALTO
- ,LESSTHAN
- ,LESSTHANOREQUALTO
- ,EQUALTO
- ,NOTEQUALTO);
-END_TYPE;
-
-TYPE IfcBoilerTypeEnum = ENUMERATION OF
- (WATER
- ,STEAM
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcBooleanOperator = ENUMERATION OF
- (UNION
- ,INTERSECTION
- ,DIFFERENCE);
-END_TYPE;
-
-TYPE IfcBuildingElementProxyTypeEnum = ENUMERATION OF
- (USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCableCarrierFittingTypeEnum = ENUMERATION OF
- (BEND
- ,CROSS
- ,REDUCER
- ,TEE
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCableCarrierSegmentTypeEnum = ENUMERATION OF
- (CABLELADDERSEGMENT
- ,CABLETRAYSEGMENT
- ,CABLETRUNKINGSEGMENT
- ,CONDUITSEGMENT
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCableSegmentTypeEnum = ENUMERATION OF
- (CABLESEGMENT
- ,CONDUCTORSEGMENT
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcChangeActionEnum = ENUMERATION OF
- (NOCHANGE
- ,MODIFIED
- ,ADDED
- ,DELETED
- ,MODIFIEDADDED
- ,MODIFIEDDELETED);
-END_TYPE;
-
-TYPE IfcChillerTypeEnum = ENUMERATION OF
- (AIRCOOLED
- ,WATERCOOLED
- ,HEATRECOVERY
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCoilTypeEnum = ENUMERATION OF
- (DXCOOLINGCOIL
- ,WATERCOOLINGCOIL
- ,STEAMHEATINGCOIL
- ,WATERHEATINGCOIL
- ,ELECTRICHEATINGCOIL
- ,GASHEATINGCOIL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcColumnTypeEnum = ENUMERATION OF
- (COLUMN
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCompressorTypeEnum = ENUMERATION OF
- (DYNAMIC
- ,RECIPROCATING
- ,ROTARY
- ,SCROLL
- ,TROCHOIDAL
- ,SINGLESTAGE
- ,BOOSTER
- ,OPENTYPE
- ,HERMETIC
- ,SEMIHERMETIC
- ,WELDEDSHELLHERMETIC
- ,ROLLINGPISTON
- ,ROTARYVANE
- ,SINGLESCREW
- ,TWINSCREW
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCondenserTypeEnum = ENUMERATION OF
- (WATERCOOLEDSHELLTUBE
- ,WATERCOOLEDSHELLCOIL
- ,WATERCOOLEDTUBEINTUBE
- ,WATERCOOLEDBRAZEDPLATE
- ,AIRCOOLED
- ,EVAPORATIVECOOLED
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcConnectionTypeEnum = ENUMERATION OF
- (ATPATH
- ,ATSTART
- ,ATEND
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcConstraintEnum = ENUMERATION OF
- (HARD
- ,SOFT
- ,ADVISORY
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcControllerTypeEnum = ENUMERATION OF
- (FLOATING
- ,PROPORTIONAL
- ,PROPORTIONALINTEGRAL
- ,PROPORTIONALINTEGRALDERIVATIVE
- ,TIMEDTWOPOSITION
- ,TWOPOSITION
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCooledBeamTypeEnum = ENUMERATION OF
- (ACTIVE
- ,PASSIVE
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCoolingTowerTypeEnum = ENUMERATION OF
- (NATURALDRAFT
- ,MECHANICALINDUCEDDRAFT
- ,MECHANICALFORCEDDRAFT
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCostScheduleTypeEnum = ENUMERATION OF
- (BUDGET
- ,COSTPLAN
- ,ESTIMATE
- ,TENDER
- ,PRICEDBILLOFQUANTITIES
- ,UNPRICEDBILLOFQUANTITIES
- ,SCHEDULEOFRATES
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCoveringTypeEnum = ENUMERATION OF
- (CEILING
- ,FLOORING
- ,CLADDING
- ,ROOFING
- ,INSULATION
- ,MEMBRANE
- ,SLEEVING
- ,WRAPPING
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcCurrencyEnum = ENUMERATION OF
- (AED
- ,AES
- ,ATS
- ,AUD
- ,BBD
- ,BEG
- ,BGL
- ,BHD
- ,BMD
- ,BND
- ,BRL
- ,BSD
- ,BWP
- ,BZD
- ,CAD
- ,CBD
- ,CHF
- ,CLP
- ,CNY
- ,CYS
- ,CZK
- ,DDP
- ,DEM
- ,DKK
- ,EGL
- ,EST
- ,EUR
- ,FAK
- ,FIM
- ,FJD
- ,FKP
- ,FRF
- ,GBP
- ,GIP
- ,GMD
- ,GRX
- ,HKD
- ,HUF
- ,ICK
- ,IDR
- ,ILS
- ,INR
- ,IRP
- ,ITL
- ,JMD
- ,JOD
- ,JPY
- ,KES
- ,KRW
- ,KWD
- ,KYD
- ,LKR
- ,LUF
- ,MTL
- ,MUR
- ,MXN
- ,MYR
- ,NLG
- ,NZD
- ,OMR
- ,PGK
- ,PHP
- ,PKR
- ,PLN
- ,PTN
- ,QAR
- ,RUR
- ,SAR
- ,SCR
- ,SEK
- ,SGD
- ,SKP
- ,THB
- ,TRL
- ,TTD
- ,TWD
- ,USD
- ,VEB
- ,VND
- ,XEU
- ,ZAR
- ,ZWD
- ,NOK);
-END_TYPE;
-
-TYPE IfcCurtainWallTypeEnum = ENUMERATION OF
- (USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDamperTypeEnum = ENUMERATION OF
- (CONTROLDAMPER
- ,FIREDAMPER
- ,SMOKEDAMPER
- ,FIRESMOKEDAMPER
- ,BACKDRAFTDAMPER
- ,RELIEFDAMPER
- ,BLASTDAMPER
- ,GRAVITYDAMPER
- ,GRAVITYRELIEFDAMPER
- ,BALANCINGDAMPER
- ,FUMEHOODEXHAUST
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDataOriginEnum = ENUMERATION OF
- (MEASURED
- ,PREDICTED
- ,SIMULATED
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDerivedUnitEnum = ENUMERATION OF
- (ANGULARVELOCITYUNIT
- ,COMPOUNDPLANEANGLEUNIT
- ,DYNAMICVISCOSITYUNIT
- ,HEATFLUXDENSITYUNIT
- ,INTEGERCOUNTRATEUNIT
- ,ISOTHERMALMOISTURECAPACITYUNIT
- ,KINEMATICVISCOSITYUNIT
- ,LINEARVELOCITYUNIT
- ,MASSDENSITYUNIT
- ,MASSFLOWRATEUNIT
- ,MOISTUREDIFFUSIVITYUNIT
- ,MOLECULARWEIGHTUNIT
- ,SPECIFICHEATCAPACITYUNIT
- ,THERMALADMITTANCEUNIT
- ,THERMALCONDUCTANCEUNIT
- ,THERMALRESISTANCEUNIT
- ,THERMALTRANSMITTANCEUNIT
- ,VAPORPERMEABILITYUNIT
- ,VOLUMETRICFLOWRATEUNIT
- ,ROTATIONALFREQUENCYUNIT
- ,TORQUEUNIT
- ,MOMENTOFINERTIAUNIT
- ,LINEARMOMENTUNIT
- ,LINEARFORCEUNIT
- ,PLANARFORCEUNIT
- ,MODULUSOFELASTICITYUNIT
- ,SHEARMODULUSUNIT
- ,LINEARSTIFFNESSUNIT
- ,ROTATIONALSTIFFNESSUNIT
- ,MODULUSOFSUBGRADEREACTIONUNIT
- ,ACCELERATIONUNIT
- ,CURVATUREUNIT
- ,HEATINGVALUEUNIT
- ,IONCONCENTRATIONUNIT
- ,LUMINOUSINTENSITYDISTRIBUTIONUNIT
- ,MASSPERLENGTHUNIT
- ,MODULUSOFLINEARSUBGRADEREACTIONUNIT
- ,MODULUSOFROTATIONALSUBGRADEREACTIONUNIT
- ,PHUNIT
- ,ROTATIONALMASSUNIT
- ,SECTIONAREAINTEGRALUNIT
- ,SECTIONMODULUSUNIT
- ,SOUNDPOWERUNIT
- ,SOUNDPRESSUREUNIT
- ,TEMPERATUREGRADIENTUNIT
- ,THERMALEXPANSIONCOEFFICIENTUNIT
- ,WARPINGCONSTANTUNIT
- ,WARPINGMOMENTUNIT
- ,USERDEFINED);
-END_TYPE;
-
-TYPE IfcDimensionExtentUsage = ENUMERATION OF
- (ORIGIN
- ,TARGET);
-END_TYPE;
-
-TYPE IfcDirectionSenseEnum = ENUMERATION OF
- (POSITIVE
- ,NEGATIVE);
-END_TYPE;
-
-TYPE IfcDistributionChamberElementTypeEnum = ENUMERATION OF
- (FORMEDDUCT
- ,INSPECTIONCHAMBER
- ,INSPECTIONPIT
- ,MANHOLE
- ,METERCHAMBER
- ,SUMP
- ,TRENCH
- ,VALVECHAMBER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDocumentConfidentialityEnum = ENUMERATION OF
- (PUBLIC
- ,RESTRICTED
- ,CONFIDENTIAL
- ,PERSONAL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDocumentStatusEnum = ENUMERATION OF
- (DRAFT
- ,FINALDRAFT
- ,FINAL
- ,REVISION
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDoorPanelOperationEnum = ENUMERATION OF
- (SWINGING
- ,DOUBLE_ACTING
- ,SLIDING
- ,FOLDING
- ,REVOLVING
- ,ROLLINGUP
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDoorPanelPositionEnum = ENUMERATION OF
- (LEFT
- ,MIDDLE
- ,RIGHT
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDoorStyleConstructionEnum = ENUMERATION OF
- (ALUMINIUM
- ,HIGH_GRADE_STEEL
- ,STEEL
- ,WOOD
- ,ALUMINIUM_WOOD
- ,ALUMINIUM_PLASTIC
- ,PLASTIC
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDoorStyleOperationEnum = ENUMERATION OF
- (SINGLE_SWING_LEFT
- ,SINGLE_SWING_RIGHT
- ,DOUBLE_DOOR_SINGLE_SWING
- ,DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_LEFT
- ,DOUBLE_DOOR_SINGLE_SWING_OPPOSITE_RIGHT
- ,DOUBLE_SWING_LEFT
- ,DOUBLE_SWING_RIGHT
- ,DOUBLE_DOOR_DOUBLE_SWING
- ,SLIDING_TO_LEFT
- ,SLIDING_TO_RIGHT
- ,DOUBLE_DOOR_SLIDING
- ,FOLDING_TO_LEFT
- ,FOLDING_TO_RIGHT
- ,DOUBLE_DOOR_FOLDING
- ,REVOLVING
- ,ROLLINGUP
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDuctFittingTypeEnum = ENUMERATION OF
- (BEND
- ,CONNECTOR
- ,ENTRY
- ,EXIT
- ,JUNCTION
- ,OBSTRUCTION
- ,TRANSITION
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDuctSegmentTypeEnum = ENUMERATION OF
- (RIGIDSEGMENT
- ,FLEXIBLESEGMENT
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcDuctSilencerTypeEnum = ENUMERATION OF
- (FLATOVAL
- ,RECTANGULAR
- ,ROUND
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcElectricApplianceTypeEnum = ENUMERATION OF
- (COMPUTER
- ,DIRECTWATERHEATER
- ,DISHWASHER
- ,ELECTRICCOOKER
- ,ELECTRICHEATER
- ,FACSIMILE
- ,FREESTANDINGFAN
- ,FREEZER
- ,FRIDGE_FREEZER
- ,HANDDRYER
- ,INDIRECTWATERHEATER
- ,MICROWAVE
- ,PHOTOCOPIER
- ,PRINTER
- ,REFRIGERATOR
- ,RADIANTHEATER
- ,SCANNER
- ,TELEPHONE
- ,TUMBLEDRYER
- ,TV
- ,VENDINGMACHINE
- ,WASHINGMACHINE
- ,WATERHEATER
- ,WATERCOOLER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcElectricCurrentEnum = ENUMERATION OF
- (ALTERNATING
- ,DIRECT
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcElectricDistributionPointFunctionEnum = ENUMERATION OF
- (ALARMPANEL
- ,CONSUMERUNIT
- ,CONTROLPANEL
- ,DISTRIBUTIONBOARD
- ,GASDETECTORPANEL
- ,INDICATORPANEL
- ,MIMICPANEL
- ,MOTORCONTROLCENTRE
- ,SWITCHBOARD
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcElectricFlowStorageDeviceTypeEnum = ENUMERATION OF
- (BATTERY
- ,CAPACITORBANK
- ,HARMONICFILTER
- ,INDUCTORBANK
- ,UPS
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcElectricGeneratorTypeEnum = ENUMERATION OF
- (USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcElectricHeaterTypeEnum = ENUMERATION OF
- (ELECTRICPOINTHEATER
- ,ELECTRICCABLEHEATER
- ,ELECTRICMATHEATER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcElectricMotorTypeEnum = ENUMERATION OF
- (DC
- ,INDUCTION
- ,POLYPHASE
- ,RELUCTANCESYNCHRONOUS
- ,SYNCHRONOUS
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcElectricTimeControlTypeEnum = ENUMERATION OF
- (TIMECLOCK
- ,TIMEDELAY
- ,RELAY
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcElementAssemblyTypeEnum = ENUMERATION OF
- (ACCESSORY_ASSEMBLY
- ,ARCH
- ,BEAM_GRID
- ,BRACED_FRAME
- ,GIRDER
- ,REINFORCEMENT_UNIT
- ,RIGID_FRAME
- ,SLAB_FIELD
- ,TRUSS
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcElementCompositionEnum = ENUMERATION OF
- (COMPLEX
- ,ELEMENT
- ,PARTIAL);
-END_TYPE;
-
-TYPE IfcEnergySequenceEnum = ENUMERATION OF
- (PRIMARY
- ,SECONDARY
- ,TERTIARY
- ,AUXILIARY
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcEnvironmentalImpactCategoryEnum = ENUMERATION OF
- (COMBINEDVALUE
- ,DISPOSAL
- ,EXTRACTION
- ,INSTALLATION
- ,MANUFACTURE
- ,TRANSPORTATION
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcEvaporativeCoolerTypeEnum = ENUMERATION OF
- (DIRECTEVAPORATIVERANDOMMEDIAAIRCOOLER
- ,DIRECTEVAPORATIVERIGIDMEDIAAIRCOOLER
- ,DIRECTEVAPORATIVESLINGERSPACKAGEDAIRCOOLER
- ,DIRECTEVAPORATIVEPACKAGEDROTARYAIRCOOLER
- ,DIRECTEVAPORATIVEAIRWASHER
- ,INDIRECTEVAPORATIVEPACKAGEAIRCOOLER
- ,INDIRECTEVAPORATIVEWETCOIL
- ,INDIRECTEVAPORATIVECOOLINGTOWERORCOILCOOLER
- ,INDIRECTDIRECTCOMBINATION
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcEvaporatorTypeEnum = ENUMERATION OF
- (DIRECTEXPANSIONSHELLANDTUBE
- ,DIRECTEXPANSIONTUBEINTUBE
- ,DIRECTEXPANSIONBRAZEDPLATE
- ,FLOODEDSHELLANDTUBE
- ,SHELLANDCOIL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcFanTypeEnum = ENUMERATION OF
- (CENTRIFUGALFORWARDCURVED
- ,CENTRIFUGALRADIAL
- ,CENTRIFUGALBACKWARDINCLINEDCURVED
- ,CENTRIFUGALAIRFOIL
- ,TUBEAXIAL
- ,VANEAXIAL
- ,PROPELLORAXIAL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcFilterTypeEnum = ENUMERATION OF
- (AIRPARTICLEFILTER
- ,ODORFILTER
- ,OILFILTER
- ,STRAINER
- ,WATERFILTER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcFireSuppressionTerminalTypeEnum = ENUMERATION OF
- (BREECHINGINLET
- ,FIREHYDRANT
- ,HOSEREEL
- ,SPRINKLER
- ,SPRINKLERDEFLECTOR
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcFlowDirectionEnum = ENUMERATION OF
- (SOURCE
- ,SINK
- ,SOURCEANDSINK
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcFlowInstrumentTypeEnum = ENUMERATION OF
- (PRESSUREGAUGE
- ,THERMOMETER
- ,AMMETER
- ,FREQUENCYMETER
- ,POWERFACTORMETER
- ,PHASEANGLEMETER
- ,VOLTMETER_PEAK
- ,VOLTMETER_RMS
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcFlowMeterTypeEnum = ENUMERATION OF
- (ELECTRICMETER
- ,ENERGYMETER
- ,FLOWMETER
- ,GASMETER
- ,OILMETER
- ,WATERMETER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcFootingTypeEnum = ENUMERATION OF
- (FOOTING_BEAM
- ,PAD_FOOTING
- ,PILE_CAP
- ,STRIP_FOOTING
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcGasTerminalTypeEnum = ENUMERATION OF
- (GASAPPLIANCE
- ,GASBOOSTER
- ,GASBURNER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcGeometricProjectionEnum = ENUMERATION OF
- (GRAPH_VIEW
- ,SKETCH_VIEW
- ,MODEL_VIEW
- ,PLAN_VIEW
- ,REFLECTED_PLAN_VIEW
- ,SECTION_VIEW
- ,ELEVATION_VIEW
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcGlobalOrLocalEnum = ENUMERATION OF
- (GLOBAL_COORDS
- ,LOCAL_COORDS);
-END_TYPE;
-
-TYPE IfcHeatExchangerTypeEnum = ENUMERATION OF
- (PLATE
- ,SHELLANDTUBE
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcHumidifierTypeEnum = ENUMERATION OF
- (STEAMINJECTION
- ,ADIABATICAIRWASHER
- ,ADIABATICPAN
- ,ADIABATICWETTEDELEMENT
- ,ADIABATICATOMIZING
- ,ADIABATICULTRASONIC
- ,ADIABATICRIGIDMEDIA
- ,ADIABATICCOMPRESSEDAIRNOZZLE
- ,ASSISTEDELECTRIC
- ,ASSISTEDNATURALGAS
- ,ASSISTEDPROPANE
- ,ASSISTEDBUTANE
- ,ASSISTEDSTEAM
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcInternalOrExternalEnum = ENUMERATION OF
- (INTERNAL
- ,EXTERNAL
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcInventoryTypeEnum = ENUMERATION OF
- (ASSETINVENTORY
- ,SPACEINVENTORY
- ,FURNITUREINVENTORY
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcJunctionBoxTypeEnum = ENUMERATION OF
- (USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcLampTypeEnum = ENUMERATION OF
- (COMPACTFLUORESCENT
- ,FLUORESCENT
- ,HIGHPRESSUREMERCURY
- ,HIGHPRESSURESODIUM
- ,METALHALIDE
- ,TUNGSTENFILAMENT
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcLayerSetDirectionEnum = ENUMERATION OF
- (AXIS1
- ,AXIS2
- ,AXIS3);
-END_TYPE;
-
-TYPE IfcLightDistributionCurveEnum = ENUMERATION OF
- (TYPE_A
- ,TYPE_B
- ,TYPE_C
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcLightEmissionSourceEnum = ENUMERATION OF
- (COMPACTFLUORESCENT
- ,FLUORESCENT
- ,HIGHPRESSUREMERCURY
- ,HIGHPRESSURESODIUM
- ,LIGHTEMITTINGDIODE
- ,LOWPRESSURESODIUM
- ,LOWVOLTAGEHALOGEN
- ,MAINVOLTAGEHALOGEN
- ,METALHALIDE
- ,TUNGSTENFILAMENT
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcLightFixtureTypeEnum = ENUMERATION OF
- (POINTSOURCE
- ,DIRECTIONSOURCE
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcLoadGroupTypeEnum = ENUMERATION OF
- (LOAD_GROUP
- ,LOAD_CASE
- ,LOAD_COMBINATION_GROUP
- ,LOAD_COMBINATION
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcLogicalOperatorEnum = ENUMERATION OF
- (LOGICALAND
- ,LOGICALOR);
-END_TYPE;
-
-TYPE IfcMemberTypeEnum = ENUMERATION OF
- (BRACE
- ,CHORD
- ,COLLAR
- ,MEMBER
- ,MULLION
- ,PLATE
- ,POST
- ,PURLIN
- ,RAFTER
- ,STRINGER
- ,STRUT
- ,STUD
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcMotorConnectionTypeEnum = ENUMERATION OF
- (BELTDRIVE
- ,COUPLING
- ,DIRECTDRIVE
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcNullStyle = ENUMERATION OF
- (NULL);
-END_TYPE;
-
-TYPE IfcObjectTypeEnum = ENUMERATION OF
- (PRODUCT
- ,PROCESS
- ,CONTROL
- ,RESOURCE
- ,ACTOR
- ,GROUP
- ,PROJECT
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcObjectiveEnum = ENUMERATION OF
- (CODECOMPLIANCE
- ,DESIGNINTENT
- ,HEALTHANDSAFETY
- ,REQUIREMENT
- ,SPECIFICATION
- ,TRIGGERCONDITION
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcOccupantTypeEnum = ENUMERATION OF
- (ASSIGNEE
- ,ASSIGNOR
- ,LESSEE
- ,LESSOR
- ,LETTINGAGENT
- ,OWNER
- ,TENANT
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcOutletTypeEnum = ENUMERATION OF
- (AUDIOVISUALOUTLET
- ,COMMUNICATIONSOUTLET
- ,POWEROUTLET
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcPermeableCoveringOperationEnum = ENUMERATION OF
- (GRILL
- ,LOUVER
- ,SCREEN
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcPhysicalOrVirtualEnum = ENUMERATION OF
- (PHYSICAL
- ,VIRTUAL
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcPileConstructionEnum = ENUMERATION OF
- (CAST_IN_PLACE
- ,COMPOSITE
- ,PRECAST_CONCRETE
- ,PREFAB_STEEL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcPileTypeEnum = ENUMERATION OF
- (COHESION
- ,FRICTION
- ,SUPPORT
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcPipeFittingTypeEnum = ENUMERATION OF
- (BEND
- ,CONNECTOR
- ,ENTRY
- ,EXIT
- ,JUNCTION
- ,OBSTRUCTION
- ,TRANSITION
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcPipeSegmentTypeEnum = ENUMERATION OF
- (FLEXIBLESEGMENT
- ,RIGIDSEGMENT
- ,GUTTER
- ,SPOOL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcPlateTypeEnum = ENUMERATION OF
- (CURTAIN_PANEL
- ,SHEET
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcProcedureTypeEnum = ENUMERATION OF
- (ADVICE_CAUTION
- ,ADVICE_NOTE
- ,ADVICE_WARNING
- ,CALIBRATION
- ,DIAGNOSTIC
- ,SHUTDOWN
- ,STARTUP
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcProfileTypeEnum = ENUMERATION OF
- (CURVE
- ,AREA);
-END_TYPE;
-
-TYPE IfcProjectOrderRecordTypeEnum = ENUMERATION OF
- (CHANGE
- ,MAINTENANCE
- ,MOVE
- ,PURCHASE
- ,WORK
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcProjectOrderTypeEnum = ENUMERATION OF
- (CHANGEORDER
- ,MAINTENANCEWORKORDER
- ,MOVEORDER
- ,PURCHASEORDER
- ,WORKORDER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcProjectedOrTrueLengthEnum = ENUMERATION OF
- (PROJECTED_LENGTH
- ,TRUE_LENGTH);
-END_TYPE;
-
-TYPE IfcPropertySourceEnum = ENUMERATION OF
- (DESIGN
- ,DESIGNMAXIMUM
- ,DESIGNMINIMUM
- ,SIMULATED
- ,ASBUILT
- ,COMMISSIONING
- ,MEASURED
- ,USERDEFINED
- ,NOTKNOWN);
-END_TYPE;
-
-TYPE IfcProtectiveDeviceTypeEnum = ENUMERATION OF
- (FUSEDISCONNECTOR
- ,CIRCUITBREAKER
- ,EARTHFAILUREDEVICE
- ,RESIDUALCURRENTCIRCUITBREAKER
- ,RESIDUALCURRENTSWITCH
- ,VARISTOR
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcPumpTypeEnum = ENUMERATION OF
- (CIRCULATOR
- ,ENDSUCTION
- ,SPLITCASE
- ,VERTICALINLINE
- ,VERTICALTURBINE
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcRailingTypeEnum = ENUMERATION OF
- (HANDRAIL
- ,GUARDRAIL
- ,BALUSTRADE
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcRampFlightTypeEnum = ENUMERATION OF
- (STRAIGHT
- ,SPIRAL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcRampTypeEnum = ENUMERATION OF
- (STRAIGHT_RUN_RAMP
- ,TWO_STRAIGHT_RUN_RAMP
- ,QUARTER_TURN_RAMP
- ,TWO_QUARTER_TURN_RAMP
- ,HALF_TURN_RAMP
- ,SPIRAL_RAMP
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcReflectanceMethodEnum = ENUMERATION OF
- (BLINN
- ,FLAT
- ,GLASS
- ,MATT
- ,METAL
- ,MIRROR
- ,PHONG
- ,PLASTIC
- ,STRAUSS
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcReinforcingBarRoleEnum = ENUMERATION OF
- (MAIN
- ,SHEAR
- ,LIGATURE
- ,STUD
- ,PUNCHING
- ,EDGE
- ,RING
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcReinforcingBarSurfaceEnum = ENUMERATION OF
- (PLAIN
- ,TEXTURED);
-END_TYPE;
-
-TYPE IfcResourceConsumptionEnum = ENUMERATION OF
- (CONSUMED
- ,PARTIALLYCONSUMED
- ,NOTCONSUMED
- ,OCCUPIED
- ,PARTIALLYOCCUPIED
- ,NOTOCCUPIED
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcRibPlateDirectionEnum = ENUMERATION OF
- (DIRECTION_X
- ,DIRECTION_Y);
-END_TYPE;
-
-TYPE IfcRoleEnum = ENUMERATION OF
- (SUPPLIER
- ,MANUFACTURER
- ,CONTRACTOR
- ,SUBCONTRACTOR
- ,ARCHITECT
- ,STRUCTURALENGINEER
- ,COSTENGINEER
- ,CLIENT
- ,BUILDINGOWNER
- ,BUILDINGOPERATOR
- ,MECHANICALENGINEER
- ,ELECTRICALENGINEER
- ,PROJECTMANAGER
- ,FACILITIESMANAGER
- ,CIVILENGINEER
- ,COMISSIONINGENGINEER
- ,ENGINEER
- ,OWNER
- ,CONSULTANT
- ,CONSTRUCTIONMANAGER
- ,FIELDCONSTRUCTIONMANAGER
- ,RESELLER
- ,USERDEFINED);
-END_TYPE;
-
-TYPE IfcRoofTypeEnum = ENUMERATION OF
- (FLAT_ROOF
- ,SHED_ROOF
- ,GABLE_ROOF
- ,HIP_ROOF
- ,HIPPED_GABLE_ROOF
- ,GAMBREL_ROOF
- ,MANSARD_ROOF
- ,BARREL_ROOF
- ,RAINBOW_ROOF
- ,BUTTERFLY_ROOF
- ,PAVILION_ROOF
- ,DOME_ROOF
- ,FREEFORM
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcSIPrefix = ENUMERATION OF
- (EXA
- ,PETA
- ,TERA
- ,GIGA
- ,MEGA
- ,KILO
- ,HECTO
- ,DECA
- ,DECI
- ,CENTI
- ,MILLI
- ,MICRO
- ,NANO
- ,PICO
- ,FEMTO
- ,ATTO);
-END_TYPE;
-
-TYPE IfcSIUnitName = ENUMERATION OF
- (AMPERE
- ,BECQUEREL
- ,CANDELA
- ,COULOMB
- ,CUBIC_METRE
- ,DEGREE_CELSIUS
- ,FARAD
- ,GRAM
- ,GRAY
- ,HENRY
- ,HERTZ
- ,JOULE
- ,KELVIN
- ,LUMEN
- ,LUX
- ,METRE
- ,MOLE
- ,NEWTON
- ,OHM
- ,PASCAL
- ,RADIAN
- ,SECOND
- ,SIEMENS
- ,SIEVERT
- ,SQUARE_METRE
- ,STERADIAN
- ,TESLA
- ,VOLT
- ,WATT
- ,WEBER);
-END_TYPE;
-
-TYPE IfcSanitaryTerminalTypeEnum = ENUMERATION OF
- (BATH
- ,BIDET
- ,CISTERN
- ,SHOWER
- ,SINK
- ,SANITARYFOUNTAIN
- ,TOILETPAN
- ,URINAL
- ,WASHHANDBASIN
- ,WCSEAT
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcSectionTypeEnum = ENUMERATION OF
- (UNIFORM
- ,TAPERED);
-END_TYPE;
-
-TYPE IfcSensorTypeEnum = ENUMERATION OF
- (CO2SENSOR
- ,FIRESENSOR
- ,FLOWSENSOR
- ,GASSENSOR
- ,HEATSENSOR
- ,HUMIDITYSENSOR
- ,LIGHTSENSOR
- ,MOISTURESENSOR
- ,MOVEMENTSENSOR
- ,PRESSURESENSOR
- ,SMOKESENSOR
- ,SOUNDSENSOR
- ,TEMPERATURESENSOR
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcSequenceEnum = ENUMERATION OF
- (START_START
- ,START_FINISH
- ,FINISH_START
- ,FINISH_FINISH
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcServiceLifeFactorTypeEnum = ENUMERATION OF
- (A_QUALITYOFCOMPONENTS
- ,B_DESIGNLEVEL
- ,C_WORKEXECUTIONLEVEL
- ,D_INDOORENVIRONMENT
- ,E_OUTDOORENVIRONMENT
- ,F_INUSECONDITIONS
- ,G_MAINTENANCELEVEL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcServiceLifeTypeEnum = ENUMERATION OF
- (ACTUALSERVICELIFE
- ,EXPECTEDSERVICELIFE
- ,OPTIMISTICREFERENCESERVICELIFE
- ,PESSIMISTICREFERENCESERVICELIFE
- ,REFERENCESERVICELIFE);
-END_TYPE;
-
-TYPE IfcSlabTypeEnum = ENUMERATION OF
- (FLOOR
- ,ROOF
- ,LANDING
- ,BASESLAB
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcSoundScaleEnum = ENUMERATION OF
- (DBA
- ,DBB
- ,DBC
- ,NC
- ,NR
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcSpaceHeaterTypeEnum = ENUMERATION OF
- (SECTIONALRADIATOR
- ,PANELRADIATOR
- ,TUBULARRADIATOR
- ,CONVECTOR
- ,BASEBOARDHEATER
- ,FINNEDTUBEUNIT
- ,UNITHEATER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcSpaceTypeEnum = ENUMERATION OF
- (USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcStackTerminalTypeEnum = ENUMERATION OF
- (BIRDCAGE
- ,COWL
- ,RAINWATERHOPPER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcStairFlightTypeEnum = ENUMERATION OF
- (STRAIGHT
- ,WINDER
- ,SPIRAL
- ,CURVED
- ,FREEFORM
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcStairTypeEnum = ENUMERATION OF
- (STRAIGHT_RUN_STAIR
- ,TWO_STRAIGHT_RUN_STAIR
- ,QUARTER_WINDING_STAIR
- ,QUARTER_TURN_STAIR
- ,HALF_WINDING_STAIR
- ,HALF_TURN_STAIR
- ,TWO_QUARTER_WINDING_STAIR
- ,TWO_QUARTER_TURN_STAIR
- ,THREE_QUARTER_WINDING_STAIR
- ,THREE_QUARTER_TURN_STAIR
- ,SPIRAL_STAIR
- ,DOUBLE_RETURN_STAIR
- ,CURVED_RUN_STAIR
- ,TWO_CURVED_RUN_STAIR
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcStateEnum = ENUMERATION OF
- (READWRITE
- ,READONLY
- ,LOCKED
- ,READWRITELOCKED
- ,READONLYLOCKED);
-END_TYPE;
-
-TYPE IfcStructuralCurveTypeEnum = ENUMERATION OF
- (RIGID_JOINED_MEMBER
- ,PIN_JOINED_MEMBER
- ,CABLE
- ,TENSION_MEMBER
- ,COMPRESSION_MEMBER
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcStructuralSurfaceTypeEnum = ENUMERATION OF
- (BENDING_ELEMENT
- ,MEMBRANE_ELEMENT
- ,SHELL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcSurfaceSide = ENUMERATION OF
- (POSITIVE
- ,NEGATIVE
- ,BOTH);
-END_TYPE;
-
-TYPE IfcSurfaceTextureEnum = ENUMERATION OF
- (BUMP
- ,OPACITY
- ,REFLECTION
- ,SELFILLUMINATION
- ,SHININESS
- ,SPECULAR
- ,TEXTURE
- ,TRANSPARENCYMAP
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcSwitchingDeviceTypeEnum = ENUMERATION OF
- (CONTACTOR
- ,EMERGENCYSTOP
- ,STARTER
- ,SWITCHDISCONNECTOR
- ,TOGGLESWITCH
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcTankTypeEnum = ENUMERATION OF
- (PREFORMED
- ,SECTIONAL
- ,EXPANSION
- ,PRESSUREVESSEL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcTendonTypeEnum = ENUMERATION OF
- (STRAND
- ,WIRE
- ,BAR
- ,COATED
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcTextPath = ENUMERATION OF
- (LEFT
- ,RIGHT
- ,UP
- ,DOWN);
-END_TYPE;
-
-TYPE IfcThermalLoadSourceEnum = ENUMERATION OF
- (PEOPLE
- ,LIGHTING
- ,EQUIPMENT
- ,VENTILATIONINDOORAIR
- ,VENTILATIONOUTSIDEAIR
- ,RECIRCULATEDAIR
- ,EXHAUSTAIR
- ,AIREXCHANGERATE
- ,DRYBULBTEMPERATURE
- ,RELATIVEHUMIDITY
- ,INFILTRATION
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcThermalLoadTypeEnum = ENUMERATION OF
- (SENSIBLE
- ,LATENT
- ,RADIANT
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcTimeSeriesDataTypeEnum = ENUMERATION OF
- (CONTINUOUS
- ,DISCRETE
- ,DISCRETEBINARY
- ,PIECEWISEBINARY
- ,PIECEWISECONSTANT
- ,PIECEWISECONTINUOUS
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcTimeSeriesScheduleTypeEnum = ENUMERATION OF
- (ANNUAL
- ,MONTHLY
- ,WEEKLY
- ,DAILY
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcTransformerTypeEnum = ENUMERATION OF
- (CURRENT
- ,FREQUENCY
- ,VOLTAGE
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcTransitionCode = ENUMERATION OF
- (DISCONTINUOUS
- ,CONTINUOUS
- ,CONTSAMEGRADIENT
- ,CONTSAMEGRADIENTSAMECURVATURE);
-END_TYPE;
-
-TYPE IfcTransportElementTypeEnum = ENUMERATION OF
- (ELEVATOR
- ,ESCALATOR
- ,MOVINGWALKWAY
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcTrimmingPreference = ENUMERATION OF
- (CARTESIAN
- ,PARAMETER
- ,UNSPECIFIED);
-END_TYPE;
-
-TYPE IfcTubeBundleTypeEnum = ENUMERATION OF
- (FINNED
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcUnitEnum = ENUMERATION OF
- (ABSORBEDDOSEUNIT
- ,AMOUNTOFSUBSTANCEUNIT
- ,AREAUNIT
- ,DOSEEQUIVALENTUNIT
- ,ELECTRICCAPACITANCEUNIT
- ,ELECTRICCHARGEUNIT
- ,ELECTRICCONDUCTANCEUNIT
- ,ELECTRICCURRENTUNIT
- ,ELECTRICRESISTANCEUNIT
- ,ELECTRICVOLTAGEUNIT
- ,ENERGYUNIT
- ,FORCEUNIT
- ,FREQUENCYUNIT
- ,ILLUMINANCEUNIT
- ,INDUCTANCEUNIT
- ,LENGTHUNIT
- ,LUMINOUSFLUXUNIT
- ,LUMINOUSINTENSITYUNIT
- ,MAGNETICFLUXDENSITYUNIT
- ,MAGNETICFLUXUNIT
- ,MASSUNIT
- ,PLANEANGLEUNIT
- ,POWERUNIT
- ,PRESSUREUNIT
- ,RADIOACTIVITYUNIT
- ,SOLIDANGLEUNIT
- ,THERMODYNAMICTEMPERATUREUNIT
- ,TIMEUNIT
- ,VOLUMEUNIT
- ,USERDEFINED);
-END_TYPE;
-
-TYPE IfcUnitaryEquipmentTypeEnum = ENUMERATION OF
- (AIRHANDLER
- ,AIRCONDITIONINGUNIT
- ,SPLITSYSTEM
- ,ROOFTOPUNIT
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcValveTypeEnum = ENUMERATION OF
- (AIRRELEASE
- ,ANTIVACUUM
- ,CHANGEOVER
- ,CHECK
- ,COMMISSIONING
- ,DIVERTING
- ,DRAWOFFCOCK
- ,DOUBLECHECK
- ,DOUBLEREGULATING
- ,FAUCET
- ,FLUSHING
- ,GASCOCK
- ,GASTAP
- ,ISOLATING
- ,MIXING
- ,PRESSUREREDUCING
- ,PRESSURERELIEF
- ,REGULATING
- ,SAFETYCUTOFF
- ,STEAMTRAP
- ,STOPCOCK
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcVibrationIsolatorTypeEnum = ENUMERATION OF
- (COMPRESSION
- ,SPRING
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcWallTypeEnum = ENUMERATION OF
- (STANDARD
- ,POLYGONAL
- ,SHEAR
- ,ELEMENTEDWALL
- ,PLUMBINGWALL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcWasteTerminalTypeEnum = ENUMERATION OF
- (FLOORTRAP
- ,FLOORWASTE
- ,GULLYSUMP
- ,GULLYTRAP
- ,GREASEINTERCEPTOR
- ,OILINTERCEPTOR
- ,PETROLINTERCEPTOR
- ,ROOFDRAIN
- ,WASTEDISPOSALUNIT
- ,WASTETRAP
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcWindowPanelOperationEnum = ENUMERATION OF
- (SIDEHUNGRIGHTHAND
- ,SIDEHUNGLEFTHAND
- ,TILTANDTURNRIGHTHAND
- ,TILTANDTURNLEFTHAND
- ,TOPHUNG
- ,BOTTOMHUNG
- ,PIVOTHORIZONTAL
- ,PIVOTVERTICAL
- ,SLIDINGHORIZONTAL
- ,SLIDINGVERTICAL
- ,REMOVABLECASEMENT
- ,FIXEDCASEMENT
- ,OTHEROPERATION
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcWindowPanelPositionEnum = ENUMERATION OF
- (LEFT
- ,MIDDLE
- ,RIGHT
- ,BOTTOM
- ,TOP
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcWindowStyleConstructionEnum = ENUMERATION OF
- (ALUMINIUM
- ,HIGH_GRADE_STEEL
- ,STEEL
- ,WOOD
- ,ALUMINIUM_WOOD
- ,PLASTIC
- ,OTHER_CONSTRUCTION
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcWindowStyleOperationEnum = ENUMERATION OF
- (SINGLE_PANEL
- ,DOUBLE_PANEL_VERTICAL
- ,DOUBLE_PANEL_HORIZONTAL
- ,TRIPLE_PANEL_VERTICAL
- ,TRIPLE_PANEL_BOTTOM
- ,TRIPLE_PANEL_TOP
- ,TRIPLE_PANEL_LEFT
- ,TRIPLE_PANEL_RIGHT
- ,TRIPLE_PANEL_HORIZONTAL
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcWorkControlTypeEnum = ENUMERATION OF
- (ACTUAL
- ,BASELINE
- ,PLANNED
- ,USERDEFINED
- ,NOTDEFINED);
-END_TYPE;
-
-TYPE IfcActorSelect = SELECT
- (IfcOrganization
- ,IfcPerson
- ,IfcPersonAndOrganization);
-END_TYPE;
-
-TYPE IfcAppliedValueSelect = SELECT
- (IfcRatioMeasure
- ,IfcMeasureWithUnit
- ,IfcMonetaryMeasure);
-END_TYPE;
-
-TYPE IfcAxis2Placement = SELECT
- (IfcAxis2Placement2D
- ,IfcAxis2Placement3D);
-END_TYPE;
-
-TYPE IfcBooleanOperand = SELECT
- (IfcSolidModel
- ,IfcHalfSpaceSolid
- ,IfcBooleanResult
- ,IfcCsgPrimitive3D);
-END_TYPE;
-
-TYPE IfcCharacterStyleSelect = SELECT
- (IfcTextStyleForDefinedFont);
-END_TYPE;
-
-TYPE IfcClassificationNotationSelect = SELECT
- (IfcClassificationNotation
- ,IfcClassificationReference);
-END_TYPE;
-
-TYPE IfcColour = SELECT
- (IfcColourSpecification
- ,IfcPreDefinedColour);
-END_TYPE;
-
-TYPE IfcColourOrFactor = SELECT
- (IfcColourRgb
- ,IfcNormalisedRatioMeasure);
-END_TYPE;
-
-TYPE IfcConditionCriterionSelect = SELECT
- (IfcLabel
- ,IfcMeasureWithUnit);
-END_TYPE;
-
-TYPE IfcCsgSelect = SELECT
- (IfcBooleanResult
- ,IfcCsgPrimitive3D);
-END_TYPE;
-
-TYPE IfcCurveFontOrScaledCurveFontSelect = SELECT
- (IfcCurveStyleFontSelect
- ,IfcCurveStyleFontAndScaling);
-END_TYPE;
-
-TYPE IfcCurveOrEdgeCurve = SELECT
- (IfcBoundedCurve
- ,IfcEdgeCurve);
-END_TYPE;
-
-TYPE IfcCurveStyleFontSelect = SELECT
- (IfcPreDefinedCurveFont
- ,IfcCurveStyleFont);
-END_TYPE;
-
-TYPE IfcDateTimeSelect = SELECT
- (IfcCalendarDate
- ,IfcLocalTime
- ,IfcDateAndTime);
-END_TYPE;
-
-TYPE IfcDefinedSymbolSelect = SELECT
- (IfcPreDefinedSymbol
- ,IfcExternallyDefinedSymbol);
-END_TYPE;
-
-TYPE IfcDerivedMeasureValue = SELECT
- (IfcVolumetricFlowRateMeasure
- ,IfcTimeStamp
- ,IfcThermalTransmittanceMeasure
- ,IfcThermalResistanceMeasure
- ,IfcThermalAdmittanceMeasure
- ,IfcPressureMeasure
- ,IfcPowerMeasure
- ,IfcMassFlowRateMeasure
- ,IfcMassDensityMeasure
- ,IfcLinearVelocityMeasure
- ,IfcKinematicViscosityMeasure
- ,IfcIntegerCountRateMeasure
- ,IfcHeatFluxDensityMeasure
- ,IfcFrequencyMeasure
- ,IfcEnergyMeasure
- ,IfcElectricVoltageMeasure
- ,IfcDynamicViscosityMeasure
- ,IfcCompoundPlaneAngleMeasure
- ,IfcAngularVelocityMeasure
- ,IfcThermalConductivityMeasure
- ,IfcMolecularWeightMeasure
- ,IfcVaporPermeabilityMeasure
- ,IfcMoistureDiffusivityMeasure
- ,IfcIsothermalMoistureCapacityMeasure
- ,IfcSpecificHeatCapacityMeasure
- ,IfcMonetaryMeasure
- ,IfcMagneticFluxDensityMeasure
- ,IfcMagneticFluxMeasure
- ,IfcLuminousFluxMeasure
- ,IfcForceMeasure
- ,IfcInductanceMeasure
- ,IfcIlluminanceMeasure
- ,IfcElectricResistanceMeasure
- ,IfcElectricConductanceMeasure
- ,IfcElectricChargeMeasure
- ,IfcDoseEquivalentMeasure
- ,IfcElectricCapacitanceMeasure
- ,IfcAbsorbedDoseMeasure
- ,IfcRadioActivityMeasure
- ,IfcRotationalFrequencyMeasure
- ,IfcTorqueMeasure
- ,IfcAccelerationMeasure
- ,IfcLinearForceMeasure
- ,IfcLinearStiffnessMeasure
- ,IfcModulusOfSubgradeReactionMeasure
- ,IfcModulusOfElasticityMeasure
- ,IfcMomentOfInertiaMeasure
- ,IfcPlanarForceMeasure
- ,IfcRotationalStiffnessMeasure
- ,IfcShearModulusMeasure
- ,IfcLinearMomentMeasure
- ,IfcLuminousIntensityDistributionMeasure
- ,IfcCurvatureMeasure
- ,IfcMassPerLengthMeasure
- ,IfcModulusOfLinearSubgradeReactionMeasure
- ,IfcModulusOfRotationalSubgradeReactionMeasure
- ,IfcRotationalMassMeasure
- ,IfcSectionalAreaIntegralMeasure
- ,IfcSectionModulusMeasure
- ,IfcTemperatureGradientMeasure
- ,IfcThermalExpansionCoefficientMeasure
- ,IfcWarpingConstantMeasure
- ,IfcWarpingMomentMeasure
- ,IfcSoundPowerMeasure
- ,IfcSoundPressureMeasure
- ,IfcHeatingValueMeasure
- ,IfcPHMeasure
- ,IfcIonConcentrationMeasure);
-END_TYPE;
-
-TYPE IfcDocumentSelect = SELECT
- (IfcDocumentReference
- ,IfcDocumentInformation);
-END_TYPE;
-
-TYPE IfcDraughtingCalloutElement = SELECT
- (IfcAnnotationCurveOccurrence
- ,IfcAnnotationTextOccurrence
- ,IfcAnnotationSymbolOccurrence);
-END_TYPE;
-
-TYPE IfcFillAreaStyleTileShapeSelect = SELECT
- (IfcFillAreaStyleTileSymbolWithStyle);
-END_TYPE;
-
-TYPE IfcFillStyleSelect = SELECT
- (IfcFillAreaStyleHatching
- ,IfcFillAreaStyleTiles
- ,IfcColour
- ,IfcExternallyDefinedHatchStyle);
-END_TYPE;
-
-TYPE IfcGeometricSetSelect = SELECT
- (IfcPoint
- ,IfcCurve
- ,IfcSurface);
-END_TYPE;
-
-TYPE IfcHatchLineDistanceSelect = SELECT
- (IfcOneDirectionRepeatFactor
- ,IfcPositiveLengthMeasure);
-END_TYPE;
-
-TYPE IfcLayeredItem = SELECT
- (IfcRepresentationItem
- ,IfcRepresentation);
-END_TYPE;
-
-TYPE IfcLibrarySelect = SELECT
- (IfcLibraryReference
- ,IfcLibraryInformation);
-END_TYPE;
-
-TYPE IfcLightDistributionDataSourceSelect = SELECT
- (IfcExternalReference
- ,IfcLightIntensityDistribution);
-END_TYPE;
-
-TYPE IfcMaterialSelect = SELECT
- (IfcMaterial
- ,IfcMaterialList
- ,IfcMaterialLayerSetUsage
- ,IfcMaterialLayerSet
- ,IfcMaterialLayer);
-END_TYPE;
-
-TYPE IfcMeasureValue = SELECT
- (IfcVolumeMeasure
- ,IfcTimeMeasure
- ,IfcThermodynamicTemperatureMeasure
- ,IfcSolidAngleMeasure
- ,IfcPositiveRatioMeasure
- ,IfcRatioMeasure
- ,IfcPositivePlaneAngleMeasure
- ,IfcPlaneAngleMeasure
- ,IfcParameterValue
- ,IfcNumericMeasure
- ,IfcMassMeasure
- ,IfcPositiveLengthMeasure
- ,IfcLengthMeasure
- ,IfcElectricCurrentMeasure
- ,IfcDescriptiveMeasure
- ,IfcCountMeasure
- ,IfcContextDependentMeasure
- ,IfcAreaMeasure
- ,IfcAmountOfSubstanceMeasure
- ,IfcLuminousIntensityMeasure
- ,IfcNormalisedRatioMeasure
- ,IfcComplexNumber);
-END_TYPE;
-
-TYPE IfcMetricValueSelect = SELECT
- (IfcDateTimeSelect
- ,IfcMeasureWithUnit
- ,IfcTable
- ,IfcText
- ,IfcTimeSeries
- ,IfcCostValue);
-END_TYPE;
-
-TYPE IfcObjectReferenceSelect = SELECT
- (IfcMaterial
- ,IfcPerson
- ,IfcDateAndTime
- ,IfcMaterialList
- ,IfcOrganization
- ,IfcCalendarDate
- ,IfcLocalTime
- ,IfcPersonAndOrganization
- ,IfcMaterialLayer
- ,IfcExternalReference
- ,IfcTimeSeries
- ,IfcAddress
- ,IfcAppliedValue);
-END_TYPE;
-
-TYPE IfcOrientationSelect = SELECT
- (IfcPlaneAngleMeasure
- ,IfcDirection);
-END_TYPE;
-
-TYPE IfcPointOrVertexPoint = SELECT
- (IfcPoint
- ,IfcVertexPoint);
-END_TYPE;
-
-TYPE IfcPresentationStyleSelect = SELECT
- (IfcNullStyle
- ,IfcCurveStyle
- ,IfcSymbolStyle
- ,IfcFillAreaStyle
- ,IfcTextStyle
- ,IfcSurfaceStyle);
-END_TYPE;
-
-TYPE IfcShell = SELECT
- (IfcClosedShell
- ,IfcOpenShell);
-END_TYPE;
-
-TYPE IfcSimpleValue = SELECT
- (IfcInteger
- ,IfcReal
- ,IfcBoolean
- ,IfcIdentifier
- ,IfcText
- ,IfcLabel
- ,IfcLogical);
-END_TYPE;
-
-TYPE IfcSizeSelect = SELECT
- (IfcRatioMeasure
- ,IfcLengthMeasure
- ,IfcDescriptiveMeasure
- ,IfcPositiveLengthMeasure
- ,IfcNormalisedRatioMeasure
- ,IfcPositiveRatioMeasure);
-END_TYPE;
-
-TYPE IfcSpecularHighlightSelect = SELECT
- (IfcSpecularExponent
- ,IfcSpecularRoughness);
-END_TYPE;
-
-TYPE IfcStructuralActivityAssignmentSelect = SELECT
- (IfcStructuralItem
- ,IfcElement);
-END_TYPE;
-
-TYPE IfcSurfaceOrFaceSurface = SELECT
- (IfcSurface
- ,IfcFaceSurface
- ,IfcFaceBasedSurfaceModel);
-END_TYPE;
-
-TYPE IfcSurfaceStyleElementSelect = SELECT
- (IfcSurfaceStyleShading
- ,IfcSurfaceStyleLighting
- ,IfcSurfaceStyleWithTextures
- ,IfcExternallyDefinedSurfaceStyle
- ,IfcSurfaceStyleRefraction);
-END_TYPE;
-
-TYPE IfcSymbolStyleSelect = SELECT
- (IfcColour);
-END_TYPE;
-
-TYPE IfcTextFontSelect = SELECT
- (IfcPreDefinedTextFont
- ,IfcExternallyDefinedTextFont);
-END_TYPE;
-
-TYPE IfcTextStyleSelect = SELECT
- (IfcTextStyleWithBoxCharacteristics
- ,IfcTextStyleTextModel);
-END_TYPE;
-
-TYPE IfcTrimmingSelect = SELECT
- (IfcCartesianPoint
- ,IfcParameterValue);
-END_TYPE;
-
-TYPE IfcUnit = SELECT
- (IfcDerivedUnit
- ,IfcNamedUnit
- ,IfcMonetaryUnit);
-END_TYPE;
-
-TYPE IfcValue = SELECT
- (IfcMeasureValue
- ,IfcSimpleValue
- ,IfcDerivedMeasureValue);
-END_TYPE;
-
-TYPE IfcVectorOrDirection = SELECT
- (IfcDirection
- ,IfcVector);
-END_TYPE;
-
-ENTITY Ifc2DCompositeCurve
- SUBTYPE OF (IfcCompositeCurve);
- WHERE
- WR1 : SELF\IfcCompositeCurve.ClosedCurve;
- WR2 : SELF\IfcCurve.Dim = 2;
-END_ENTITY;
-
-ENTITY IfcActionRequest
- SUBTYPE OF (IfcControl);
- RequestID : IfcIdentifier;
- UNIQUE
- UR2 : RequestID;
-END_ENTITY;
-
-ENTITY IfcActor
- SUPERTYPE OF (ONEOF
- (IfcOccupant))
- SUBTYPE OF (IfcObject);
- TheActor : IfcActorSelect;
- INVERSE
- IsActingUpon : SET [0:?] OF IfcRelAssignsToActor FOR RelatingActor;
-END_ENTITY;
-
-ENTITY IfcActorRole;
- Role : IfcRoleEnum;
- UserDefinedRole : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
- WHERE
- WR1 : (Role <> IfcRoleEnum.USERDEFINED) OR
- ((Role = IfcRoleEnum.USERDEFINED) AND
- EXISTS(SELF.UserDefinedRole));
-END_ENTITY;
-
-ENTITY IfcActuatorType
- SUBTYPE OF (IfcDistributionControlElementType);
- PredefinedType : IfcActuatorTypeEnum;
-END_ENTITY;
-
-ENTITY IfcAddress
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcPostalAddress
- ,IfcTelecomAddress));
- Purpose : OPTIONAL IfcAddressTypeEnum;
- Description : OPTIONAL IfcText;
- UserDefinedPurpose : OPTIONAL IfcLabel;
- INVERSE
- OfPerson : SET [0:?] OF IfcPerson FOR Addresses;
- OfOrganization : SET [0:?] OF IfcOrganization FOR Addresses;
- WHERE
- WR1 : (NOT(EXISTS(Purpose))) OR
- ((Purpose <> IfcAddressTypeEnum.USERDEFINED) OR
- ((Purpose = IfcAddressTypeEnum.USERDEFINED) AND
- EXISTS(SELF.UserDefinedPurpose)));
-END_ENTITY;
-
-ENTITY IfcAirTerminalBoxType
- SUBTYPE OF (IfcFlowControllerType);
- PredefinedType : IfcAirTerminalBoxTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcAirTerminalBoxTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcAirTerminalBoxTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcAirTerminalType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcAirTerminalTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcAirTerminalTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcAirTerminalTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcAirToAirHeatRecoveryType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcAirToAirHeatRecoveryTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcAirToAirHeatRecoveryTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcAlarmType
- SUBTYPE OF (IfcDistributionControlElementType);
- PredefinedType : IfcAlarmTypeEnum;
-END_ENTITY;
-
-ENTITY IfcAngularDimension
- SUBTYPE OF (IfcDimensionCurveDirectedCallout);
-END_ENTITY;
-
-ENTITY IfcAnnotation
- SUBTYPE OF (IfcProduct);
- INVERSE
- ContainedInStructure : SET [0:1] OF IfcRelContainedInSpatialStructure FOR RelatedElements;
-END_ENTITY;
-
-ENTITY IfcAnnotationCurveOccurrence
- SUPERTYPE OF (ONEOF
- (IfcDimensionCurve
- ,IfcProjectionCurve))
- SUBTYPE OF (IfcAnnotationOccurrence);
- WHERE
- WR31 : NOT(EXISTS(SELF\IfcStyledItem.Item)) OR
- ('IFC2X3.IFCCURVE' IN TYPEOF (SELF\IfcStyledItem.Item));
-END_ENTITY;
-
-ENTITY IfcAnnotationFillArea
- SUBTYPE OF (IfcGeometricRepresentationItem);
- OuterBoundary : IfcCurve;
- InnerBoundaries : OPTIONAL SET [1:?] OF IfcCurve;
-END_ENTITY;
-
-ENTITY IfcAnnotationFillAreaOccurrence
- SUBTYPE OF (IfcAnnotationOccurrence);
- FillStyleTarget : OPTIONAL IfcPoint;
- GlobalOrLocal : OPTIONAL IfcGlobalOrLocalEnum;
- WHERE
- WR31 : NOT(EXISTS(SELF\IfcStyledItem.Item)) OR
- ('IFC2X3.IFCANNOTATIONFILLAREA' IN TYPEOF (SELF\IfcStyledItem.Item));
-END_ENTITY;
-
-ENTITY IfcAnnotationOccurrence
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcAnnotationCurveOccurrence
- ,IfcAnnotationFillAreaOccurrence
- ,IfcAnnotationSurfaceOccurrence
- ,IfcAnnotationSymbolOccurrence
- ,IfcAnnotationTextOccurrence))
- SUBTYPE OF (IfcStyledItem);
-END_ENTITY;
-
-ENTITY IfcAnnotationSurface
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Item : IfcGeometricRepresentationItem;
- TextureCoordinates : OPTIONAL IfcTextureCoordinate;
- WHERE
- WR01 : SIZEOF([
- 'IFC2X3.IFCSURFACE',
- 'IFC2X3.IFCSHELLBASEDSURFACEMODEL',
- 'IFC2X3.IFCFACEBASEDSURFACEMODEL',
- 'IFC2X3.IFCSOLIDMODEL',
- 'IFC2X3.IFCBOOLEANRESULT',
- 'IFC2X3.IFCCSGPRIMITIVE3D']
- * TYPEOF(Item)
- ) >= 1;
-END_ENTITY;
-
-ENTITY IfcAnnotationSurfaceOccurrence
- SUBTYPE OF (IfcAnnotationOccurrence);
- WHERE
- WR31 : NOT(EXISTS(SELF\IfcStyledItem.Item)) OR
- (SIZEOF(
- ['IFC2X3.IFCSURFACE',
- 'IFC2X3.IFCFACEBASEDSURFACEMODEL',
- 'IFC2X3.IFCSHELLBASEDSURFACEMODEL',
- 'IFC2X3.IFCSOLIDMODEL'] *
- TYPEOF(SELF\IfcStyledItem.Item)) > 0);
-END_ENTITY;
-
-ENTITY IfcAnnotationSymbolOccurrence
- SUPERTYPE OF (ONEOF
- (IfcTerminatorSymbol))
- SUBTYPE OF (IfcAnnotationOccurrence);
- WHERE
- WR31 : NOT(EXISTS(SELF\IfcStyledItem.Item)) OR
- ('IFC2X3.IFCDEFINEDSYMBOL' IN TYPEOF (SELF\IfcStyledItem.Item));
-END_ENTITY;
-
-ENTITY IfcAnnotationTextOccurrence
- SUBTYPE OF (IfcAnnotationOccurrence);
- WHERE
- WR31 : NOT(EXISTS(SELF\IfcStyledItem.Item)) OR
- ('IFC2X3.IFCTEXTLITERAL' IN TYPEOF (SELF\IfcStyledItem.Item));
-END_ENTITY;
-
-ENTITY IfcApplication;
- ApplicationDeveloper : IfcOrganization;
- Version : IfcLabel;
- ApplicationFullName : IfcLabel;
- ApplicationIdentifier : IfcIdentifier;
- UNIQUE
- UR1 : ApplicationIdentifier;
- UR2 : ApplicationFullName, Version;
-END_ENTITY;
-
-ENTITY IfcAppliedValue
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcCostValue
- ,IfcEnvironmentalImpactValue));
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
- AppliedValue : OPTIONAL IfcAppliedValueSelect;
- UnitBasis : OPTIONAL IfcMeasureWithUnit;
- ApplicableDate : OPTIONAL IfcDateTimeSelect;
- FixedUntilDate : OPTIONAL IfcDateTimeSelect;
- INVERSE
- ValuesReferenced : SET [0:?] OF IfcReferencesValueDocument FOR ReferencingValues;
- ValueOfComponents : SET [0:?] OF IfcAppliedValueRelationship FOR ComponentOfTotal;
- IsComponentIn : SET [0:?] OF IfcAppliedValueRelationship FOR Components;
- WHERE
- WR1 : EXISTS (AppliedValue) OR
- EXISTS (ValueOfComponents);
-END_ENTITY;
-
-ENTITY IfcAppliedValueRelationship;
- ComponentOfTotal : IfcAppliedValue;
- Components : SET [1:?] OF IfcAppliedValue;
- ArithmeticOperator : IfcArithmeticOperatorEnum;
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
-END_ENTITY;
-
-ENTITY IfcApproval;
- Description : OPTIONAL IfcText;
- ApprovalDateTime : IfcDateTimeSelect;
- ApprovalStatus : OPTIONAL IfcLabel;
- ApprovalLevel : OPTIONAL IfcLabel;
- ApprovalQualifier : OPTIONAL IfcText;
- Name : IfcLabel;
- Identifier : IfcIdentifier;
- INVERSE
- Actors : SET [0:?] OF IfcApprovalActorRelationship FOR Approval;
- IsRelatedWith : SET [0:?] OF IfcApprovalRelationship FOR RelatedApproval;
- Relates : SET [0:?] OF IfcApprovalRelationship FOR RelatingApproval;
-END_ENTITY;
-
-ENTITY IfcApprovalActorRelationship;
- Actor : IfcActorSelect;
- Approval : IfcApproval;
- Role : IfcActorRole;
-END_ENTITY;
-
-ENTITY IfcApprovalPropertyRelationship;
- ApprovedProperties : SET [1:?] OF IfcProperty;
- Approval : IfcApproval;
-END_ENTITY;
-
-ENTITY IfcApprovalRelationship;
- RelatedApproval : IfcApproval;
- RelatingApproval : IfcApproval;
- Description : OPTIONAL IfcText;
- Name : IfcLabel;
-END_ENTITY;
-
-ENTITY IfcArbitraryClosedProfileDef
- SUPERTYPE OF (ONEOF
- (IfcArbitraryProfileDefWithVoids))
- SUBTYPE OF (IfcProfileDef);
- OuterCurve : IfcCurve;
- WHERE
- WR1 : OuterCurve.Dim = 2;
- WR2 : NOT('IFC2X3.IFCLINE' IN TYPEOF(OuterCurve));
- WR3 : NOT('IFC2X3.IFCOFFSETCURVE2D' IN TYPEOF(OuterCurve));
-END_ENTITY;
-
-ENTITY IfcArbitraryOpenProfileDef
- SUPERTYPE OF (ONEOF
- (IfcCenterLineProfileDef))
- SUBTYPE OF (IfcProfileDef);
- Curve : IfcBoundedCurve;
- WHERE
- WR11 : ('IFC2X3.IFCCENTERLINEPROFILEDEF' IN TYPEOF(SELF)) OR
- (SELF\IfcProfileDef.ProfileType = IfcProfileTypeEnum.CURVE);
- WR12 : Curve.Dim = 2;
-END_ENTITY;
-
-ENTITY IfcArbitraryProfileDefWithVoids
- SUBTYPE OF (IfcArbitraryClosedProfileDef);
- InnerCurves : SET [1:?] OF IfcCurve;
- WHERE
- WR1 : SELF\IfcProfileDef.ProfileType = AREA;
- WR2 : SIZEOF(QUERY(temp <* InnerCurves | temp.Dim <> 2)) = 0;
- WR3 : SIZEOF(QUERY(temp <* InnerCurves | 'IFC2X3.IFCLINE' IN TYPEOF(temp))) = 0;
-END_ENTITY;
-
-ENTITY IfcAsset
- SUBTYPE OF (IfcGroup);
- AssetID : IfcIdentifier;
- OriginalValue : IfcCostValue;
- CurrentValue : IfcCostValue;
- TotalReplacementCost : IfcCostValue;
- Owner : IfcActorSelect;
- User : IfcActorSelect;
- ResponsiblePerson : IfcPerson;
- IncorporationDate : IfcCalendarDate;
- DepreciatedValue : IfcCostValue;
- WHERE
- WR1 : SIZEOF(QUERY(Temp <* SELF\IfcGroup.IsGroupedBy.RelatedObjects | NOT('IFC2X3.IFCELEMENT' IN TYPEOF(Temp)))) = 0;
-END_ENTITY;
-
-ENTITY IfcAsymmetricIShapeProfileDef
- SUBTYPE OF (IfcIShapeProfileDef);
- TopFlangeWidth : IfcPositiveLengthMeasure;
- TopFlangeThickness : OPTIONAL IfcPositiveLengthMeasure;
- TopFlangeFilletRadius : OPTIONAL IfcPositiveLengthMeasure;
- CentreOfGravityInY : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcAxis1Placement
- SUBTYPE OF (IfcPlacement);
- Axis : OPTIONAL IfcDirection;
- DERIVE
- Z : IfcDirection := NVL (IfcNormalise(Axis), IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([0.0,0.0,1.0]));
- WHERE
- WR1 : (NOT (EXISTS (Axis))) OR (Axis.Dim = 3);
- WR2 : SELF\IfcPlacement.Location.Dim = 3;
-END_ENTITY;
-
-ENTITY IfcAxis2Placement2D
- SUBTYPE OF (IfcPlacement);
- RefDirection : OPTIONAL IfcDirection;
- DERIVE
- P : LIST [2:2] OF IfcDirection := IfcBuild2Axes(RefDirection);
- WHERE
- WR1 : (NOT (EXISTS (RefDirection))) OR (RefDirection.Dim = 2);
- WR2 : SELF\IfcPlacement.Location.Dim = 2;
-END_ENTITY;
-
-ENTITY IfcAxis2Placement3D
- SUBTYPE OF (IfcPlacement);
- Axis : OPTIONAL IfcDirection;
- RefDirection : OPTIONAL IfcDirection;
- DERIVE
- P : LIST [3:3] OF IfcDirection := IfcBuildAxes(Axis, RefDirection);
- WHERE
- WR1 : SELF\IfcPlacement.Location.Dim = 3;
- WR2 : (NOT (EXISTS (Axis))) OR (Axis.Dim = 3);
- WR3 : (NOT (EXISTS (RefDirection))) OR (RefDirection.Dim = 3);
- WR4 : (NOT (EXISTS (Axis))) OR (NOT (EXISTS (RefDirection))) OR (IfcCrossProduct(Axis,RefDirection).Magnitude > 0.0);
- WR5 : NOT ((EXISTS (Axis)) XOR (EXISTS (RefDirection)));
-END_ENTITY;
-
-ENTITY IfcBSplineCurve
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBezierCurve))
- SUBTYPE OF (IfcBoundedCurve);
- Degree : INTEGER;
- ControlPointsList : LIST [2:?] OF IfcCartesianPoint;
- CurveForm : IfcBSplineCurveForm;
- ClosedCurve : LOGICAL;
- SelfIntersect : LOGICAL;
- DERIVE
- ControlPoints : ARRAY [0:255] OF IfcCartesianPoint := IfcListToArray(ControlPointsList,0,UpperIndexOnControlPoints);
- UpperIndexOnControlPoints : INTEGER := (SIZEOF(ControlPointsList) - 1);
- WHERE
- WR41 : SIZEOF(QUERY(Temp <* ControlPointsList |
- Temp.Dim <> ControlPointsList[1].Dim))
- = 0;
-END_ENTITY;
-
-ENTITY IfcBeam
- SUBTYPE OF (IfcBuildingElement);
-END_ENTITY;
-
-ENTITY IfcBeamType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcBeamTypeEnum;
-END_ENTITY;
-
-ENTITY IfcBezierCurve
- SUPERTYPE OF (ONEOF
- (IfcRationalBezierCurve))
- SUBTYPE OF (IfcBSplineCurve);
-END_ENTITY;
-
-ENTITY IfcBlobTexture
- SUBTYPE OF (IfcSurfaceTexture);
- RasterFormat : IfcIdentifier;
- RasterCode : BOOLEAN;
- WHERE
- WR11 : SELF.RasterFormat IN ['BMP', 'JPG', 'GIF', 'PNG'];
-END_ENTITY;
-
-ENTITY IfcBlock
- SUBTYPE OF (IfcCsgPrimitive3D);
- XLength : IfcPositiveLengthMeasure;
- YLength : IfcPositiveLengthMeasure;
- ZLength : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcBoilerType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcBoilerTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcBoilerTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcBoilerTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcBooleanClippingResult
- SUBTYPE OF (IfcBooleanResult);
- WHERE
- WR1 : ('IFC2X3.IFCSWEPTAREASOLID' IN TYPEOF(FirstOperand)) OR ('IFC2X3.IFCBOOLEANCLIPPINGRESULT' IN TYPEOF(FirstOperand));
- WR2 : ('IFC2X3.IFCHALFSPACESOLID' IN TYPEOF(SecondOperand));
- WR3 : Operator = DIFFERENCE;
-END_ENTITY;
-
-ENTITY IfcBooleanResult
- SUPERTYPE OF (ONEOF
- (IfcBooleanClippingResult))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Operator : IfcBooleanOperator;
- FirstOperand : IfcBooleanOperand;
- SecondOperand : IfcBooleanOperand;
- DERIVE
- Dim : IfcDimensionCount := FirstOperand.Dim;
- WHERE
- WR1 : FirstOperand.Dim = SecondOperand.Dim;
-END_ENTITY;
-
-ENTITY IfcBoundaryCondition
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBoundaryEdgeCondition
- ,IfcBoundaryFaceCondition
- ,IfcBoundaryNodeCondition));
- Name : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcBoundaryEdgeCondition
- SUBTYPE OF (IfcBoundaryCondition);
- LinearStiffnessByLengthX : OPTIONAL IfcModulusOfLinearSubgradeReactionMeasure;
- LinearStiffnessByLengthY : OPTIONAL IfcModulusOfLinearSubgradeReactionMeasure;
- LinearStiffnessByLengthZ : OPTIONAL IfcModulusOfLinearSubgradeReactionMeasure;
- RotationalStiffnessByLengthX : OPTIONAL IfcModulusOfRotationalSubgradeReactionMeasure;
- RotationalStiffnessByLengthY : OPTIONAL IfcModulusOfRotationalSubgradeReactionMeasure;
- RotationalStiffnessByLengthZ : OPTIONAL IfcModulusOfRotationalSubgradeReactionMeasure;
-END_ENTITY;
-
-ENTITY IfcBoundaryFaceCondition
- SUBTYPE OF (IfcBoundaryCondition);
- LinearStiffnessByAreaX : OPTIONAL IfcModulusOfSubgradeReactionMeasure;
- LinearStiffnessByAreaY : OPTIONAL IfcModulusOfSubgradeReactionMeasure;
- LinearStiffnessByAreaZ : OPTIONAL IfcModulusOfSubgradeReactionMeasure;
-END_ENTITY;
-
-ENTITY IfcBoundaryNodeCondition
- SUPERTYPE OF (ONEOF
- (IfcBoundaryNodeConditionWarping))
- SUBTYPE OF (IfcBoundaryCondition);
- LinearStiffnessX : OPTIONAL IfcLinearStiffnessMeasure;
- LinearStiffnessY : OPTIONAL IfcLinearStiffnessMeasure;
- LinearStiffnessZ : OPTIONAL IfcLinearStiffnessMeasure;
- RotationalStiffnessX : OPTIONAL IfcRotationalStiffnessMeasure;
- RotationalStiffnessY : OPTIONAL IfcRotationalStiffnessMeasure;
- RotationalStiffnessZ : OPTIONAL IfcRotationalStiffnessMeasure;
-END_ENTITY;
-
-ENTITY IfcBoundaryNodeConditionWarping
- SUBTYPE OF (IfcBoundaryNodeCondition);
- WarpingStiffness : OPTIONAL IfcWarpingMomentMeasure;
-END_ENTITY;
-
-ENTITY IfcBoundedCurve
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBSplineCurve
- ,IfcCompositeCurve
- ,IfcPolyline
- ,IfcTrimmedCurve))
- SUBTYPE OF (IfcCurve);
-END_ENTITY;
-
-ENTITY IfcBoundedSurface
- SUPERTYPE OF (ONEOF
- (IfcCurveBoundedPlane
- ,IfcRectangularTrimmedSurface))
- SUBTYPE OF (IfcSurface);
-END_ENTITY;
-
-ENTITY IfcBoundingBox
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Corner : IfcCartesianPoint;
- XDim : IfcPositiveLengthMeasure;
- YDim : IfcPositiveLengthMeasure;
- ZDim : IfcPositiveLengthMeasure;
- DERIVE
- Dim : IfcDimensionCount := 3;
-END_ENTITY;
-
-ENTITY IfcBoxedHalfSpace
- SUBTYPE OF (IfcHalfSpaceSolid);
- Enclosure : IfcBoundingBox;
- WHERE
- WR1 : NOT ('IFC2X3.IFCCURVEBOUNDEDPLANE' IN TYPEOF(SELF\IfcHalfSpaceSolid.BaseSurface));
-END_ENTITY;
-
-ENTITY IfcBuilding
- SUBTYPE OF (IfcSpatialStructureElement);
- ElevationOfRefHeight : OPTIONAL IfcLengthMeasure;
- ElevationOfTerrain : OPTIONAL IfcLengthMeasure;
- BuildingAddress : OPTIONAL IfcPostalAddress;
-END_ENTITY;
-
-ENTITY IfcBuildingElement
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBeam
- ,IfcBuildingElementComponent
- ,IfcBuildingElementProxy
- ,IfcColumn
- ,IfcCovering
- ,IfcCurtainWall
- ,IfcDoor
- ,IfcFooting
- ,IfcMember
- ,IfcPile
- ,IfcPlate
- ,IfcRailing
- ,IfcRamp
- ,IfcRampFlight
- ,IfcRoof
- ,IfcSlab
- ,IfcStair
- ,IfcStairFlight
- ,IfcWall
- ,IfcWindow))
- SUBTYPE OF (IfcElement);
-END_ENTITY;
-
-ENTITY IfcBuildingElementComponent
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBuildingElementPart
- ,IfcReinforcingElement))
- SUBTYPE OF (IfcBuildingElement);
-END_ENTITY;
-
-ENTITY IfcBuildingElementPart
- SUBTYPE OF (IfcBuildingElementComponent);
-END_ENTITY;
-
-ENTITY IfcBuildingElementProxy
- SUBTYPE OF (IfcBuildingElement);
- CompositionType : OPTIONAL IfcElementCompositionEnum;
- WHERE
- WR1 : EXISTS(SELF\IfcRoot.Name);
-END_ENTITY;
-
-ENTITY IfcBuildingElementProxyType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcBuildingElementProxyTypeEnum;
-END_ENTITY;
-
-ENTITY IfcBuildingElementType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBeamType
- ,IfcBuildingElementProxyType
- ,IfcColumnType
- ,IfcCoveringType
- ,IfcCurtainWallType
- ,IfcMemberType
- ,IfcPlateType
- ,IfcRailingType
- ,IfcRampFlightType
- ,IfcSlabType
- ,IfcStairFlightType
- ,IfcWallType))
- SUBTYPE OF (IfcElementType);
-END_ENTITY;
-
-ENTITY IfcBuildingStorey
- SUBTYPE OF (IfcSpatialStructureElement);
- Elevation : OPTIONAL IfcLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcCShapeProfileDef
- SUBTYPE OF (IfcParameterizedProfileDef);
- Depth : IfcPositiveLengthMeasure;
- Width : IfcPositiveLengthMeasure;
- WallThickness : IfcPositiveLengthMeasure;
- Girth : IfcPositiveLengthMeasure;
- InternalFilletRadius : OPTIONAL IfcPositiveLengthMeasure;
- CentreOfGravityInX : OPTIONAL IfcPositiveLengthMeasure;
- WHERE
- WR1 : Girth < (Depth / 2.);
- WR2 : NOT(EXISTS(InternalFilletRadius)) OR
- ((InternalFilletRadius <= Width/2.) AND (InternalFilletRadius <= Depth/2.));
- WR3 : (WallThickness < Width/2.) AND (WallThickness < Depth/2.);
-END_ENTITY;
-
-ENTITY IfcCableCarrierFittingType
- SUBTYPE OF (IfcFlowFittingType);
- PredefinedType : IfcCableCarrierFittingTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcCableCarrierFittingTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcCableCarrierFittingTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcCableCarrierSegmentType
- SUBTYPE OF (IfcFlowSegmentType);
- PredefinedType : IfcCableCarrierSegmentTypeEnum;
-END_ENTITY;
-
-ENTITY IfcCableSegmentType
- SUBTYPE OF (IfcFlowSegmentType);
- PredefinedType : IfcCableSegmentTypeEnum;
-END_ENTITY;
-
-ENTITY IfcCalendarDate;
- DayComponent : IfcDayInMonthNumber;
- MonthComponent : IfcMonthInYearNumber;
- YearComponent : IfcYearNumber;
- WHERE
- WR21 : IfcValidCalendarDate (SELF);
-END_ENTITY;
-
-ENTITY IfcCartesianPoint
- SUBTYPE OF (IfcPoint);
- Coordinates : LIST [1:3] OF IfcLengthMeasure;
- DERIVE
- Dim : IfcDimensionCount := HIINDEX(Coordinates);
- WHERE
- WR1 : HIINDEX(Coordinates) >= 2;
-END_ENTITY;
-
-ENTITY IfcCartesianTransformationOperator
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcCartesianTransformationOperator2D
- ,IfcCartesianTransformationOperator3D))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Axis1 : OPTIONAL IfcDirection;
- Axis2 : OPTIONAL IfcDirection;
- LocalOrigin : IfcCartesianPoint;
- Scale : OPTIONAL REAL;
- DERIVE
- Scl : REAL := NVL(Scale, 1.0);
- Dim : IfcDimensionCount := LocalOrigin.Dim;
- WHERE
- WR1 : Scl > 0.0;
-END_ENTITY;
-
-ENTITY IfcCartesianTransformationOperator2D
- SUPERTYPE OF (ONEOF
- (IfcCartesianTransformationOperator2DnonUniform))
- SUBTYPE OF (IfcCartesianTransformationOperator);
- DERIVE
- U : LIST [2:2] OF IfcDirection := IfcBaseAxis(2,SELF\IfcCartesianTransformationOperator.Axis1,
- SELF\IfcCartesianTransformationOperator.Axis2,?);
- WHERE
- WR1 : SELF\IfcCartesianTransformationOperator.Dim = 2;
- WR2 : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis1)) OR
- (SELF\IfcCartesianTransformationOperator.Axis1.Dim = 2);
- WR3 : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis2)) OR
- (SELF\IfcCartesianTransformationOperator.Axis2.Dim = 2);
-END_ENTITY;
-
-ENTITY IfcCartesianTransformationOperator2DnonUniform
- SUBTYPE OF (IfcCartesianTransformationOperator2D);
- Scale2 : OPTIONAL REAL;
- DERIVE
- Scl2 : REAL := NVL(Scale2, SELF\IfcCartesianTransformationOperator.Scl);
- WHERE
- WR1 : Scl2 > 0.0;
-END_ENTITY;
-
-ENTITY IfcCartesianTransformationOperator3D
- SUPERTYPE OF (ONEOF
- (IfcCartesianTransformationOperator3DnonUniform))
- SUBTYPE OF (IfcCartesianTransformationOperator);
- Axis3 : OPTIONAL IfcDirection;
- DERIVE
- U : LIST [3:3] OF IfcDirection := IfcBaseAxis(3,SELF\IfcCartesianTransformationOperator.Axis1,
- SELF\IfcCartesianTransformationOperator.Axis2,Axis3);
- WHERE
- WR1 : SELF\IfcCartesianTransformationOperator.Dim = 3;
- WR2 : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis1)) OR
- (SELF\IfcCartesianTransformationOperator.Axis1.Dim = 3);
- WR3 : NOT(EXISTS(SELF\IfcCartesianTransformationOperator.Axis2)) OR
- (SELF\IfcCartesianTransformationOperator.Axis2.Dim = 3);
- WR4 : NOT(EXISTS(Axis3)) OR (Axis3.Dim = 3);
-END_ENTITY;
-
-ENTITY IfcCartesianTransformationOperator3DnonUniform
- SUBTYPE OF (IfcCartesianTransformationOperator3D);
- Scale2 : OPTIONAL REAL;
- Scale3 : OPTIONAL REAL;
- DERIVE
- Scl2 : REAL := NVL(Scale2, SELF\IfcCartesianTransformationOperator.Scl);
- Scl3 : REAL := NVL(Scale3, SELF\IfcCartesianTransformationOperator.Scl);
- WHERE
- WR1 : Scl2 > 0.0;
- WR2 : Scl3 > 0.0;
-END_ENTITY;
-
-ENTITY IfcCenterLineProfileDef
- SUBTYPE OF (IfcArbitraryOpenProfileDef);
- Thickness : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcChamferEdgeFeature
- SUBTYPE OF (IfcEdgeFeature);
- Width : OPTIONAL IfcPositiveLengthMeasure;
- Height : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcChillerType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcChillerTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcChillerTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcChillerTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcCircle
- SUBTYPE OF (IfcConic);
- Radius : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcCircleHollowProfileDef
- SUBTYPE OF (IfcCircleProfileDef);
- WallThickness : IfcPositiveLengthMeasure;
- WHERE
- WR1 : WallThickness < SELF\IfcCircleProfileDef.Radius;
-END_ENTITY;
-
-ENTITY IfcCircleProfileDef
- SUPERTYPE OF (ONEOF
- (IfcCircleHollowProfileDef))
- SUBTYPE OF (IfcParameterizedProfileDef);
- Radius : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcClassification;
- Source : IfcLabel;
- Edition : IfcLabel;
- EditionDate : OPTIONAL IfcCalendarDate;
- Name : IfcLabel;
- INVERSE
- Contains : SET [0:?] OF IfcClassificationItem FOR ItemOf;
-END_ENTITY;
-
-ENTITY IfcClassificationItem;
- Notation : IfcClassificationNotationFacet;
- ItemOf : OPTIONAL IfcClassification;
- Title : IfcLabel;
- INVERSE
- IsClassifiedItemIn : SET [0:1] OF IfcClassificationItemRelationship FOR RelatedItems;
- IsClassifyingItemIn : SET [0:1] OF IfcClassificationItemRelationship FOR RelatingItem;
-END_ENTITY;
-
-ENTITY IfcClassificationItemRelationship;
- RelatingItem : IfcClassificationItem;
- RelatedItems : SET [1:?] OF IfcClassificationItem;
-END_ENTITY;
-
-ENTITY IfcClassificationNotation;
- NotationFacets : SET [1:?] OF IfcClassificationNotationFacet;
-END_ENTITY;
-
-ENTITY IfcClassificationNotationFacet;
- NotationValue : IfcLabel;
-END_ENTITY;
-
-ENTITY IfcClassificationReference
- SUBTYPE OF (IfcExternalReference);
- ReferencedSource : OPTIONAL IfcClassification;
-END_ENTITY;
-
-ENTITY IfcClosedShell
- SUBTYPE OF (IfcConnectedFaceSet);
-END_ENTITY;
-
-ENTITY IfcCoilType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcCoilTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcCoilTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcCoilTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcColourRgb
- SUBTYPE OF (IfcColourSpecification);
- Red : IfcNormalisedRatioMeasure;
- Green : IfcNormalisedRatioMeasure;
- Blue : IfcNormalisedRatioMeasure;
-END_ENTITY;
-
-ENTITY IfcColourSpecification
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcColourRgb));
- Name : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcColumn
- SUBTYPE OF (IfcBuildingElement);
-END_ENTITY;
-
-ENTITY IfcColumnType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcColumnTypeEnum;
-END_ENTITY;
-
-ENTITY IfcComplexProperty
- SUBTYPE OF (IfcProperty);
- UsageName : IfcIdentifier;
- HasProperties : SET [1:?] OF IfcProperty;
- WHERE
- WR21 : SIZEOF(QUERY(temp <* HasProperties | SELF :=: temp)) = 0;
- WR22 : IfcUniquePropertyName(HasProperties);
-END_ENTITY;
-
-ENTITY IfcCompositeCurve
- SUPERTYPE OF (ONEOF
- (Ifc2DCompositeCurve))
- SUBTYPE OF (IfcBoundedCurve);
- Segments : LIST [1:?] OF IfcCompositeCurveSegment;
- SelfIntersect : LOGICAL;
- DERIVE
- NSegments : INTEGER := SIZEOF(Segments);
- ClosedCurve : LOGICAL := Segments[NSegments].Transition <> Discontinuous;
- WHERE
- WR41 : ((NOT ClosedCurve) AND (SIZEOF(QUERY(Temp <* Segments | Temp.Transition = Discontinuous)) = 1)) OR ((ClosedCurve) AND (SIZEOF(QUERY(Temp <* Segments | Temp.Transition = Discontinuous)) = 0));
- WR42 : SIZEOF( QUERY( Temp <* Segments | Temp.Dim <> Segments[1].Dim)) = 0;
-END_ENTITY;
-
-ENTITY IfcCompositeCurveSegment
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Transition : IfcTransitionCode;
- SameSense : BOOLEAN;
- ParentCurve : IfcCurve;
- DERIVE
- Dim : IfcDimensionCount := ParentCurve.Dim;
- INVERSE
- UsingCurves : SET [1:?] OF IfcCompositeCurve FOR Segments;
- WHERE
- WR1 : ('IFC2X3.IFCBOUNDEDCURVE' IN TYPEOF(ParentCurve));
-END_ENTITY;
-
-ENTITY IfcCompositeProfileDef
- SUBTYPE OF (IfcProfileDef);
- Profiles : SET [2:?] OF IfcProfileDef;
- Label : OPTIONAL IfcLabel;
- WHERE
- WR1 : SIZEOF(QUERY(temp <* Profiles | temp.ProfileType <> Profiles[1].ProfileType)) = 0;
- WR2 : SIZEOF(QUERY(temp <* Profiles | 'IFC2X3.IFCCOMPOSITEPROFILEDEF' IN TYPEOF(temp))) = 0;
-END_ENTITY;
-
-ENTITY IfcCompressorType
- SUBTYPE OF (IfcFlowMovingDeviceType);
- PredefinedType : IfcCompressorTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcCompressorTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcCompressorTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcCondenserType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcCondenserTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcCondenserTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcCondenserTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcCondition
- SUBTYPE OF (IfcGroup);
-END_ENTITY;
-
-ENTITY IfcConditionCriterion
- SUBTYPE OF (IfcControl);
- Criterion : IfcConditionCriterionSelect;
- CriterionDateTime : IfcDateTimeSelect;
- WHERE
- WR1 : EXISTS(SELF\IfcRoot.Name);
-END_ENTITY;
-
-ENTITY IfcConic
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcCircle
- ,IfcEllipse))
- SUBTYPE OF (IfcCurve);
- Position : IfcAxis2Placement;
-END_ENTITY;
-
-ENTITY IfcConnectedFaceSet
- SUPERTYPE OF (ONEOF
- (IfcClosedShell
- ,IfcOpenShell))
- SUBTYPE OF (IfcTopologicalRepresentationItem);
- CfsFaces : SET [1:?] OF IfcFace;
-END_ENTITY;
-
-ENTITY IfcConnectionCurveGeometry
- SUBTYPE OF (IfcConnectionGeometry);
- CurveOnRelatingElement : IfcCurveOrEdgeCurve;
- CurveOnRelatedElement : OPTIONAL IfcCurveOrEdgeCurve;
-END_ENTITY;
-
-ENTITY IfcConnectionGeometry
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcConnectionCurveGeometry
- ,IfcConnectionPointGeometry
- ,IfcConnectionPortGeometry
- ,IfcConnectionSurfaceGeometry));
-END_ENTITY;
-
-ENTITY IfcConnectionPointEccentricity
- SUBTYPE OF (IfcConnectionPointGeometry);
- EccentricityInX : OPTIONAL IfcLengthMeasure;
- EccentricityInY : OPTIONAL IfcLengthMeasure;
- EccentricityInZ : OPTIONAL IfcLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcConnectionPointGeometry
- SUPERTYPE OF (ONEOF
- (IfcConnectionPointEccentricity))
- SUBTYPE OF (IfcConnectionGeometry);
- PointOnRelatingElement : IfcPointOrVertexPoint;
- PointOnRelatedElement : OPTIONAL IfcPointOrVertexPoint;
-END_ENTITY;
-
-ENTITY IfcConnectionPortGeometry
- SUBTYPE OF (IfcConnectionGeometry);
- LocationAtRelatingElement : IfcAxis2Placement;
- LocationAtRelatedElement : OPTIONAL IfcAxis2Placement;
- ProfileOfPort : IfcProfileDef;
-END_ENTITY;
-
-ENTITY IfcConnectionSurfaceGeometry
- SUBTYPE OF (IfcConnectionGeometry);
- SurfaceOnRelatingElement : IfcSurfaceOrFaceSurface;
- SurfaceOnRelatedElement : OPTIONAL IfcSurfaceOrFaceSurface;
-END_ENTITY;
-
-ENTITY IfcConstraint
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcMetric
- ,IfcObjective));
- Name : IfcLabel;
- Description : OPTIONAL IfcText;
- ConstraintGrade : IfcConstraintEnum;
- ConstraintSource : OPTIONAL IfcLabel;
- CreatingActor : OPTIONAL IfcActorSelect;
- CreationTime : OPTIONAL IfcDateTimeSelect;
- UserDefinedGrade : OPTIONAL IfcLabel;
- INVERSE
- ClassifiedAs : SET [0:?] OF IfcConstraintClassificationRelationship FOR ClassifiedConstraint;
- RelatesConstraints : SET [0:?] OF IfcConstraintRelationship FOR RelatingConstraint;
- IsRelatedWith : SET [0:?] OF IfcConstraintRelationship FOR RelatedConstraints;
- PropertiesForConstraint : SET [0:?] OF IfcPropertyConstraintRelationship FOR RelatingConstraint;
- Aggregates : SET [0:?] OF IfcConstraintAggregationRelationship FOR RelatingConstraint;
- IsAggregatedIn : SET [0:?] OF IfcConstraintAggregationRelationship FOR RelatedConstraints;
- WHERE
- WR11 : (ConstraintGrade <> IfcConstraintEnum.USERDEFINED) OR
- ((ConstraintGrade = IfcConstraintEnum.USERDEFINED) AND EXISTS(SELF\IfcConstraint.UserDefinedGrade));
-END_ENTITY;
-
-ENTITY IfcConstraintAggregationRelationship;
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
- RelatingConstraint : IfcConstraint;
- RelatedConstraints : LIST [1:?] OF UNIQUE IfcConstraint;
- LogicalAggregator : IfcLogicalOperatorEnum;
- WHERE
- WR11 : SIZEOF(QUERY(temp <* RelatedConstraints |
- temp :=: RelatingConstraint
- )) = 0;
-END_ENTITY;
-
-ENTITY IfcConstraintClassificationRelationship;
- ClassifiedConstraint : IfcConstraint;
- RelatedClassifications : SET [1:?] OF IfcClassificationNotationSelect;
-END_ENTITY;
-
-ENTITY IfcConstraintRelationship;
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
- RelatingConstraint : IfcConstraint;
- RelatedConstraints : SET [1:?] OF IfcConstraint;
- WHERE
- WR11 : SIZEOF(QUERY(temp <* RelatedConstraints | temp :=: RelatingConstraint )) = 0;
-END_ENTITY;
-
-ENTITY IfcConstructionEquipmentResource
- SUBTYPE OF (IfcConstructionResource);
-END_ENTITY;
-
-ENTITY IfcConstructionMaterialResource
- SUBTYPE OF (IfcConstructionResource);
- Suppliers : OPTIONAL SET [1:?] OF IfcActorSelect;
- UsageRatio : OPTIONAL IfcRatioMeasure;
- WHERE
- WR1 : SIZEOF(SELF\IfcResource.ResourceOf) <=1;
- WR2 : NOT(EXISTS(SELF\IfcResource.ResourceOf[1])) OR
- (SELF\IfcResource.ResourceOf[1].RelatedObjectsType = IfcObjectTypeEnum.PRODUCT);
-END_ENTITY;
-
-ENTITY IfcConstructionProductResource
- SUBTYPE OF (IfcConstructionResource);
- WHERE
- WR1 : SIZEOF(SELF\IfcResource.ResourceOf) <=1;
- WR2 : NOT(EXISTS(SELF\IfcResource.ResourceOf[1])) OR
- (SELF\IfcResource.ResourceOf[1].RelatedObjectsType = IfcObjectTypeEnum.PRODUCT);
-END_ENTITY;
-
-ENTITY IfcConstructionResource
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcConstructionEquipmentResource
- ,IfcConstructionMaterialResource
- ,IfcConstructionProductResource
- ,IfcCrewResource
- ,IfcLaborResource
- ,IfcSubContractResource))
- SUBTYPE OF (IfcResource);
- ResourceIdentifier : OPTIONAL IfcIdentifier;
- ResourceGroup : OPTIONAL IfcLabel;
- ResourceConsumption : OPTIONAL IfcResourceConsumptionEnum;
- BaseQuantity : OPTIONAL IfcMeasureWithUnit;
-END_ENTITY;
-
-ENTITY IfcContextDependentUnit
- SUBTYPE OF (IfcNamedUnit);
- Name : IfcLabel;
-END_ENTITY;
-
-ENTITY IfcControl
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcActionRequest
- ,IfcConditionCriterion
- ,IfcCostItem
- ,IfcCostSchedule
- ,IfcEquipmentStandard
- ,IfcFurnitureStandard
- ,IfcPerformanceHistory
- ,IfcPermit
- ,IfcProjectOrder
- ,IfcProjectOrderRecord
- ,IfcScheduleTimeControl
- ,IfcServiceLife
- ,IfcSpaceProgram
- ,IfcTimeSeriesSchedule
- ,IfcWorkControl))
- SUBTYPE OF (IfcObject);
- INVERSE
- Controls : SET [0:?] OF IfcRelAssignsToControl FOR RelatingControl;
-END_ENTITY;
-
-ENTITY IfcControllerType
- SUBTYPE OF (IfcDistributionControlElementType);
- PredefinedType : IfcControllerTypeEnum;
-END_ENTITY;
-
-ENTITY IfcConversionBasedUnit
- SUBTYPE OF (IfcNamedUnit);
- Name : IfcLabel;
- ConversionFactor : IfcMeasureWithUnit;
-END_ENTITY;
-
-ENTITY IfcCooledBeamType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcCooledBeamTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcCooledBeamTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcCooledBeamTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcCoolingTowerType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcCoolingTowerTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcCoolingTowerTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcCoolingTowerTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcCoordinatedUniversalTimeOffset;
- HourOffset : IfcHourInDay;
- MinuteOffset : OPTIONAL IfcMinuteInHour;
- Sense : IfcAheadOrBehind;
-END_ENTITY;
-
-ENTITY IfcCostItem
- SUBTYPE OF (IfcControl);
-END_ENTITY;
-
-ENTITY IfcCostSchedule
- SUBTYPE OF (IfcControl);
- SubmittedBy : OPTIONAL IfcActorSelect;
- PreparedBy : OPTIONAL IfcActorSelect;
- SubmittedOn : OPTIONAL IfcDateTimeSelect;
- Status : OPTIONAL IfcLabel;
- TargetUsers : OPTIONAL SET [1:?] OF IfcActorSelect;
- UpdateDate : OPTIONAL IfcDateTimeSelect;
- ID : IfcIdentifier;
- PredefinedType : IfcCostScheduleTypeEnum;
- UNIQUE
- UR2 : ID;
-END_ENTITY;
-
-ENTITY IfcCostValue
- SUBTYPE OF (IfcAppliedValue);
- CostType : IfcLabel;
- Condition : OPTIONAL IfcText;
-END_ENTITY;
-
-ENTITY IfcCovering
- SUBTYPE OF (IfcBuildingElement);
- PredefinedType : OPTIONAL IfcCoveringTypeEnum;
- INVERSE
- CoversSpaces : SET [0:1] OF IfcRelCoversSpaces FOR RelatedCoverings;
- Covers : SET [0:1] OF IfcRelCoversBldgElements FOR RelatedCoverings;
-END_ENTITY;
-
-ENTITY IfcCoveringType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcCoveringTypeEnum;
-END_ENTITY;
-
-ENTITY IfcCraneRailAShapeProfileDef
- SUBTYPE OF (IfcParameterizedProfileDef);
- OverallHeight : IfcPositiveLengthMeasure;
- BaseWidth2 : IfcPositiveLengthMeasure;
- Radius : OPTIONAL IfcPositiveLengthMeasure;
- HeadWidth : IfcPositiveLengthMeasure;
- HeadDepth2 : IfcPositiveLengthMeasure;
- HeadDepth3 : IfcPositiveLengthMeasure;
- WebThickness : IfcPositiveLengthMeasure;
- BaseWidth4 : IfcPositiveLengthMeasure;
- BaseDepth1 : IfcPositiveLengthMeasure;
- BaseDepth2 : IfcPositiveLengthMeasure;
- BaseDepth3 : IfcPositiveLengthMeasure;
- CentreOfGravityInY : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcCraneRailFShapeProfileDef
- SUBTYPE OF (IfcParameterizedProfileDef);
- OverallHeight : IfcPositiveLengthMeasure;
- HeadWidth : IfcPositiveLengthMeasure;
- Radius : OPTIONAL IfcPositiveLengthMeasure;
- HeadDepth2 : IfcPositiveLengthMeasure;
- HeadDepth3 : IfcPositiveLengthMeasure;
- WebThickness : IfcPositiveLengthMeasure;
- BaseDepth1 : IfcPositiveLengthMeasure;
- BaseDepth2 : IfcPositiveLengthMeasure;
- CentreOfGravityInY : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcCrewResource
- SUBTYPE OF (IfcConstructionResource);
-END_ENTITY;
-
-ENTITY IfcCsgPrimitive3D
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBlock
- ,IfcRectangularPyramid
- ,IfcRightCircularCone
- ,IfcRightCircularCylinder
- ,IfcSphere))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Position : IfcAxis2Placement3D;
- DERIVE
- Dim : IfcDimensionCount := 3;
-END_ENTITY;
-
-ENTITY IfcCsgSolid
- SUBTYPE OF (IfcSolidModel);
- TreeRootExpression : IfcCsgSelect;
-END_ENTITY;
-
-ENTITY IfcCurrencyRelationship;
- RelatingMonetaryUnit : IfcMonetaryUnit;
- RelatedMonetaryUnit : IfcMonetaryUnit;
- ExchangeRate : IfcPositiveRatioMeasure;
- RateDateTime : IfcDateAndTime;
- RateSource : OPTIONAL IfcLibraryInformation;
-END_ENTITY;
-
-ENTITY IfcCurtainWall
- SUBTYPE OF (IfcBuildingElement);
-END_ENTITY;
-
-ENTITY IfcCurtainWallType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcCurtainWallTypeEnum;
-END_ENTITY;
-
-ENTITY IfcCurve
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBoundedCurve
- ,IfcConic
- ,IfcLine
- ,IfcOffsetCurve2D
- ,IfcOffsetCurve3D))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- DERIVE
- Dim : IfcDimensionCount := IfcCurveDim(SELF);
-END_ENTITY;
-
-ENTITY IfcCurveBoundedPlane
- SUBTYPE OF (IfcBoundedSurface);
- BasisSurface : IfcPlane;
- OuterBoundary : IfcCurve;
- InnerBoundaries : SET [0:?] OF IfcCurve;
- DERIVE
- Dim : IfcDimensionCount := BasisSurface.Dim;
-END_ENTITY;
-
-ENTITY IfcCurveStyle
- SUBTYPE OF (IfcPresentationStyle);
- CurveFont : OPTIONAL IfcCurveFontOrScaledCurveFontSelect;
- CurveWidth : OPTIONAL IfcSizeSelect;
- CurveColour : OPTIONAL IfcColour;
- WHERE
- WR11 : (NOT(EXISTS(CurveWidth))) OR
- ('IFC2X3.IFCPOSITIVELENGTHMEASURE' IN TYPEOF(CurveWidth)) OR
- (('IFC2X3.IFCDESCRIPTIVEMEASURE' IN TYPEOF(CurveWidth)) AND
- (CurveWidth = 'by layer'));
-END_ENTITY;
-
-ENTITY IfcCurveStyleFont;
- Name : OPTIONAL IfcLabel;
- PatternList : LIST [1:?] OF IfcCurveStyleFontPattern;
-END_ENTITY;
-
-ENTITY IfcCurveStyleFontAndScaling;
- Name : OPTIONAL IfcLabel;
- CurveFont : IfcCurveStyleFontSelect;
- CurveFontScaling : IfcPositiveRatioMeasure;
-END_ENTITY;
-
-ENTITY IfcCurveStyleFontPattern;
- VisibleSegmentLength : IfcLengthMeasure;
- InvisibleSegmentLength : IfcPositiveLengthMeasure;
- WHERE
- WR01 : VisibleSegmentLength >= 0.;
-END_ENTITY;
-
-ENTITY IfcDamperType
- SUBTYPE OF (IfcFlowControllerType);
- PredefinedType : IfcDamperTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcDamperTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcDamperTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcDateAndTime;
- DateComponent : IfcCalendarDate;
- TimeComponent : IfcLocalTime;
-END_ENTITY;
-
-ENTITY IfcDefinedSymbol
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Definition : IfcDefinedSymbolSelect;
- Target : IfcCartesianTransformationOperator2D;
-END_ENTITY;
-
-ENTITY IfcDerivedProfileDef
- SUBTYPE OF (IfcProfileDef);
- ParentProfile : IfcProfileDef;
- Operator : IfcCartesianTransformationOperator2D;
- Label : OPTIONAL IfcLabel;
- WHERE
- WR1 : SELF\IfcProfileDef.ProfileType = ParentProfile.ProfileType;
-END_ENTITY;
-
-ENTITY IfcDerivedUnit;
- Elements : SET [1:?] OF IfcDerivedUnitElement;
- UnitType : IfcDerivedUnitEnum;
- UserDefinedType : OPTIONAL IfcLabel;
- DERIVE
- Dimensions : IfcDimensionalExponents := IfcDeriveDimensionalExponents(SELF);
- WHERE
- WR1 : (SIZEOF (Elements) > 1) OR ((SIZEOF (Elements) = 1) AND (Elements[1].Exponent <> 1 ));
- WR2 : (UnitType <> IfcDerivedUnitEnum.USERDEFINED) OR
- ((UnitType = IfcDerivedUnitEnum.USERDEFINED) AND
- (EXISTS(SELF.UserDefinedType)));
-END_ENTITY;
-
-ENTITY IfcDerivedUnitElement;
- Unit : IfcNamedUnit;
- Exponent : INTEGER;
-END_ENTITY;
-
-ENTITY IfcDiameterDimension
- SUBTYPE OF (IfcDimensionCurveDirectedCallout);
-END_ENTITY;
-
-ENTITY IfcDimensionCalloutRelationship
- SUBTYPE OF (IfcDraughtingCalloutRelationship);
- WHERE
- WR11 : SELF\IfcDraughtingCalloutRelationship.Name IN ['primary','secondary'];
- WR12 : SIZEOF(TYPEOF(SELF\IfcDraughtingCalloutRelationship.RelatingDraughtingCallout) * [
- 'IFC2X3.IFCANGULARDIMENSION',
- 'IFC2X3.IFCDIAMETERDIMENSION',
- 'IFC2X3.IFCLINEARDIMENSION',
- 'IFC2X3.IFCRADIUSDIMENSION']) = 1;
- WR13 : NOT ('IFC2X3.IFCDIMENSIONCURVEDIRECTEDCALLOUT'
- IN TYPEOF (SELF\IfcDraughtingCalloutRelationship.RelatedDraughtingCallout));
-END_ENTITY;
-
-ENTITY IfcDimensionCurve
- SUBTYPE OF (IfcAnnotationCurveOccurrence);
- INVERSE
- AnnotatedBySymbols : SET [0:2] OF IfcTerminatorSymbol FOR AnnotatedCurve;
- WHERE
- WR51 : SIZEOF(USEDIN(SELF,'IFC2X3.IFCDRAUGHTINGCALLOUT.CONTENTS'))
- >= 1;
- WR52 : (SIZEOF(QUERY (Dct1 <* USEDIN(SELF,'IFC2X3.' +
- 'IFCTERMINATORSYMBOL.ANNOTATEDCURVE') | (Dct1.Role = IfcDimensionExtentUsage.ORIGIN))) <= 1)
- AND
- (SIZEOF(QUERY (Dct2 <* USEDIN(SELF,'IFC2X3.' +
- 'IFCTERMINATORSYMBOL.ANNOTATEDCURVE') | (Dct2.Role = IfcDimensionExtentUsage.TARGET))) <= 1);
- WR53 : SIZEOF(QUERY (Dct <* AnnotatedBySymbols |
- NOT('IFC2X3.IFCDIMENSIONCURVETERMINATOR' IN TYPEOF(Dct))))
- = 0;
-END_ENTITY;
-
-ENTITY IfcDimensionCurveDirectedCallout
- SUPERTYPE OF (ONEOF
- (IfcAngularDimension
- ,IfcDiameterDimension
- ,IfcLinearDimension
- ,IfcRadiusDimension))
- SUBTYPE OF (IfcDraughtingCallout);
- WHERE
- WR41 : SIZEOF(QUERY (Dc <* SELF\IfcDraughtingCallout.Contents | (
- 'IFC2X3.IFCDIMENSIONCURVE' IN TYPEOF(Dc))))
- = 1;
- WR42 : SIZEOF (QUERY (Dc <* SELF.contents |
- ('IFC2X3.IFCPROJECTIONCURVE' IN
- TYPEOF (Dc)))) <= 2;
-END_ENTITY;
-
-ENTITY IfcDimensionCurveTerminator
- SUBTYPE OF (IfcTerminatorSymbol);
- Role : IfcDimensionExtentUsage;
- WHERE
- WR61 : 'IFC2X3.IFCDIMENSIONCURVE' IN TYPEOF
- (SELF\IfcTerminatorSymbol.AnnotatedCurve);
-END_ENTITY;
-
-ENTITY IfcDimensionPair
- SUBTYPE OF (IfcDraughtingCalloutRelationship);
- WHERE
- WR11 : SELF.Name IN ['chained','parallel'];
- WR12 : SIZEOF(TYPEOF(SELF.RelatingDraughtingCallout) * [
- 'IFC2X3.IFCANGULARDIMENSION',
- 'IFC2X3.IFCDIAMETERDIMENSION',
- 'IFC2X3.IFCLINEARDIMENSION',
- 'IFC2X3.IFCRADIUSDIMENSION']) = 1;
- WR13 : SIZEOF(TYPEOF(SELF.RelatedDraughtingCallout) * [
- 'IFC2X3.IFCANGULARDIMENSION',
- 'IFC2X3.IFCDIAMETERDIMENSION',
- 'IFC2X3.IFCLINEARDIMENSION',
- 'IFC2X3.IFCRADIUSDIMENSION']) = 1;
-END_ENTITY;
-
-ENTITY IfcDimensionalExponents;
- LengthExponent : INTEGER;
- MassExponent : INTEGER;
- TimeExponent : INTEGER;
- ElectricCurrentExponent : INTEGER;
- ThermodynamicTemperatureExponent : INTEGER;
- AmountOfSubstanceExponent : INTEGER;
- LuminousIntensityExponent : INTEGER;
-END_ENTITY;
-
-ENTITY IfcDirection
- SUBTYPE OF (IfcGeometricRepresentationItem);
- DirectionRatios : LIST [2:3] OF REAL;
- DERIVE
- Dim : IfcDimensionCount := HIINDEX(DirectionRatios);
-END_ENTITY;
-
-ENTITY IfcDiscreteAccessory
- SUBTYPE OF (IfcElementComponent);
-END_ENTITY;
-
-ENTITY IfcDiscreteAccessoryType
- SUPERTYPE OF (ONEOF
- (IfcVibrationIsolatorType))
- SUBTYPE OF (IfcElementComponentType);
-END_ENTITY;
-
-ENTITY IfcDistributionChamberElement
- SUBTYPE OF (IfcDistributionFlowElement);
-END_ENTITY;
-
-ENTITY IfcDistributionChamberElementType
- SUBTYPE OF (IfcDistributionFlowElementType);
- PredefinedType : IfcDistributionChamberElementTypeEnum;
-END_ENTITY;
-
-ENTITY IfcDistributionControlElement
- SUBTYPE OF (IfcDistributionElement);
- ControlElementId : OPTIONAL IfcIdentifier;
- INVERSE
- AssignedToFlowElement : SET [0:1] OF IfcRelFlowControlElements FOR RelatedControlElements;
-END_ENTITY;
-
-ENTITY IfcDistributionControlElementType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcActuatorType
- ,IfcAlarmType
- ,IfcControllerType
- ,IfcFlowInstrumentType
- ,IfcSensorType))
- SUBTYPE OF (IfcDistributionElementType);
-END_ENTITY;
-
-ENTITY IfcDistributionElement
- SUPERTYPE OF (ONEOF
- (IfcDistributionControlElement
- ,IfcDistributionFlowElement))
- SUBTYPE OF (IfcElement);
-END_ENTITY;
-
-ENTITY IfcDistributionElementType
- SUPERTYPE OF (ONEOF
- (IfcDistributionControlElementType
- ,IfcDistributionFlowElementType))
- SUBTYPE OF (IfcElementType);
-END_ENTITY;
-
-ENTITY IfcDistributionFlowElement
- SUPERTYPE OF (ONEOF
- (IfcDistributionChamberElement
- ,IfcEnergyConversionDevice
- ,IfcFlowController
- ,IfcFlowFitting
- ,IfcFlowMovingDevice
- ,IfcFlowSegment
- ,IfcFlowStorageDevice
- ,IfcFlowTerminal
- ,IfcFlowTreatmentDevice))
- SUBTYPE OF (IfcDistributionElement);
- INVERSE
- HasControlElements : SET [0:1] OF IfcRelFlowControlElements FOR RelatingFlowElement;
-END_ENTITY;
-
-ENTITY IfcDistributionFlowElementType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcDistributionChamberElementType
- ,IfcEnergyConversionDeviceType
- ,IfcFlowControllerType
- ,IfcFlowFittingType
- ,IfcFlowMovingDeviceType
- ,IfcFlowSegmentType
- ,IfcFlowStorageDeviceType
- ,IfcFlowTerminalType
- ,IfcFlowTreatmentDeviceType))
- SUBTYPE OF (IfcDistributionElementType);
-END_ENTITY;
-
-ENTITY IfcDistributionPort
- SUBTYPE OF (IfcPort);
- FlowDirection : OPTIONAL IfcFlowDirectionEnum;
-END_ENTITY;
-
-ENTITY IfcDocumentElectronicFormat;
- FileExtension : OPTIONAL IfcLabel;
- MimeContentType : OPTIONAL IfcLabel;
- MimeSubtype : OPTIONAL IfcLabel;
- WHERE
- WR1 : EXISTS(FileExtension) OR EXISTS(MimeContentType);
-END_ENTITY;
-
-ENTITY IfcDocumentInformation;
- DocumentId : IfcIdentifier;
- Name : IfcLabel;
- Description : OPTIONAL IfcText;
- DocumentReferences : OPTIONAL SET [1:?] OF IfcDocumentReference;
- Purpose : OPTIONAL IfcText;
- IntendedUse : OPTIONAL IfcText;
- Scope : OPTIONAL IfcText;
- Revision : OPTIONAL IfcLabel;
- DocumentOwner : OPTIONAL IfcActorSelect;
- Editors : OPTIONAL SET [1:?] OF IfcActorSelect;
- CreationTime : OPTIONAL IfcDateAndTime;
- LastRevisionTime : OPTIONAL IfcDateAndTime;
- ElectronicFormat : OPTIONAL IfcDocumentElectronicFormat;
- ValidFrom : OPTIONAL IfcCalendarDate;
- ValidUntil : OPTIONAL IfcCalendarDate;
- Confidentiality : OPTIONAL IfcDocumentConfidentialityEnum;
- Status : OPTIONAL IfcDocumentStatusEnum;
- INVERSE
- IsPointedTo : SET [0:?] OF IfcDocumentInformationRelationship FOR RelatedDocuments;
- IsPointer : SET [0:1] OF IfcDocumentInformationRelationship FOR RelatingDocument;
-END_ENTITY;
-
-ENTITY IfcDocumentInformationRelationship;
- RelatingDocument : IfcDocumentInformation;
- RelatedDocuments : SET [1:?] OF IfcDocumentInformation;
- RelationshipType : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcDocumentReference
- SUBTYPE OF (IfcExternalReference);
- INVERSE
- ReferenceToDocument : SET [0:1] OF IfcDocumentInformation FOR DocumentReferences;
- WHERE
- WR1 : EXISTS(Name) XOR EXISTS(ReferenceToDocument[1]);
-END_ENTITY;
-
-ENTITY IfcDoor
- SUBTYPE OF (IfcBuildingElement);
- OverallHeight : OPTIONAL IfcPositiveLengthMeasure;
- OverallWidth : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcDoorLiningProperties
- SUBTYPE OF (IfcPropertySetDefinition);
- LiningDepth : OPTIONAL IfcPositiveLengthMeasure;
- LiningThickness : OPTIONAL IfcPositiveLengthMeasure;
- ThresholdDepth : OPTIONAL IfcPositiveLengthMeasure;
- ThresholdThickness : OPTIONAL IfcPositiveLengthMeasure;
- TransomThickness : OPTIONAL IfcPositiveLengthMeasure;
- TransomOffset : OPTIONAL IfcLengthMeasure;
- LiningOffset : OPTIONAL IfcLengthMeasure;
- ThresholdOffset : OPTIONAL IfcLengthMeasure;
- CasingThickness : OPTIONAL IfcPositiveLengthMeasure;
- CasingDepth : OPTIONAL IfcPositiveLengthMeasure;
- ShapeAspectStyle : OPTIONAL IfcShapeAspect;
- WHERE
- WR31 : NOT(NOT(EXISTS(LiningDepth)) AND EXISTS(LiningThickness));
- WR32 : NOT(NOT(EXISTS(ThresholdDepth)) AND EXISTS(ThresholdThickness));
- WR33 : (EXISTS(TransomOffset) AND EXISTS(TransomThickness)) XOR
- (NOT(EXISTS(TransomOffset)) AND NOT(EXISTS(TransomThickness)));
- WR34 : (EXISTS(CasingDepth) AND EXISTS(CasingThickness)) XOR
- (NOT(EXISTS(CasingDepth)) AND NOT(EXISTS(CasingThickness)));
- WR35 : EXISTS(SELF\IfcPropertySetDefinition.DefinesType[1]) AND
- ('IFC2X3.IFCDOORSTYLE' IN TYPEOF(SELF\IfcPropertySetDefinition.DefinesType[1]));
-END_ENTITY;
-
-ENTITY IfcDoorPanelProperties
- SUBTYPE OF (IfcPropertySetDefinition);
- PanelDepth : OPTIONAL IfcPositiveLengthMeasure;
- PanelOperation : IfcDoorPanelOperationEnum;
- PanelWidth : OPTIONAL IfcNormalisedRatioMeasure;
- PanelPosition : IfcDoorPanelPositionEnum;
- ShapeAspectStyle : OPTIONAL IfcShapeAspect;
- WHERE
- WR31 : EXISTS(SELF\IfcPropertySetDefinition.DefinesType[1]) AND
- ('IFC2X3.IFCDOORSTYLE' IN TYPEOF(SELF\IfcPropertySetDefinition.DefinesType[1]));
-END_ENTITY;
-
-ENTITY IfcDoorStyle
- SUBTYPE OF (IfcTypeProduct);
- OperationType : IfcDoorStyleOperationEnum;
- ConstructionType : IfcDoorStyleConstructionEnum;
- ParameterTakesPrecedence : BOOLEAN;
- Sizeable : BOOLEAN;
-END_ENTITY;
-
-ENTITY IfcDraughtingCallout
- SUPERTYPE OF (ONEOF
- (IfcDimensionCurveDirectedCallout
- ,IfcStructuredDimensionCallout))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Contents : SET [1:?] OF IfcDraughtingCalloutElement;
- INVERSE
- IsRelatedFromCallout : SET [0:?] OF IfcDraughtingCalloutRelationship FOR RelatedDraughtingCallout;
- IsRelatedToCallout : SET [0:?] OF IfcDraughtingCalloutRelationship FOR RelatingDraughtingCallout;
-END_ENTITY;
-
-ENTITY IfcDraughtingCalloutRelationship
- SUPERTYPE OF (ONEOF
- (IfcDimensionCalloutRelationship
- ,IfcDimensionPair));
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
- RelatingDraughtingCallout : IfcDraughtingCallout;
- RelatedDraughtingCallout : IfcDraughtingCallout;
-END_ENTITY;
-
-ENTITY IfcDraughtingPreDefinedColour
- SUBTYPE OF (IfcPreDefinedColour);
- WHERE
- WR31 : SELF\IfcPreDefinedItem.Name IN ['black','red','green','blue','yellow',
- 'magenta','cyan','white','by layer'];
-END_ENTITY;
-
-ENTITY IfcDraughtingPreDefinedCurveFont
- SUBTYPE OF (IfcPreDefinedCurveFont);
- WHERE
- WR31 : SELF\IfcPredefinedItem.Name IN
- ['continuous',
- 'chain',
- 'chain double dash',
- 'dashed',
- 'dotted',
- 'by layer'];
-END_ENTITY;
-
-ENTITY IfcDraughtingPreDefinedTextFont
- SUBTYPE OF (IfcPreDefinedTextFont);
- WHERE
- WR31 : SELF\IfcPreDefinedItem.Name IN ['ISO 3098-1 font A','ISO 3098-1 font B'];
-END_ENTITY;
-
-ENTITY IfcDuctFittingType
- SUBTYPE OF (IfcFlowFittingType);
- PredefinedType : IfcDuctFittingTypeEnum;
- WHERE
- WR2 : (PredefinedType <> IfcDuctFittingTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcDuctFittingTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcDuctSegmentType
- SUBTYPE OF (IfcFlowSegmentType);
- PredefinedType : IfcDuctSegmentTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcDuctSegmentTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcDuctSegmentTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcDuctSilencerType
- SUBTYPE OF (IfcFlowTreatmentDeviceType);
- PredefinedType : IfcDuctSilencerTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcDuctSilencerTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcDuctSilencerTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcEdge
- SUPERTYPE OF (ONEOF
- (IfcEdgeCurve
- ,IfcOrientedEdge
- ,IfcSubedge))
- SUBTYPE OF (IfcTopologicalRepresentationItem);
- EdgeStart : IfcVertex;
- EdgeEnd : IfcVertex;
-END_ENTITY;
-
-ENTITY IfcEdgeCurve
- SUBTYPE OF (IfcEdge);
- EdgeGeometry : IfcCurve;
- SameSense : BOOLEAN;
-END_ENTITY;
-
-ENTITY IfcEdgeFeature
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcChamferEdgeFeature
- ,IfcRoundedEdgeFeature))
- SUBTYPE OF (IfcFeatureElementSubtraction);
- FeatureLength : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcEdgeLoop
- SUBTYPE OF (IfcLoop);
- EdgeList : LIST [1:?] OF IfcOrientedEdge;
- DERIVE
- Ne : INTEGER := SIZEOF(EdgeList);
- WHERE
- WR1 : (EdgeList[1].EdgeStart) :=: (EdgeList[Ne].EdgeEnd);
- WR2 : IfcLoopHeadToTail(SELF);
-END_ENTITY;
-
-ENTITY IfcElectricApplianceType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcElectricApplianceTypeEnum;
-END_ENTITY;
-
-ENTITY IfcElectricDistributionPoint
- SUBTYPE OF (IfcFlowController);
- DistributionPointFunction : IfcElectricDistributionPointFunctionEnum;
- UserDefinedFunction : OPTIONAL IfcLabel;
- WHERE
- WR31 : (DistributionPointFunction <> IfcElectricDistributionPointFunctionEnum.USERDEFINED) OR
- ((DistributionPointFunction = IfcElectricDistributionPointFunctionEnum.USERDEFINED) AND EXISTS(SELF\IfcElectricDistributionPoint.UserDefinedFunction));
-END_ENTITY;
-
-ENTITY IfcElectricFlowStorageDeviceType
- SUBTYPE OF (IfcFlowStorageDeviceType);
- PredefinedType : IfcElectricFlowStorageDeviceTypeEnum;
-END_ENTITY;
-
-ENTITY IfcElectricGeneratorType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcElectricGeneratorTypeEnum;
-END_ENTITY;
-
-ENTITY IfcElectricHeaterType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcElectricHeaterTypeEnum;
-END_ENTITY;
-
-ENTITY IfcElectricMotorType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcElectricMotorTypeEnum;
-END_ENTITY;
-
-ENTITY IfcElectricTimeControlType
- SUBTYPE OF (IfcFlowControllerType);
- PredefinedType : IfcElectricTimeControlTypeEnum;
-END_ENTITY;
-
-ENTITY IfcElectricalBaseProperties
- SUBTYPE OF (IfcEnergyProperties);
- ElectricCurrentType : OPTIONAL IfcElectricCurrentEnum;
- InputVoltage : IfcElectricVoltageMeasure;
- InputFrequency : IfcFrequencyMeasure;
- FullLoadCurrent : OPTIONAL IfcElectricCurrentMeasure;
- MinimumCircuitCurrent : OPTIONAL IfcElectricCurrentMeasure;
- MaximumPowerInput : OPTIONAL IfcPowerMeasure;
- RatedPowerInput : OPTIONAL IfcPowerMeasure;
- InputPhase : INTEGER;
-END_ENTITY;
-
-ENTITY IfcElectricalCircuit
- SUBTYPE OF (IfcSystem);
-END_ENTITY;
-
-ENTITY IfcElectricalElement
- SUBTYPE OF (IfcElement);
-END_ENTITY;
-
-ENTITY IfcElement
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBuildingElement
- ,IfcDistributionElement
- ,IfcElectricalElement
- ,IfcElementAssembly
- ,IfcElementComponent
- ,IfcEquipmentElement
- ,IfcFeatureElement
- ,IfcFurnishingElement
- ,IfcTransportElement
- ,IfcVirtualElement))
- SUBTYPE OF (IfcProduct);
- Tag : OPTIONAL IfcIdentifier;
- INVERSE
- FillsVoids : SET [0:1] OF IfcRelFillsElement FOR RelatedBuildingElement;
- ConnectedTo : SET [0:?] OF IfcRelConnectsElements FOR RelatingElement;
- HasCoverings : SET [0:?] OF IfcRelCoversBldgElements FOR RelatingBuildingElement;
- HasProjections : SET [0:?] OF IfcRelProjectsElement FOR RelatingElement;
- HasStructuralMember : SET [0:?] OF IfcRelConnectsStructuralElement FOR RelatingElement;
- ReferencedInStructures : SET [0:?] OF IfcRelReferencedInSpatialStructure FOR RelatedElements;
- HasPorts : SET [0:?] OF IfcRelConnectsPortToElement FOR RelatedElement;
- HasOpenings : SET [0:?] OF IfcRelVoidsElement FOR RelatingBuildingElement;
- IsConnectionRealization : SET [0:?] OF IfcRelConnectsWithRealizingElements FOR RealizingElements;
- ProvidesBoundaries : SET [0:?] OF IfcRelSpaceBoundary FOR RelatedBuildingElement;
- ConnectedFrom : SET [0:?] OF IfcRelConnectsElements FOR RelatedElement;
- ContainedInStructure : SET [0:1] OF IfcRelContainedInSpatialStructure FOR RelatedElements;
-END_ENTITY;
-
-ENTITY IfcElementAssembly
- SUBTYPE OF (IfcElement);
- AssemblyPlace : OPTIONAL IfcAssemblyPlaceEnum;
- PredefinedType : IfcElementAssemblyTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcElementAssemblyTypeEnum.USERDEFINED) OR ((PredefinedType = IfcElementAssemblyTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcObject.ObjectType));
-END_ENTITY;
-
-ENTITY IfcElementComponent
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcDiscreteAccessory
- ,IfcFastener))
- SUBTYPE OF (IfcElement);
-END_ENTITY;
-
-ENTITY IfcElementComponentType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcDiscreteAccessoryType
- ,IfcFastenerType))
- SUBTYPE OF (IfcElementType);
-END_ENTITY;
-
-ENTITY IfcElementQuantity
- SUBTYPE OF (IfcPropertySetDefinition);
- MethodOfMeasurement : OPTIONAL IfcLabel;
- Quantities : SET [1:?] OF IfcPhysicalQuantity;
-END_ENTITY;
-
-ENTITY IfcElementType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBuildingElementType
- ,IfcDistributionElementType
- ,IfcElementComponentType
- ,IfcFurnishingElementType
- ,IfcSpatialStructureElementType
- ,IfcTransportElementType))
- SUBTYPE OF (IfcTypeProduct);
- ElementType : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcElementarySurface
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcPlane))
- SUBTYPE OF (IfcSurface);
- Position : IfcAxis2Placement3D;
- DERIVE
- Dim : IfcDimensionCount := Position.Dim;
-END_ENTITY;
-
-ENTITY IfcEllipse
- SUBTYPE OF (IfcConic);
- SemiAxis1 : IfcPositiveLengthMeasure;
- SemiAxis2 : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcEllipseProfileDef
- SUBTYPE OF (IfcParameterizedProfileDef);
- SemiAxis1 : IfcPositiveLengthMeasure;
- SemiAxis2 : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcEnergyConversionDevice
- SUBTYPE OF (IfcDistributionFlowElement);
-END_ENTITY;
-
-ENTITY IfcEnergyConversionDeviceType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcAirToAirHeatRecoveryType
- ,IfcBoilerType
- ,IfcChillerType
- ,IfcCoilType
- ,IfcCondenserType
- ,IfcCooledBeamType
- ,IfcCoolingTowerType
- ,IfcElectricGeneratorType
- ,IfcElectricMotorType
- ,IfcEvaporativeCoolerType
- ,IfcEvaporatorType
- ,IfcHeatExchangerType
- ,IfcHumidifierType
- ,IfcMotorConnectionType
- ,IfcSpaceHeaterType
- ,IfcTransformerType
- ,IfcTubeBundleType
- ,IfcUnitaryEquipmentType))
- SUBTYPE OF (IfcDistributionFlowElementType);
-END_ENTITY;
-
-ENTITY IfcEnergyProperties
- SUPERTYPE OF (ONEOF
- (IfcElectricalBaseProperties))
- SUBTYPE OF (IfcPropertySetDefinition);
- EnergySequence : OPTIONAL IfcEnergySequenceEnum;
- UserDefinedEnergySequence : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcEnvironmentalImpactValue
- SUBTYPE OF (IfcAppliedValue);
- ImpactType : IfcLabel;
- Category : IfcEnvironmentalImpactCategoryEnum;
- UserDefinedCategory : OPTIONAL IfcLabel;
- WHERE
- WR1 : (Category <> IfcEnvironmentalImpactCategoryEnum.USERDEFINED) OR
- ((Category = IfcEnvironmentalImpactCategoryEnum.USERDEFINED) AND EXISTS(SELF\IfcEnvironmentalImpactValue.UserDefinedCategory));
-END_ENTITY;
-
-ENTITY IfcEquipmentElement
- SUBTYPE OF (IfcElement);
-END_ENTITY;
-
-ENTITY IfcEquipmentStandard
- SUBTYPE OF (IfcControl);
-END_ENTITY;
-
-ENTITY IfcEvaporativeCoolerType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcEvaporativeCoolerTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcEvaporativeCoolerTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcEvaporativeCoolerTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcEvaporatorType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcEvaporatorTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcEvaporatorTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcEvaporatorTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcExtendedMaterialProperties
- SUBTYPE OF (IfcMaterialProperties);
- ExtendedProperties : SET [1:?] OF IfcProperty;
- Description : OPTIONAL IfcText;
- Name : IfcLabel;
-END_ENTITY;
-
-ENTITY IfcExternalReference
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcClassificationReference
- ,IfcDocumentReference
- ,IfcExternallyDefinedHatchStyle
- ,IfcExternallyDefinedSurfaceStyle
- ,IfcExternallyDefinedSymbol
- ,IfcExternallyDefinedTextFont
- ,IfcLibraryReference));
- Location : OPTIONAL IfcLabel;
- ItemReference : OPTIONAL IfcIdentifier;
- Name : OPTIONAL IfcLabel;
- WHERE
- WR1 : EXISTS(ItemReference) OR EXISTS(Location) OR EXISTS(Name);
-END_ENTITY;
-
-ENTITY IfcExternallyDefinedHatchStyle
- SUBTYPE OF (IfcExternalReference);
-END_ENTITY;
-
-ENTITY IfcExternallyDefinedSurfaceStyle
- SUBTYPE OF (IfcExternalReference);
-END_ENTITY;
-
-ENTITY IfcExternallyDefinedSymbol
- SUBTYPE OF (IfcExternalReference);
-END_ENTITY;
-
-ENTITY IfcExternallyDefinedTextFont
- SUBTYPE OF (IfcExternalReference);
-END_ENTITY;
-
-ENTITY IfcExtrudedAreaSolid
- SUBTYPE OF (IfcSweptAreaSolid);
- ExtrudedDirection : IfcDirection;
- Depth : IfcPositiveLengthMeasure;
- WHERE
- WR31 : IfcDotProduct(IfcRepresentationItem() || IfcGeometricRepresentationItem() || IfcDirection([0.0,0.0,1.0]), SELF.ExtrudedDirection) <> 0.0;
-END_ENTITY;
-
-ENTITY IfcFace
- SUPERTYPE OF (ONEOF
- (IfcFaceSurface))
- SUBTYPE OF (IfcTopologicalRepresentationItem);
- Bounds : SET [1:?] OF IfcFaceBound;
- WHERE
- WR1 : SIZEOF(QUERY(temp <* Bounds | 'IFC2X3.IFCFACEOUTERBOUND' IN TYPEOF(temp))) <= 1;
-END_ENTITY;
-
-ENTITY IfcFaceBasedSurfaceModel
- SUBTYPE OF (IfcGeometricRepresentationItem);
- FbsmFaces : SET [1:?] OF IfcConnectedFaceSet;
- DERIVE
- Dim : IfcDimensionCount := 3;
-END_ENTITY;
-
-ENTITY IfcFaceBound
- SUPERTYPE OF (ONEOF
- (IfcFaceOuterBound))
- SUBTYPE OF (IfcTopologicalRepresentationItem);
- Bound : IfcLoop;
- Orientation : BOOLEAN;
-END_ENTITY;
-
-ENTITY IfcFaceOuterBound
- SUBTYPE OF (IfcFaceBound);
-END_ENTITY;
-
-ENTITY IfcFaceSurface
- SUBTYPE OF (IfcFace);
- FaceSurface : IfcSurface;
- SameSense : BOOLEAN;
-END_ENTITY;
-
-ENTITY IfcFacetedBrep
- SUBTYPE OF (IfcManifoldSolidBrep);
-END_ENTITY;
-
-ENTITY IfcFacetedBrepWithVoids
- SUBTYPE OF (IfcManifoldSolidBrep);
- Voids : SET [1:?] OF IfcClosedShell;
-END_ENTITY;
-
-ENTITY IfcFailureConnectionCondition
- SUBTYPE OF (IfcStructuralConnectionCondition);
- TensionFailureX : OPTIONAL IfcForceMeasure;
- TensionFailureY : OPTIONAL IfcForceMeasure;
- TensionFailureZ : OPTIONAL IfcForceMeasure;
- CompressionFailureX : OPTIONAL IfcForceMeasure;
- CompressionFailureY : OPTIONAL IfcForceMeasure;
- CompressionFailureZ : OPTIONAL IfcForceMeasure;
-END_ENTITY;
-
-ENTITY IfcFanType
- SUBTYPE OF (IfcFlowMovingDeviceType);
- PredefinedType : IfcFanTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcFanTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcFanTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcFastener
- SUPERTYPE OF (ONEOF
- (IfcMechanicalFastener))
- SUBTYPE OF (IfcElementComponent);
-END_ENTITY;
-
-ENTITY IfcFastenerType
- SUPERTYPE OF (ONEOF
- (IfcMechanicalFastenerType))
- SUBTYPE OF (IfcElementComponentType);
-END_ENTITY;
-
-ENTITY IfcFeatureElement
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcFeatureElementAddition
- ,IfcFeatureElementSubtraction))
- SUBTYPE OF (IfcElement);
-END_ENTITY;
-
-ENTITY IfcFeatureElementAddition
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcProjectionElement))
- SUBTYPE OF (IfcFeatureElement);
- INVERSE
- ProjectsElements : IfcRelProjectsElement FOR RelatedFeatureElement;
-END_ENTITY;
-
-ENTITY IfcFeatureElementSubtraction
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcEdgeFeature
- ,IfcOpeningElement))
- SUBTYPE OF (IfcFeatureElement);
- INVERSE
- VoidsElements : IfcRelVoidsElement FOR RelatedOpeningElement;
-END_ENTITY;
-
-ENTITY IfcFillAreaStyle
- SUBTYPE OF (IfcPresentationStyle);
- FillStyles : SET [1:?] OF IfcFillStyleSelect;
- WHERE
- WR11 : SIZEOF(QUERY(Style <* SELF.FillStyles |
- 'IFC2X3.IFCCOLOUR' IN
- TYPEOF(Style)
- )) <= 1;
- WR12 : SIZEOF(QUERY(Style <* SELF.FillStyles |
- 'IFC2X3.IFCEXTERNALLYDEFINEDHATCHSTYLE' IN
- TYPEOF(Style)
- )) <= 1;
- WR13 : (SIZEOF(QUERY(Style <* SELF.FillStyles |
- 'IFC2X3.IFCEXTERNALLYDEFINEDHATCHSTYLE' IN
- TYPEOF(Style)
- )) >= 1)
- XOR
- (SIZEOF(QUERY(Style <* SELF.FillStyles |
- 'IFC2X3.IFCFILLAREASTYLEHATCHING' IN
- TYPEOF(Style)
- )) >= 1)
- XOR
- (SIZEOF(QUERY(Style <* SELF.FillStyles |
- 'IFC2X3.IFCFILLAREASTYLETILES' IN
- TYPEOF(Style)
- )) >= 1);
-END_ENTITY;
-
-ENTITY IfcFillAreaStyleHatching
- SUBTYPE OF (IfcGeometricRepresentationItem);
- HatchLineAppearance : IfcCurveStyle;
- StartOfNextHatchLine : IfcHatchLineDistanceSelect;
- PointOfReferenceHatchLine : OPTIONAL IfcCartesianPoint;
- PatternStart : OPTIONAL IfcCartesianPoint;
- HatchLineAngle : IfcPlaneAngleMeasure;
- WHERE
- WR21 : NOT(
- 'IFC2X3.IFCTWODIRECTIONREPEATFACTOR'
- IN TYPEOF(StartOfNextHatchLine)
- );
- WR22 : NOT(EXISTS(PatternStart))
- OR (PatternStart.Dim = 2);
- WR23 : NOT(EXISTS(PointOfReferenceHatchLine))
- OR (PointOfReferenceHatchLine.Dim = 2);
-END_ENTITY;
-
-ENTITY IfcFillAreaStyleTileSymbolWithStyle
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Symbol : IfcAnnotationSymbolOccurrence;
-END_ENTITY;
-
-ENTITY IfcFillAreaStyleTiles
- SUBTYPE OF (IfcGeometricRepresentationItem);
- TilingPattern : IfcOneDirectionRepeatFactor;
- Tiles : SET [1:?] OF IfcFillAreaStyleTileShapeSelect;
- TilingScale : IfcPositiveRatioMeasure;
-END_ENTITY;
-
-ENTITY IfcFilterType
- SUBTYPE OF (IfcFlowTreatmentDeviceType);
- PredefinedType : IfcFilterTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcFilterTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcFilterTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcFireSuppressionTerminalType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcFireSuppressionTerminalTypeEnum;
-END_ENTITY;
-
-ENTITY IfcFlowController
- SUPERTYPE OF (ONEOF
- (IfcElectricDistributionPoint))
- SUBTYPE OF (IfcDistributionFlowElement);
-END_ENTITY;
-
-ENTITY IfcFlowControllerType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcAirTerminalBoxType
- ,IfcDamperType
- ,IfcElectricTimeControlType
- ,IfcFlowMeterType
- ,IfcProtectiveDeviceType
- ,IfcSwitchingDeviceType
- ,IfcValveType))
- SUBTYPE OF (IfcDistributionFlowElementType);
-END_ENTITY;
-
-ENTITY IfcFlowFitting
- SUBTYPE OF (IfcDistributionFlowElement);
-END_ENTITY;
-
-ENTITY IfcFlowFittingType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcCableCarrierFittingType
- ,IfcDuctFittingType
- ,IfcJunctionBoxType
- ,IfcPipeFittingType))
- SUBTYPE OF (IfcDistributionFlowElementType);
-END_ENTITY;
-
-ENTITY IfcFlowInstrumentType
- SUBTYPE OF (IfcDistributionControlElementType);
- PredefinedType : IfcFlowInstrumentTypeEnum;
-END_ENTITY;
-
-ENTITY IfcFlowMeterType
- SUBTYPE OF (IfcFlowControllerType);
- PredefinedType : IfcFlowMeterTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcFlowMeterTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcFlowMeterTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcFlowMovingDevice
- SUBTYPE OF (IfcDistributionFlowElement);
-END_ENTITY;
-
-ENTITY IfcFlowMovingDeviceType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcCompressorType
- ,IfcFanType
- ,IfcPumpType))
- SUBTYPE OF (IfcDistributionFlowElementType);
-END_ENTITY;
-
-ENTITY IfcFlowSegment
- SUBTYPE OF (IfcDistributionFlowElement);
-END_ENTITY;
-
-ENTITY IfcFlowSegmentType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcCableCarrierSegmentType
- ,IfcCableSegmentType
- ,IfcDuctSegmentType
- ,IfcPipeSegmentType))
- SUBTYPE OF (IfcDistributionFlowElementType);
-END_ENTITY;
-
-ENTITY IfcFlowStorageDevice
- SUBTYPE OF (IfcDistributionFlowElement);
-END_ENTITY;
-
-ENTITY IfcFlowStorageDeviceType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcElectricFlowStorageDeviceType
- ,IfcTankType))
- SUBTYPE OF (IfcDistributionFlowElementType);
-END_ENTITY;
-
-ENTITY IfcFlowTerminal
- SUBTYPE OF (IfcDistributionFlowElement);
-END_ENTITY;
-
-ENTITY IfcFlowTerminalType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcAirTerminalType
- ,IfcElectricApplianceType
- ,IfcElectricHeaterType
- ,IfcFireSuppressionTerminalType
- ,IfcGasTerminalType
- ,IfcLampType
- ,IfcLightFixtureType
- ,IfcOutletType
- ,IfcSanitaryTerminalType
- ,IfcStackTerminalType
- ,IfcWasteTerminalType))
- SUBTYPE OF (IfcDistributionFlowElementType);
-END_ENTITY;
-
-ENTITY IfcFlowTreatmentDevice
- SUBTYPE OF (IfcDistributionFlowElement);
-END_ENTITY;
-
-ENTITY IfcFlowTreatmentDeviceType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcDuctSilencerType
- ,IfcFilterType))
- SUBTYPE OF (IfcDistributionFlowElementType);
-END_ENTITY;
-
-ENTITY IfcFluidFlowProperties
- SUBTYPE OF (IfcPropertySetDefinition);
- PropertySource : IfcPropertySourceEnum;
- FlowConditionTimeSeries : OPTIONAL IfcTimeSeries;
- VelocityTimeSeries : OPTIONAL IfcTimeSeries;
- FlowrateTimeSeries : OPTIONAL IfcTimeSeries;
- Fluid : IfcMaterial;
- PressureTimeSeries : OPTIONAL IfcTimeSeries;
- UserDefinedPropertySource : OPTIONAL IfcLabel;
- TemperatureSingleValue : OPTIONAL IfcThermodynamicTemperatureMeasure;
- WetBulbTemperatureSingleValue : OPTIONAL IfcThermodynamicTemperatureMeasure;
- WetBulbTemperatureTimeSeries : OPTIONAL IfcTimeSeries;
- TemperatureTimeSeries : OPTIONAL IfcTimeSeries;
- FlowrateSingleValue : OPTIONAL IfcDerivedMeasureValue;
- FlowConditionSingleValue : OPTIONAL IfcPositiveRatioMeasure;
- VelocitySingleValue : OPTIONAL IfcLinearVelocityMeasure;
- PressureSingleValue : OPTIONAL IfcPressureMeasure;
-END_ENTITY;
-
-ENTITY IfcFooting
- SUBTYPE OF (IfcBuildingElement);
- PredefinedType : IfcFootingTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcFootingTypeEnum.USERDEFINED) OR ((PredefinedType = IfcFootingTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcObject.ObjectType));
-END_ENTITY;
-
-ENTITY IfcFuelProperties
- SUBTYPE OF (IfcMaterialProperties);
- CombustionTemperature : OPTIONAL IfcThermodynamicTemperatureMeasure;
- CarbonContent : OPTIONAL IfcPositiveRatioMeasure;
- LowerHeatingValue : OPTIONAL IfcHeatingValueMeasure;
- HigherHeatingValue : OPTIONAL IfcHeatingValueMeasure;
- UNIQUE
- UR11 : Material;
-END_ENTITY;
-
-ENTITY IfcFurnishingElement
- SUBTYPE OF (IfcElement);
-END_ENTITY;
-
-ENTITY IfcFurnishingElementType
- SUPERTYPE OF (ONEOF
- (IfcFurnitureType
- ,IfcSystemFurnitureElementType))
- SUBTYPE OF (IfcElementType);
-END_ENTITY;
-
-ENTITY IfcFurnitureStandard
- SUBTYPE OF (IfcControl);
-END_ENTITY;
-
-ENTITY IfcFurnitureType
- SUBTYPE OF (IfcFurnishingElementType);
- AssemblyPlace : IfcAssemblyPlaceEnum;
-END_ENTITY;
-
-ENTITY IfcGasTerminalType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcGasTerminalTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcGasTerminalTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcGasTerminalTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcGeneralMaterialProperties
- SUBTYPE OF (IfcMaterialProperties);
- MolecularWeight : OPTIONAL IfcMolecularWeightMeasure;
- Porosity : OPTIONAL IfcNormalisedRatioMeasure;
- MassDensity : OPTIONAL IfcMassDensityMeasure;
- UNIQUE
- UR11 : Material;
-END_ENTITY;
-
-ENTITY IfcGeneralProfileProperties
- SUPERTYPE OF (ONEOF
- (IfcStructuralProfileProperties))
- SUBTYPE OF (IfcProfileProperties);
- PhysicalWeight : OPTIONAL IfcMassPerLengthMeasure;
- Perimeter : OPTIONAL IfcPositiveLengthMeasure;
- MinimumPlateThickness : OPTIONAL IfcPositiveLengthMeasure;
- MaximumPlateThickness : OPTIONAL IfcPositiveLengthMeasure;
- CrossSectionArea : OPTIONAL IfcAreaMeasure;
- WHERE
- WR1 : NOT(EXISTS(CrossSectionArea)) OR (CrossSectionArea > 0.);
-END_ENTITY;
-
-ENTITY IfcGeometricCurveSet
- SUBTYPE OF (IfcGeometricSet);
- WHERE
- WR1 : SIZEOF(QUERY(Temp <* SELF\IfcGeometricSet.Elements |
- 'IFC2X3.IFCSURFACE' IN TYPEOF(Temp))) = 0;
-END_ENTITY;
-
-ENTITY IfcGeometricRepresentationContext
- SUPERTYPE OF (ONEOF
- (IfcGeometricRepresentationSubContext))
- SUBTYPE OF (IfcRepresentationContext);
- CoordinateSpaceDimension : IfcDimensionCount;
- Precision : OPTIONAL REAL;
- WorldCoordinateSystem : IfcAxis2Placement;
- TrueNorth : OPTIONAL IfcDirection;
- INVERSE
- HasSubContexts : SET [0:?] OF IfcGeometricRepresentationSubContext FOR ParentContext;
-END_ENTITY;
-
-ENTITY IfcGeometricRepresentationItem
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcAnnotationFillArea
- ,IfcAnnotationSurface
- ,IfcBooleanResult
- ,IfcBoundingBox
- ,IfcCartesianTransformationOperator
- ,IfcCompositeCurveSegment
- ,IfcCsgPrimitive3D
- ,IfcCurve
- ,IfcDefinedSymbol
- ,IfcDirection
- ,IfcDraughtingCallout
- ,IfcFaceBasedSurfaceModel
- ,IfcFillAreaStyleHatching
- ,IfcFillAreaStyleTileSymbolWithStyle
- ,IfcFillAreaStyleTiles
- ,IfcGeometricSet
- ,IfcHalfSpaceSolid
- ,IfcLightSource
- ,IfcOneDirectionRepeatFactor
- ,IfcPlacement
- ,IfcPlanarExtent
- ,IfcPoint
- ,IfcSectionedSpine
- ,IfcShellBasedSurfaceModel
- ,IfcSolidModel
- ,IfcSurface
- ,IfcTextLiteral
- ,IfcVector))
- SUBTYPE OF (IfcRepresentationItem);
-END_ENTITY;
-
-ENTITY IfcGeometricRepresentationSubContext
- SUBTYPE OF (IfcGeometricRepresentationContext);
- ParentContext : IfcGeometricRepresentationContext;
- TargetScale : OPTIONAL IfcPositiveRatioMeasure;
- TargetView : IfcGeometricProjectionEnum;
- UserDefinedTargetView : OPTIONAL IfcLabel;
- DERIVE
- SELF\IfcGeometricRepresentationContext.WorldCoordinateSystem : IfcAxis2Placement := ParentContext.WorldCoordinateSystem;
- SELF\IfcGeometricRepresentationContext.CoordinateSpaceDimension : IfcDimensionCount := ParentContext.CoordinateSpaceDimension;
- SELF\IfcGeometricRepresentationContext.TrueNorth : IfcDirection := NVL(ParentContext.TrueNorth,SELF.WorldCoordinateSystem.P[2]);
- SELF\IfcGeometricRepresentationContext.Precision : REAL := NVL(ParentContext.Precision,1.E-5);
- WHERE
- WR31 : NOT('IFC2X3.IFCGEOMETRICREPRESENTATIONSUBCONTEXT' IN TYPEOF(ParentContext));
- WR32 : (TargetView <> IfcGeometricProjectionEnum.USERDEFINED) OR
- ((TargetView = IfcGeometricProjectionEnum.USERDEFINED) AND
- EXISTS(UserDefinedTargetView));
-END_ENTITY;
-
-ENTITY IfcGeometricSet
- SUPERTYPE OF (ONEOF
- (IfcGeometricCurveSet))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Elements : SET [1:?] OF IfcGeometricSetSelect;
- DERIVE
- Dim : IfcDimensionCount := Elements[1].Dim;
- WHERE
- WR21 : SIZEOF(QUERY(Temp <* Elements |
- Temp.Dim <> Elements[1].Dim))
- = 0;
-END_ENTITY;
-
-ENTITY IfcGrid
- SUBTYPE OF (IfcProduct);
- UAxes : LIST [1:?] OF UNIQUE IfcGridAxis;
- VAxes : LIST [1:?] OF UNIQUE IfcGridAxis;
- WAxes : OPTIONAL LIST [1:?] OF UNIQUE IfcGridAxis;
- INVERSE
- ContainedInStructure : SET [0:1] OF IfcRelContainedInSpatialStructure FOR RelatedElements;
- WHERE
- WR41 : EXISTS(SELF\IfcProduct.ObjectPlacement);
-END_ENTITY;
-
-ENTITY IfcGridAxis;
- AxisTag : OPTIONAL IfcLabel;
- AxisCurve : IfcCurve;
- SameSense : IfcBoolean;
- INVERSE
- PartOfW : SET [0:1] OF IfcGrid FOR WAxes;
- PartOfV : SET [0:1] OF IfcGrid FOR VAxes;
- PartOfU : SET [0:1] OF IfcGrid FOR UAxes;
- HasIntersections : SET [0:?] OF IfcVirtualGridIntersection FOR IntersectingAxes;
- WHERE
- WR1 : AxisCurve.Dim = 2;
- WR2 : (SIZEOF(PartOfU) = 1) XOR (SIZEOF(PartOfV) = 1) XOR (SIZEOF(PartOfW) = 1);
-END_ENTITY;
-
-ENTITY IfcGridPlacement
- SUBTYPE OF (IfcObjectPlacement);
- PlacementLocation : IfcVirtualGridIntersection;
- PlacementRefDirection : OPTIONAL IfcVirtualGridIntersection;
-END_ENTITY;
-
-ENTITY IfcGroup
- SUPERTYPE OF (ONEOF
- (IfcAsset
- ,IfcCondition
- ,IfcInventory
- ,IfcStructuralLoadGroup
- ,IfcStructuralResultGroup
- ,IfcSystem
- ,IfcZone))
- SUBTYPE OF (IfcObject);
- INVERSE
- IsGroupedBy : IfcRelAssignsToGroup FOR RelatingGroup;
-END_ENTITY;
-
-ENTITY IfcHalfSpaceSolid
- SUPERTYPE OF (ONEOF
- (IfcBoxedHalfSpace
- ,IfcPolygonalBoundedHalfSpace))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- BaseSurface : IfcSurface;
- AgreementFlag : BOOLEAN;
- DERIVE
- Dim : IfcDimensionCount := 3;
-END_ENTITY;
-
-ENTITY IfcHeatExchangerType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcHeatExchangerTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcHeatExchangerTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcHeatExchangerTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcHumidifierType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcHumidifierTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcHumidifierTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcHumidifierTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcHygroscopicMaterialProperties
- SUBTYPE OF (IfcMaterialProperties);
- UpperVaporResistanceFactor : OPTIONAL IfcPositiveRatioMeasure;
- LowerVaporResistanceFactor : OPTIONAL IfcPositiveRatioMeasure;
- IsothermalMoistureCapacity : OPTIONAL IfcIsothermalMoistureCapacityMeasure;
- VaporPermeability : OPTIONAL IfcVaporPermeabilityMeasure;
- MoistureDiffusivity : OPTIONAL IfcMoistureDiffusivityMeasure;
- UNIQUE
- UR11 : Material;
-END_ENTITY;
-
-ENTITY IfcIShapeProfileDef
- SUPERTYPE OF (ONEOF
- (IfcAsymmetricIShapeProfileDef))
- SUBTYPE OF (IfcParameterizedProfileDef);
- OverallWidth : IfcPositiveLengthMeasure;
- OverallDepth : IfcPositiveLengthMeasure;
- WebThickness : IfcPositiveLengthMeasure;
- FlangeThickness : IfcPositiveLengthMeasure;
- FilletRadius : OPTIONAL IfcPositiveLengthMeasure;
- WHERE
- WR1 : FlangeThickness < (OverallDepth / 2.);
- WR2 : WebThickness < OverallWidth;
- WR3 : NOT(EXISTS(FilletRadius)) OR
- ((FilletRadius <= (OverallWidth - WebThickness)/2.) AND
- (FilletRadius <= (OverallDepth - (2. * FlangeThickness))/2.));
-END_ENTITY;
-
-ENTITY IfcImageTexture
- SUBTYPE OF (IfcSurfaceTexture);
- UrlReference : IfcIdentifier;
-END_ENTITY;
-
-ENTITY IfcInventory
- SUBTYPE OF (IfcGroup);
- InventoryType : IfcInventoryTypeEnum;
- Jurisdiction : IfcActorSelect;
- ResponsiblePersons : SET [1:?] OF IfcPerson;
- LastUpdateDate : IfcCalendarDate;
- CurrentValue : OPTIONAL IfcCostValue;
- OriginalValue : OPTIONAL IfcCostValue;
- WHERE
- WR41 : SIZEOF(QUERY(temp <* SELF\IfcGroup.IsGroupedBy.RelatedObjects |
- NOT( ('IFC2X3.IFCSPACE' IN TYPEOF (temp)) OR
- ('IFC2X3.IFCASSET' IN TYPEOF (temp)) OR
- ('IFC2X3.IFCFURNISHINGELEMENT' IN TYPEOF (temp))
- ))) = 0;
-END_ENTITY;
-
-ENTITY IfcIrregularTimeSeries
- SUBTYPE OF (IfcTimeSeries);
- Values : LIST [1:?] OF IfcIrregularTimeSeriesValue;
-END_ENTITY;
-
-ENTITY IfcIrregularTimeSeriesValue;
- TimeStamp : IfcDateTimeSelect;
- ListValues : LIST [1:?] OF IfcValue;
-END_ENTITY;
-
-ENTITY IfcJunctionBoxType
- SUBTYPE OF (IfcFlowFittingType);
- PredefinedType : IfcJunctionBoxTypeEnum;
-END_ENTITY;
-
-ENTITY IfcLShapeProfileDef
- SUBTYPE OF (IfcParameterizedProfileDef);
- Depth : IfcPositiveLengthMeasure;
- Width : OPTIONAL IfcPositiveLengthMeasure;
- Thickness : IfcPositiveLengthMeasure;
- FilletRadius : OPTIONAL IfcPositiveLengthMeasure;
- EdgeRadius : OPTIONAL IfcPositiveLengthMeasure;
- LegSlope : OPTIONAL IfcPlaneAngleMeasure;
- CentreOfGravityInX : OPTIONAL IfcPositiveLengthMeasure;
- CentreOfGravityInY : OPTIONAL IfcPositiveLengthMeasure;
- WHERE
- WR21 : Thickness < Depth;
- WR22 : NOT(EXISTS(Width)) OR (Thickness < Width);
-END_ENTITY;
-
-ENTITY IfcLaborResource
- SUBTYPE OF (IfcConstructionResource);
- SkillSet : OPTIONAL IfcText;
-END_ENTITY;
-
-ENTITY IfcLampType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcLampTypeEnum;
-END_ENTITY;
-
-ENTITY IfcLibraryInformation;
- Name : IfcLabel;
- Version : OPTIONAL IfcLabel;
- Publisher : OPTIONAL IfcOrganization;
- VersionDate : OPTIONAL IfcCalendarDate;
- LibraryReference : OPTIONAL SET [1:?] OF IfcLibraryReference;
-END_ENTITY;
-
-ENTITY IfcLibraryReference
- SUBTYPE OF (IfcExternalReference);
- INVERSE
- ReferenceIntoLibrary : SET [0:1] OF IfcLibraryInformation FOR LibraryReference;
-END_ENTITY;
-
-ENTITY IfcLightDistributionData;
- MainPlaneAngle : IfcPlaneAngleMeasure;
- SecondaryPlaneAngle : LIST [1:?] OF IfcPlaneAngleMeasure;
- LuminousIntensity : LIST [1:?] OF IfcLuminousIntensityDistributionMeasure;
-END_ENTITY;
-
-ENTITY IfcLightFixtureType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcLightFixtureTypeEnum;
-END_ENTITY;
-
-ENTITY IfcLightIntensityDistribution;
- LightDistributionCurve : IfcLightDistributionCurveEnum;
- DistributionData : LIST [1:?] OF IfcLightDistributionData;
-END_ENTITY;
-
-ENTITY IfcLightSource
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcLightSourceAmbient
- ,IfcLightSourceDirectional
- ,IfcLightSourceGoniometric
- ,IfcLightSourcePositional))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Name : OPTIONAL IfcLabel;
- LightColour : IfcColourRgb;
- AmbientIntensity : OPTIONAL IfcNormalisedRatioMeasure;
- Intensity : OPTIONAL IfcNormalisedRatioMeasure;
-END_ENTITY;
-
-ENTITY IfcLightSourceAmbient
- SUBTYPE OF (IfcLightSource);
-END_ENTITY;
-
-ENTITY IfcLightSourceDirectional
- SUBTYPE OF (IfcLightSource);
- Orientation : IfcDirection;
-END_ENTITY;
-
-ENTITY IfcLightSourceGoniometric
- SUBTYPE OF (IfcLightSource);
- Position : IfcAxis2Placement3D;
- ColourAppearance : OPTIONAL IfcColourRgb;
- ColourTemperature : IfcThermodynamicTemperatureMeasure;
- LuminousFlux : IfcLuminousFluxMeasure;
- LightEmissionSource : IfcLightEmissionSourceEnum;
- LightDistributionDataSource : IfcLightDistributionDataSourceSelect;
-END_ENTITY;
-
-ENTITY IfcLightSourcePositional
- SUPERTYPE OF (ONEOF
- (IfcLightSourceSpot))
- SUBTYPE OF (IfcLightSource);
- Position : IfcCartesianPoint;
- Radius : IfcPositiveLengthMeasure;
- ConstantAttenuation : IfcReal;
- DistanceAttenuation : IfcReal;
- QuadricAttenuation : IfcReal;
-END_ENTITY;
-
-ENTITY IfcLightSourceSpot
- SUBTYPE OF (IfcLightSourcePositional);
- Orientation : IfcDirection;
- ConcentrationExponent : OPTIONAL IfcReal;
- SpreadAngle : IfcPositivePlaneAngleMeasure;
- BeamWidthAngle : IfcPositivePlaneAngleMeasure;
-END_ENTITY;
-
-ENTITY IfcLine
- SUBTYPE OF (IfcCurve);
- Pnt : IfcCartesianPoint;
- Dir : IfcVector;
- WHERE
- WR1 : Dir.Dim = Pnt.Dim;
-END_ENTITY;
-
-ENTITY IfcLinearDimension
- SUBTYPE OF (IfcDimensionCurveDirectedCallout);
-END_ENTITY;
-
-ENTITY IfcLocalPlacement
- SUBTYPE OF (IfcObjectPlacement);
- PlacementRelTo : OPTIONAL IfcObjectPlacement;
- RelativePlacement : IfcAxis2Placement;
- WHERE
- WR21 : IfcCorrectLocalPlacement(RelativePlacement, PlacementRelTo);
-END_ENTITY;
-
-ENTITY IfcLocalTime;
- HourComponent : IfcHourInDay;
- MinuteComponent : OPTIONAL IfcMinuteInHour;
- SecondComponent : OPTIONAL IfcSecondInMinute;
- Zone : OPTIONAL IfcCoordinatedUniversalTimeOffset;
- DaylightSavingOffset : OPTIONAL IfcDaylightSavingHour;
- WHERE
- WR21 : IfcValidTime (SELF);
-END_ENTITY;
-
-ENTITY IfcLoop
- SUPERTYPE OF (ONEOF
- (IfcEdgeLoop
- ,IfcPolyLoop
- ,IfcVertexLoop))
- SUBTYPE OF (IfcTopologicalRepresentationItem);
-END_ENTITY;
-
-ENTITY IfcManifoldSolidBrep
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcFacetedBrep
- ,IfcFacetedBrepWithVoids))
- SUBTYPE OF (IfcSolidModel);
- Outer : IfcClosedShell;
-END_ENTITY;
-
-ENTITY IfcMappedItem
- SUBTYPE OF (IfcRepresentationItem);
- MappingSource : IfcRepresentationMap;
- MappingTarget : IfcCartesianTransformationOperator;
-END_ENTITY;
-
-ENTITY IfcMaterial;
- Name : IfcLabel;
- INVERSE
- HasRepresentation : SET [0:1] OF IfcMaterialDefinitionRepresentation FOR RepresentedMaterial;
- ClassifiedAs : SET [0:1] OF IfcMaterialClassificationRelationship FOR ClassifiedMaterial;
-END_ENTITY;
-
-ENTITY IfcMaterialClassificationRelationship;
- MaterialClassifications : SET [1:?] OF IfcClassificationNotationSelect;
- ClassifiedMaterial : IfcMaterial;
-END_ENTITY;
-
-ENTITY IfcMaterialDefinitionRepresentation
- SUBTYPE OF (IfcProductRepresentation);
- RepresentedMaterial : IfcMaterial;
- WHERE
- WR11 : SIZEOF(QUERY(temp <* Representations |
- (NOT('IFC2X3.IFCSTYLEDREPRESENTATION' IN TYPEOF(temp)))
- )) = 0;
-END_ENTITY;
-
-ENTITY IfcMaterialLayer;
- Material : OPTIONAL IfcMaterial;
- LayerThickness : IfcPositiveLengthMeasure;
- IsVentilated : OPTIONAL IfcLogical;
- INVERSE
- ToMaterialLayerSet : IfcMaterialLayerSet FOR MaterialLayers;
-END_ENTITY;
-
-ENTITY IfcMaterialLayerSet;
- MaterialLayers : LIST [1:?] OF IfcMaterialLayer;
- LayerSetName : OPTIONAL IfcLabel;
- DERIVE
- TotalThickness : IfcLengthMeasure := IfcMlsTotalThickness(SELF);
-END_ENTITY;
-
-ENTITY IfcMaterialLayerSetUsage;
- ForLayerSet : IfcMaterialLayerSet;
- LayerSetDirection : IfcLayerSetDirectionEnum;
- DirectionSense : IfcDirectionSenseEnum;
- OffsetFromReferenceLine : IfcLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcMaterialList;
- Materials : LIST [1:?] OF IfcMaterial;
-END_ENTITY;
-
-ENTITY IfcMaterialProperties
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcExtendedMaterialProperties
- ,IfcFuelProperties
- ,IfcGeneralMaterialProperties
- ,IfcHygroscopicMaterialProperties
- ,IfcMechanicalMaterialProperties
- ,IfcOpticalMaterialProperties
- ,IfcProductsOfCombustionProperties
- ,IfcThermalMaterialProperties
- ,IfcWaterProperties));
- Material : IfcMaterial;
-END_ENTITY;
-
-ENTITY IfcMeasureWithUnit;
- ValueComponent : IfcValue;
- UnitComponent : IfcUnit;
-END_ENTITY;
-
-ENTITY IfcMechanicalConcreteMaterialProperties
- SUBTYPE OF (IfcMechanicalMaterialProperties);
- CompressiveStrength : OPTIONAL IfcPressureMeasure;
- MaxAggregateSize : OPTIONAL IfcPositiveLengthMeasure;
- AdmixturesDescription : OPTIONAL IfcText;
- Workability : OPTIONAL IfcText;
- ProtectivePoreRatio : OPTIONAL IfcNormalisedRatioMeasure;
- WaterImpermeability : OPTIONAL IfcText;
-END_ENTITY;
-
-ENTITY IfcMechanicalFastener
- SUBTYPE OF (IfcFastener);
- NominalDiameter : OPTIONAL IfcPositiveLengthMeasure;
- NominalLength : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcMechanicalFastenerType
- SUBTYPE OF (IfcFastenerType);
-END_ENTITY;
-
-ENTITY IfcMechanicalMaterialProperties
- SUPERTYPE OF (ONEOF
- (IfcMechanicalConcreteMaterialProperties
- ,IfcMechanicalSteelMaterialProperties))
- SUBTYPE OF (IfcMaterialProperties);
- DynamicViscosity : OPTIONAL IfcDynamicViscosityMeasure;
- YoungModulus : OPTIONAL IfcModulusOfElasticityMeasure;
- ShearModulus : OPTIONAL IfcModulusOfElasticityMeasure;
- PoissonRatio : OPTIONAL IfcPositiveRatioMeasure;
- ThermalExpansionCoefficient : OPTIONAL IfcThermalExpansionCoefficientMeasure;
- UNIQUE
- UR11 : Material;
- WHERE
- WR21 : NOT(EXISTS(YoungModulus)) OR (YoungModulus >= 0.0);
- WR22 : NOT(EXISTS(ShearModulus)) OR (ShearModulus >= 0.0);
-END_ENTITY;
-
-ENTITY IfcMechanicalSteelMaterialProperties
- SUBTYPE OF (IfcMechanicalMaterialProperties);
- YieldStress : OPTIONAL IfcPressureMeasure;
- UltimateStress : OPTIONAL IfcPressureMeasure;
- UltimateStrain : OPTIONAL IfcPositiveRatioMeasure;
- HardeningModule : OPTIONAL IfcModulusOfElasticityMeasure;
- ProportionalStress : OPTIONAL IfcPressureMeasure;
- PlasticStrain : OPTIONAL IfcPositiveRatioMeasure;
- Relaxations : OPTIONAL SET [1:?] OF IfcRelaxation;
- WHERE
- WR31 : NOT(EXISTS(YieldStress)) OR (YieldStress >= 0.);
- WR32 : NOT(EXISTS(UltimateStress)) OR (UltimateStress >= 0.);
- WR33 : NOT(EXISTS(HardeningModule)) OR (HardeningModule >= 0.);
- WR34 : NOT(EXISTS(ProportionalStress)) OR (ProportionalStress >= 0.);
-END_ENTITY;
-
-ENTITY IfcMember
- SUBTYPE OF (IfcBuildingElement);
-END_ENTITY;
-
-ENTITY IfcMemberType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcMemberTypeEnum;
-END_ENTITY;
-
-ENTITY IfcMetric
- SUBTYPE OF (IfcConstraint);
- Benchmark : IfcBenchmarkEnum;
- ValueSource : OPTIONAL IfcLabel;
- DataValue : IfcMetricValueSelect;
-END_ENTITY;
-
-ENTITY IfcMonetaryUnit;
- Currency : IfcCurrencyEnum;
-END_ENTITY;
-
-ENTITY IfcMotorConnectionType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcMotorConnectionTypeEnum;
-END_ENTITY;
-
-ENTITY IfcMove
- SUBTYPE OF (IfcTask);
- MoveFrom : IfcSpatialStructureElement;
- MoveTo : IfcSpatialStructureElement;
- PunchList : OPTIONAL LIST [1:?] OF UNIQUE IfcText;
- WHERE
- WR1 : SIZEOF(SELF\IfcProcess.OperatesOn) >= 1;
- WR2 : SIZEOF(QUERY(temp <* OperatesOn |
- SIZEOF(QUERY(temp2 <* temp.RelatedObjects |
- ('IFC2X3.IFCACTOR' IN TYPEOF (temp2)) OR
- ('IFC2X3.IFCEQUIPMENTELEMENT' IN TYPEOF (temp2)) OR
- ('IFC2X3.IFCFURNISHINGELEMENT' IN TYPEOF (temp2)) )) >=1
- )) >= 1;
- WR3 : EXISTS(SELF\IfcRoot.Name);
-END_ENTITY;
-
-ENTITY IfcNamedUnit
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcContextDependentUnit
- ,IfcConversionBasedUnit
- ,IfcSIUnit));
- Dimensions : IfcDimensionalExponents;
- UnitType : IfcUnitEnum;
- WHERE
- WR1 : IfcCorrectDimensions (SELF.UnitType, SELF.Dimensions);
-END_ENTITY;
-
-ENTITY IfcObject
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcActor
- ,IfcControl
- ,IfcGroup
- ,IfcProcess
- ,IfcProduct
- ,IfcProject
- ,IfcResource))
- SUBTYPE OF (IfcObjectDefinition);
- ObjectType : OPTIONAL IfcLabel;
- INVERSE
- IsDefinedBy : SET [0:?] OF IfcRelDefines FOR RelatedObjects;
- WHERE
- WR1 : SIZEOF(QUERY(temp <* IsDefinedBy | 'IFC2X3.IFCRELDEFINESBYTYPE' IN TYPEOF(temp))) <= 1;
-END_ENTITY;
-
-ENTITY IfcObjectDefinition
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcObject
- ,IfcTypeObject))
- SUBTYPE OF (IfcRoot);
- INVERSE
- HasAssignments : SET [0:?] OF IfcRelAssigns FOR RelatedObjects;
- IsDecomposedBy : SET [0:?] OF IfcRelDecomposes FOR RelatingObject;
- Decomposes : SET [0:1] OF IfcRelDecomposes FOR RelatedObjects;
- HasAssociations : SET [0:?] OF IfcRelAssociates FOR RelatedObjects;
-END_ENTITY;
-
-ENTITY IfcObjectPlacement
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcGridPlacement
- ,IfcLocalPlacement));
- INVERSE
- PlacesObject : SET [1:1] OF IfcProduct FOR ObjectPlacement;
- ReferencedByPlacements : SET [0:?] OF IfcLocalPlacement FOR PlacementRelTo;
-END_ENTITY;
-
-ENTITY IfcObjective
- SUBTYPE OF (IfcConstraint);
- BenchmarkValues : OPTIONAL IfcMetric;
- ResultValues : OPTIONAL IfcMetric;
- ObjectiveQualifier : IfcObjectiveEnum;
- UserDefinedQualifier : OPTIONAL IfcLabel;
- WHERE
- WR21 : (ObjectiveQualifier <> IfcObjectiveEnum.USERDEFINED) OR
- ((ObjectiveQualifier = IfcObjectiveEnum.USERDEFINED) AND EXISTS(SELF\IfcObjective.UserDefinedQualifier));
-END_ENTITY;
-
-ENTITY IfcOccupant
- SUBTYPE OF (IfcActor);
- PredefinedType : IfcOccupantTypeEnum;
- WHERE
- WR31 : NOT(PredefinedType = IfcOccupantTypeEnum.USERDEFINED)
- OR EXISTS(SELF\IfcObject.ObjectType);
-END_ENTITY;
-
-ENTITY IfcOffsetCurve2D
- SUBTYPE OF (IfcCurve);
- BasisCurve : IfcCurve;
- Distance : IfcLengthMeasure;
- SelfIntersect : LOGICAL;
- WHERE
- WR1 : BasisCurve.Dim = 2;
-END_ENTITY;
-
-ENTITY IfcOffsetCurve3D
- SUBTYPE OF (IfcCurve);
- BasisCurve : IfcCurve;
- Distance : IfcLengthMeasure;
- SelfIntersect : LOGICAL;
- RefDirection : IfcDirection;
- WHERE
- WR1 : BasisCurve.Dim = 3;
-END_ENTITY;
-
-ENTITY IfcOneDirectionRepeatFactor
- SUPERTYPE OF (ONEOF
- (IfcTwoDirectionRepeatFactor))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- RepeatFactor : IfcVector;
-END_ENTITY;
-
-ENTITY IfcOpenShell
- SUBTYPE OF (IfcConnectedFaceSet);
-END_ENTITY;
-
-ENTITY IfcOpeningElement
- SUBTYPE OF (IfcFeatureElementSubtraction);
- INVERSE
- HasFillings : SET [0:?] OF IfcRelFillsElement FOR RelatingOpeningElement;
-END_ENTITY;
-
-ENTITY IfcOpticalMaterialProperties
- SUBTYPE OF (IfcMaterialProperties);
- VisibleTransmittance : OPTIONAL IfcPositiveRatioMeasure;
- SolarTransmittance : OPTIONAL IfcPositiveRatioMeasure;
- ThermalIrTransmittance : OPTIONAL IfcPositiveRatioMeasure;
- ThermalIrEmissivityBack : OPTIONAL IfcPositiveRatioMeasure;
- ThermalIrEmissivityFront : OPTIONAL IfcPositiveRatioMeasure;
- VisibleReflectanceBack : OPTIONAL IfcPositiveRatioMeasure;
- VisibleReflectanceFront : OPTIONAL IfcPositiveRatioMeasure;
- SolarReflectanceFront : OPTIONAL IfcPositiveRatioMeasure;
- SolarReflectanceBack : OPTIONAL IfcPositiveRatioMeasure;
- UNIQUE
- UR11 : Material;
-END_ENTITY;
-
-ENTITY IfcOrderAction
- SUBTYPE OF (IfcTask);
- ActionID : IfcIdentifier;
- UNIQUE
- UR2 : ActionID;
-END_ENTITY;
-
-ENTITY IfcOrganization;
- Id : OPTIONAL IfcIdentifier;
- Name : IfcLabel;
- Description : OPTIONAL IfcText;
- Roles : OPTIONAL LIST [1:?] OF IfcActorRole;
- Addresses : OPTIONAL LIST [1:?] OF IfcAddress;
- INVERSE
- IsRelatedBy : SET [0:?] OF IfcOrganizationRelationship FOR RelatedOrganizations;
- Relates : SET [0:?] OF IfcOrganizationRelationship FOR RelatingOrganization;
- Engages : SET [0:?] OF IfcPersonAndOrganization FOR TheOrganization;
-END_ENTITY;
-
-ENTITY IfcOrganizationRelationship;
- Name : IfcLabel;
- Description : OPTIONAL IfcText;
- RelatingOrganization : IfcOrganization;
- RelatedOrganizations : SET [1:?] OF IfcOrganization;
-END_ENTITY;
-
-ENTITY IfcOrientedEdge
- SUBTYPE OF (IfcEdge);
- EdgeElement : IfcEdge;
- Orientation : BOOLEAN;
- DERIVE
- SELF\IfcEdge.EdgeStart : IfcVertex := IfcBooleanChoose
- (Orientation, EdgeElement.EdgeStart, EdgeElement.EdgeEnd);
- SELF\IfcEdge.EdgeEnd : IfcVertex := IfcBooleanChoose
- (Orientation, EdgeElement.EdgeEnd, EdgeElement.EdgeStart);
- WHERE
- WR1 : NOT('IFC2X3.IFCORIENTEDEDGE' IN TYPEOF(EdgeElement));
-END_ENTITY;
-
-ENTITY IfcOutletType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcOutletTypeEnum;
-END_ENTITY;
-
-ENTITY IfcOwnerHistory;
- OwningUser : IfcPersonAndOrganization;
- OwningApplication : IfcApplication;
- State : OPTIONAL IfcStateEnum;
- ChangeAction : IfcChangeActionEnum;
- LastModifiedDate : OPTIONAL IfcTimeStamp;
- LastModifyingUser : OPTIONAL IfcPersonAndOrganization;
- LastModifyingApplication : OPTIONAL IfcApplication;
- CreationDate : IfcTimeStamp;
-END_ENTITY;
-
-ENTITY IfcParameterizedProfileDef
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcCShapeProfileDef
- ,IfcCircleProfileDef
- ,IfcCraneRailAShapeProfileDef
- ,IfcCraneRailFShapeProfileDef
- ,IfcEllipseProfileDef
- ,IfcIShapeProfileDef
- ,IfcLShapeProfileDef
- ,IfcRectangleProfileDef
- ,IfcTShapeProfileDef
- ,IfcTrapeziumProfileDef
- ,IfcUShapeProfileDef
- ,IfcZShapeProfileDef))
- SUBTYPE OF (IfcProfileDef);
- Position : IfcAxis2Placement2D;
-END_ENTITY;
-
-ENTITY IfcPath
- SUBTYPE OF (IfcTopologicalRepresentationItem);
- EdgeList : LIST [1:?] OF UNIQUE IfcOrientedEdge;
- WHERE
- WR1 : IfcPathHeadToTail(SELF);
-END_ENTITY;
-
-ENTITY IfcPerformanceHistory
- SUBTYPE OF (IfcControl);
- LifeCyclePhase : IfcLabel;
-END_ENTITY;
-
-ENTITY IfcPermeableCoveringProperties
- SUBTYPE OF (IfcPropertySetDefinition);
- OperationType : IfcPermeableCoveringOperationEnum;
- PanelPosition : IfcWindowPanelPositionEnum;
- FrameDepth : OPTIONAL IfcPositiveLengthMeasure;
- FrameThickness : OPTIONAL IfcPositiveLengthMeasure;
- ShapeAspectStyle : OPTIONAL IfcShapeAspect;
-END_ENTITY;
-
-ENTITY IfcPermit
- SUBTYPE OF (IfcControl);
- PermitID : IfcIdentifier;
- UNIQUE
- UR2 : PermitID;
-END_ENTITY;
-
-ENTITY IfcPerson;
- Id : OPTIONAL IfcIdentifier;
- FamilyName : OPTIONAL IfcLabel;
- GivenName : OPTIONAL IfcLabel;
- MiddleNames : OPTIONAL LIST [1:?] OF IfcLabel;
- PrefixTitles : OPTIONAL LIST [1:?] OF IfcLabel;
- SuffixTitles : OPTIONAL LIST [1:?] OF IfcLabel;
- Roles : OPTIONAL LIST [1:?] OF IfcActorRole;
- Addresses : OPTIONAL LIST [1:?] OF IfcAddress;
- INVERSE
- EngagedIn : SET [0:?] OF IfcPersonAndOrganization FOR ThePerson;
- WHERE
- WR1 : EXISTS(FamilyName) OR
- EXISTS(GivenName);
-END_ENTITY;
-
-ENTITY IfcPersonAndOrganization;
- ThePerson : IfcPerson;
- TheOrganization : IfcOrganization;
- Roles : OPTIONAL LIST [1:?] OF IfcActorRole;
-END_ENTITY;
-
-ENTITY IfcPhysicalComplexQuantity
- SUBTYPE OF (IfcPhysicalQuantity);
- HasQuantities : SET [1:?] OF IfcPhysicalQuantity;
- Discrimination : IfcLabel;
- Quality : OPTIONAL IfcLabel;
- Usage : OPTIONAL IfcLabel;
- WHERE
- WR21 : SIZEOF(QUERY(temp <* HasQuantities | SELF :=: temp)) = 0;
-END_ENTITY;
-
-ENTITY IfcPhysicalQuantity
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcPhysicalComplexQuantity
- ,IfcPhysicalSimpleQuantity));
- Name : IfcLabel;
- Description : OPTIONAL IfcText;
- INVERSE
- PartOfComplex : SET [0:1] OF IfcPhysicalComplexQuantity FOR HasQuantities;
-END_ENTITY;
-
-ENTITY IfcPhysicalSimpleQuantity
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcQuantityArea
- ,IfcQuantityCount
- ,IfcQuantityLength
- ,IfcQuantityTime
- ,IfcQuantityVolume
- ,IfcQuantityWeight))
- SUBTYPE OF (IfcPhysicalQuantity);
- Unit : OPTIONAL IfcNamedUnit;
-END_ENTITY;
-
-ENTITY IfcPile
- SUBTYPE OF (IfcBuildingElement);
- PredefinedType : IfcPileTypeEnum;
- ConstructionType : OPTIONAL IfcPileConstructionEnum;
- WHERE
- WR1 : (PredefinedType <> IfcPileTypeEnum.USERDEFINED) OR ((PredefinedType = IfcPileTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcObject.ObjectType));
-END_ENTITY;
-
-ENTITY IfcPipeFittingType
- SUBTYPE OF (IfcFlowFittingType);
- PredefinedType : IfcPipeFittingTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcPipeFittingTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcPipeFittingTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcPipeSegmentType
- SUBTYPE OF (IfcFlowSegmentType);
- PredefinedType : IfcPipeSegmentTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcPipeSegmentTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcPipeSegmentTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcPixelTexture
- SUBTYPE OF (IfcSurfaceTexture);
- Width : IfcInteger;
- Height : IfcInteger;
- ColourComponents : IfcInteger;
- Pixel : LIST [1:?] OF BINARY(32);
- WHERE
- WR21 : Width >= 1;
- WR22 : Height >= 1;
- WR23 : {1 <= ColourComponents <= 4};
- WR24 : SIZEOF(Pixel) = (Width * Height);
-END_ENTITY;
-
-ENTITY IfcPlacement
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcAxis1Placement
- ,IfcAxis2Placement2D
- ,IfcAxis2Placement3D))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Location : IfcCartesianPoint;
- DERIVE
- Dim : IfcDimensionCount := Location.Dim;
-END_ENTITY;
-
-ENTITY IfcPlanarBox
- SUBTYPE OF (IfcPlanarExtent);
- Placement : IfcAxis2Placement;
-END_ENTITY;
-
-ENTITY IfcPlanarExtent
- SUPERTYPE OF (ONEOF
- (IfcPlanarBox))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- SizeInX : IfcLengthMeasure;
- SizeInY : IfcLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcPlane
- SUBTYPE OF (IfcElementarySurface);
-END_ENTITY;
-
-ENTITY IfcPlate
- SUBTYPE OF (IfcBuildingElement);
-END_ENTITY;
-
-ENTITY IfcPlateType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcPlateTypeEnum;
- WHERE
- WR1 : SIZEOF (QUERY(temp <* SELF\IfcObjectDefinition.HasAssociations | 'IFC2X3.IFCRELASSOCIATESMATERIAL' IN TYPEOF(temp) )) = 1;
-END_ENTITY;
-
-ENTITY IfcPoint
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcCartesianPoint
- ,IfcPointOnCurve
- ,IfcPointOnSurface))
- SUBTYPE OF (IfcGeometricRepresentationItem);
-END_ENTITY;
-
-ENTITY IfcPointOnCurve
- SUBTYPE OF (IfcPoint);
- BasisCurve : IfcCurve;
- PointParameter : IfcParameterValue;
- DERIVE
- Dim : IfcDimensionCount := BasisCurve.Dim;
-END_ENTITY;
-
-ENTITY IfcPointOnSurface
- SUBTYPE OF (IfcPoint);
- BasisSurface : IfcSurface;
- PointParameterU : IfcParameterValue;
- PointParameterV : IfcParameterValue;
- DERIVE
- Dim : IfcDimensionCount := BasisSurface.Dim;
-END_ENTITY;
-
-ENTITY IfcPolyLoop
- SUBTYPE OF (IfcLoop);
- Polygon : LIST [3:?] OF UNIQUE IfcCartesianPoint;
- WHERE
- WR21 : SIZEOF(QUERY(Temp <* Polygon | Temp.Dim <> Polygon[1].Dim)) = 0;
-END_ENTITY;
-
-ENTITY IfcPolygonalBoundedHalfSpace
- SUBTYPE OF (IfcHalfSpaceSolid);
- Position : IfcAxis2Placement3D;
- PolygonalBoundary : IfcBoundedCurve;
- WHERE
- WR41 : PolygonalBoundary.Dim = 2;
- WR42 : SIZEOF(TYPEOF(PolygonalBoundary) * [
- 'IFC2X3.IFCPOLYLINE',
- 'IFC2X3.IFCCOMPOSITECURVE']
- ) = 1;
-END_ENTITY;
-
-ENTITY IfcPolyline
- SUBTYPE OF (IfcBoundedCurve);
- Points : LIST [2:?] OF IfcCartesianPoint;
- WHERE
- WR41 : SIZEOF(QUERY(Temp <* Points | Temp.Dim <> Points[1].Dim)) = 0;
-END_ENTITY;
-
-ENTITY IfcPort
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcDistributionPort))
- SUBTYPE OF (IfcProduct);
- INVERSE
- ContainedIn : IfcRelConnectsPortToElement FOR RelatingPort;
- ConnectedFrom : SET [0:1] OF IfcRelConnectsPorts FOR RelatedPort;
- ConnectedTo : SET [0:1] OF IfcRelConnectsPorts FOR RelatingPort;
-END_ENTITY;
-
-ENTITY IfcPostalAddress
- SUBTYPE OF (IfcAddress);
- InternalLocation : OPTIONAL IfcLabel;
- AddressLines : OPTIONAL LIST [1:?] OF IfcLabel;
- PostalBox : OPTIONAL IfcLabel;
- Town : OPTIONAL IfcLabel;
- Region : OPTIONAL IfcLabel;
- PostalCode : OPTIONAL IfcLabel;
- Country : OPTIONAL IfcLabel;
- WHERE
- WR1 : EXISTS (InternalLocation) OR
- EXISTS (AddressLines) OR
- EXISTS (PostalBox) OR
- EXISTS (PostalCode) OR
- EXISTS (Town) OR
- EXISTS (Region) OR
- EXISTS (Country);
-END_ENTITY;
-
-ENTITY IfcPreDefinedColour
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcDraughtingPreDefinedColour))
- SUBTYPE OF (IfcPreDefinedItem);
-END_ENTITY;
-
-ENTITY IfcPreDefinedCurveFont
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcDraughtingPreDefinedCurveFont))
- SUBTYPE OF (IfcPreDefinedItem);
-END_ENTITY;
-
-ENTITY IfcPreDefinedDimensionSymbol
- SUBTYPE OF (IfcPreDefinedSymbol);
- WHERE
- WR31 : SELF\IfcPreDefinedItem.Name IN ['arc length','conical taper','counterbore',
- 'countersink','depth','diameter','plus minus','radius',
- 'slope','spherical diameter','spherical radius','square'];
-END_ENTITY;
-
-ENTITY IfcPreDefinedItem
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcPreDefinedColour
- ,IfcPreDefinedCurveFont
- ,IfcPreDefinedSymbol
- ,IfcPreDefinedTextFont));
- Name : IfcLabel;
-END_ENTITY;
-
-ENTITY IfcPreDefinedPointMarkerSymbol
- SUBTYPE OF (IfcPreDefinedSymbol);
- WHERE
- WR31 : SELF\IfcPreDefinedItem.Name IN ['asterisk','circle','dot','plus','square','triangle','x'];
-END_ENTITY;
-
-ENTITY IfcPreDefinedSymbol
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcPreDefinedDimensionSymbol
- ,IfcPreDefinedPointMarkerSymbol
- ,IfcPreDefinedTerminatorSymbol))
- SUBTYPE OF (IfcPreDefinedItem);
-END_ENTITY;
-
-ENTITY IfcPreDefinedTerminatorSymbol
- SUBTYPE OF (IfcPreDefinedSymbol);
- WHERE
- WR31 : SELF\IfcPreDefinedItem.Name IN ['blanked arrow','blanked box',
- 'blanked dot','dimension origin','filled arrow','filled box',
- 'filled dot','integral symbol','open arrow','slash','unfilled arrow'];
-END_ENTITY;
-
-ENTITY IfcPreDefinedTextFont
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcDraughtingPreDefinedTextFont
- ,IfcTextStyleFontModel))
- SUBTYPE OF (IfcPreDefinedItem);
-END_ENTITY;
-
-ENTITY IfcPresentationLayerAssignment
- SUPERTYPE OF (ONEOF
- (IfcPresentationLayerWithStyle));
- Name : IfcLabel;
- Description : OPTIONAL IfcText;
- AssignedItems : SET [1:?] OF IfcLayeredItem;
- Identifier : OPTIONAL IfcIdentifier;
-END_ENTITY;
-
-ENTITY IfcPresentationLayerWithStyle
- SUBTYPE OF (IfcPresentationLayerAssignment);
- LayerOn : LOGICAL;
- LayerFrozen : LOGICAL;
- LayerBlocked : LOGICAL;
- LayerStyles : SET [0:?] OF IfcPresentationStyleSelect;
-END_ENTITY;
-
-ENTITY IfcPresentationStyle
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcCurveStyle
- ,IfcFillAreaStyle
- ,IfcSurfaceStyle
- ,IfcSymbolStyle
- ,IfcTextStyle));
- Name : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcPresentationStyleAssignment;
- Styles : SET [1:?] OF IfcPresentationStyleSelect;
-END_ENTITY;
-
-ENTITY IfcProcedure
- SUBTYPE OF (IfcProcess);
- ProcedureID : IfcIdentifier;
- ProcedureType : IfcProcedureTypeEnum;
- UserDefinedProcedureType : OPTIONAL IfcLabel;
- WHERE
- WR1 : SIZEOF(QUERY(temp <* SELF\IfcObjectDefinition.Decomposes | NOT('IFC2X3.IFCRELNESTS' IN TYPEOF(temp)))) = 0;
- WR2 : SIZEOF(QUERY(temp <* SELF\IfcObjectDefinition.IsDecomposedBy | NOT('IFC2X3.IFCRELNESTS' IN TYPEOF(temp)))) = 0;
- WR3 : EXISTS(SELF\IfcRoot.Name);
- WR4 : (ProcedureType <> IfcProcedureTypeEnum.USERDEFINED) OR
- ((ProcedureType = IfcProcedureTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcProcedure.UserDefinedProcedureType));
-END_ENTITY;
-
-ENTITY IfcProcess
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcProcedure
- ,IfcTask))
- SUBTYPE OF (IfcObject);
- INVERSE
- OperatesOn : SET [0:?] OF IfcRelAssignsToProcess FOR RelatingProcess;
- IsSuccessorFrom : SET [0:?] OF IfcRelSequence FOR RelatedProcess;
- IsPredecessorTo : SET [0:?] OF IfcRelSequence FOR RelatingProcess;
-END_ENTITY;
-
-ENTITY IfcProduct
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcAnnotation
- ,IfcElement
- ,IfcGrid
- ,IfcPort
- ,IfcProxy
- ,IfcSpatialStructureElement
- ,IfcStructuralActivity
- ,IfcStructuralItem))
- SUBTYPE OF (IfcObject);
- ObjectPlacement : OPTIONAL IfcObjectPlacement;
- Representation : OPTIONAL IfcProductRepresentation;
- INVERSE
- ReferencedBy : SET [0:?] OF IfcRelAssignsToProduct FOR RelatingProduct;
- WHERE
- WR1 : (EXISTS(Representation) AND EXISTS(ObjectPlacement))
- OR (EXISTS(Representation) AND
- (NOT('IFC2X3.IFCPRODUCTDEFINITIONSHAPE' IN TYPEOF(Representation))))
- OR (NOT(EXISTS(Representation)));
-END_ENTITY;
-
-ENTITY IfcProductDefinitionShape
- SUBTYPE OF (IfcProductRepresentation);
- INVERSE
- ShapeOfProduct : SET [1:1] OF IfcProduct FOR Representation;
- HasShapeAspects : SET [0:?] OF IfcShapeAspect FOR PartOfProductDefinitionShape;
- WHERE
- WR11 : SIZEOF(QUERY(temp <* Representations |
- (NOT('IFC2X3.IFCSHAPEMODEL' IN TYPEOF(temp)))
- )) = 0;
-END_ENTITY;
-
-ENTITY IfcProductRepresentation
- SUPERTYPE OF (ONEOF
- (IfcMaterialDefinitionRepresentation
- ,IfcProductDefinitionShape));
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
- Representations : LIST [1:?] OF IfcRepresentation;
-END_ENTITY;
-
-ENTITY IfcProductsOfCombustionProperties
- SUBTYPE OF (IfcMaterialProperties);
- SpecificHeatCapacity : OPTIONAL IfcSpecificHeatCapacityMeasure;
- N20Content : OPTIONAL IfcPositiveRatioMeasure;
- COContent : OPTIONAL IfcPositiveRatioMeasure;
- CO2Content : OPTIONAL IfcPositiveRatioMeasure;
- UNIQUE
- UR11 : Material;
-END_ENTITY;
-
-ENTITY IfcProfileDef
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcArbitraryClosedProfileDef
- ,IfcArbitraryOpenProfileDef
- ,IfcCompositeProfileDef
- ,IfcDerivedProfileDef
- ,IfcParameterizedProfileDef));
- ProfileType : IfcProfileTypeEnum;
- ProfileName : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcProfileProperties
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcGeneralProfileProperties
- ,IfcRibPlateProfileProperties));
- ProfileName : OPTIONAL IfcLabel;
- ProfileDefinition : OPTIONAL IfcProfileDef;
-END_ENTITY;
-
-ENTITY IfcProject
- SUBTYPE OF (IfcObject);
- LongName : OPTIONAL IfcLabel;
- Phase : OPTIONAL IfcLabel;
- RepresentationContexts : SET [1:?] OF IfcRepresentationContext;
- UnitsInContext : IfcUnitAssignment;
- WHERE
- WR31 : EXISTS(SELF\IfcRoot.Name);
- WR32 : SIZEOF(QUERY(Temp <* RepresentationContexts |
- 'IFC2X3.IFCGEOMETRICREPRESENTATIONSUBCONTEXT' IN TYPEOF(Temp)
- )) = 0;
- WR33 : SIZEOF(SELF\IfcObjectDefinition.Decomposes) = 0;
-END_ENTITY;
-
-ENTITY IfcProjectOrder
- SUBTYPE OF (IfcControl);
- ID : IfcIdentifier;
- PredefinedType : IfcProjectOrderTypeEnum;
- Status : OPTIONAL IfcLabel;
- UNIQUE
- UR2 : ID;
-END_ENTITY;
-
-ENTITY IfcProjectOrderRecord
- SUBTYPE OF (IfcControl);
- Records : LIST [1:?] OF UNIQUE IfcRelAssignsToProjectOrder;
- PredefinedType : IfcProjectOrderRecordTypeEnum;
-END_ENTITY;
-
-ENTITY IfcProjectionCurve
- SUBTYPE OF (IfcAnnotationCurveOccurrence);
-END_ENTITY;
-
-ENTITY IfcProjectionElement
- SUBTYPE OF (IfcFeatureElementAddition);
-END_ENTITY;
-
-ENTITY IfcProperty
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcComplexProperty
- ,IfcSimpleProperty));
- Name : IfcIdentifier;
- Description : OPTIONAL IfcText;
- INVERSE
- PropertyForDependance : SET [0:?] OF IfcPropertyDependencyRelationship FOR DependingProperty;
- PropertyDependsOn : SET [0:?] OF IfcPropertyDependencyRelationship FOR DependantProperty;
- PartOfComplex : SET [0:1] OF IfcComplexProperty FOR HasProperties;
-END_ENTITY;
-
-ENTITY IfcPropertyBoundedValue
- SUBTYPE OF (IfcSimpleProperty);
- UpperBoundValue : OPTIONAL IfcValue;
- LowerBoundValue : OPTIONAL IfcValue;
- Unit : OPTIONAL IfcUnit;
- WHERE
- WR21 : NOT(EXISTS(UpperBoundValue)) OR NOT(EXISTS(LowerBoundValue)) OR
- (TYPEOF(UpperBoundValue) = TYPEOF(LowerBoundValue));
- WR22 : EXISTS(UpperBoundValue) OR EXISTS(LowerBoundValue);
-END_ENTITY;
-
-ENTITY IfcPropertyConstraintRelationship;
- RelatingConstraint : IfcConstraint;
- RelatedProperties : SET [1:?] OF IfcProperty;
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
-END_ENTITY;
-
-ENTITY IfcPropertyDefinition
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcPropertySetDefinition))
- SUBTYPE OF (IfcRoot);
- INVERSE
- HasAssociations : SET [0:?] OF IfcRelAssociates FOR RelatedObjects;
-END_ENTITY;
-
-ENTITY IfcPropertyDependencyRelationship;
- DependingProperty : IfcProperty;
- DependantProperty : IfcProperty;
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
- Expression : OPTIONAL IfcText;
- WHERE
- WR1 : DependingProperty :<>: DependantProperty;
-END_ENTITY;
-
-ENTITY IfcPropertyEnumeratedValue
- SUBTYPE OF (IfcSimpleProperty);
- EnumerationValues : LIST [1:?] OF IfcValue;
- EnumerationReference : OPTIONAL IfcPropertyEnumeration;
- WHERE
- WR1 : NOT(EXISTS(EnumerationReference)) OR
- (SIZEOF(QUERY(temp <* EnumerationValues |
- temp IN EnumerationReference.EnumerationValues))
- = SIZEOF(EnumerationValues));
-END_ENTITY;
-
-ENTITY IfcPropertyEnumeration;
- Name : IfcLabel;
- EnumerationValues : LIST [1:?] OF UNIQUE IfcValue;
- Unit : OPTIONAL IfcUnit;
- UNIQUE
- UR1 : Name;
- WHERE
- WR01 : SIZEOF(QUERY(temp <* SELF.EnumerationValues |
- NOT(TYPEOF(SELF.EnumerationValues[1]) = TYPEOF(temp))
- )) = 0;
-END_ENTITY;
-
-ENTITY IfcPropertyListValue
- SUBTYPE OF (IfcSimpleProperty);
- ListValues : LIST [1:?] OF IfcValue;
- Unit : OPTIONAL IfcUnit;
- WHERE
- WR31 : SIZEOF(QUERY(temp <* SELF.ListValues |
- NOT(TYPEOF(SELF.ListValues[1]) = TYPEOF(temp))
- )) = 0;
-END_ENTITY;
-
-ENTITY IfcPropertyReferenceValue
- SUBTYPE OF (IfcSimpleProperty);
- UsageName : OPTIONAL IfcLabel;
- PropertyReference : IfcObjectReferenceSelect;
-END_ENTITY;
-
-ENTITY IfcPropertySet
- SUBTYPE OF (IfcPropertySetDefinition);
- HasProperties : SET [1:?] OF IfcProperty;
- WHERE
- WR31 : EXISTS(SELF\IfcRoot.Name);
- WR32 : IfcUniquePropertyName(HasProperties);
-END_ENTITY;
-
-ENTITY IfcPropertySetDefinition
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcDoorLiningProperties
- ,IfcDoorPanelProperties
- ,IfcElementQuantity
- ,IfcEnergyProperties
- ,IfcFluidFlowProperties
- ,IfcPermeableCoveringProperties
- ,IfcPropertySet
- ,IfcReinforcementDefinitionProperties
- ,IfcServiceLifeFactor
- ,IfcSoundProperties
- ,IfcSoundValue
- ,IfcSpaceThermalLoadProperties
- ,IfcWindowLiningProperties
- ,IfcWindowPanelProperties))
- SUBTYPE OF (IfcPropertyDefinition);
- INVERSE
- PropertyDefinitionOf : SET [0:1] OF IfcRelDefinesByProperties FOR RelatingPropertyDefinition;
- DefinesType : SET [0:1] OF IfcTypeObject FOR HasPropertySets;
-END_ENTITY;
-
-ENTITY IfcPropertySingleValue
- SUBTYPE OF (IfcSimpleProperty);
- NominalValue : OPTIONAL IfcValue;
- Unit : OPTIONAL IfcUnit;
-END_ENTITY;
-
-ENTITY IfcPropertyTableValue
- SUBTYPE OF (IfcSimpleProperty);
- DefiningValues : LIST [1:?] OF UNIQUE IfcValue;
- DefinedValues : LIST [1:?] OF IfcValue;
- Expression : OPTIONAL IfcText;
- DefiningUnit : OPTIONAL IfcUnit;
- DefinedUnit : OPTIONAL IfcUnit;
- WHERE
- WR1 : SIZEOF(DefiningValues) = SIZEOF(DefinedValues);
- WR2 : SIZEOF(QUERY(temp <* SELF.DefiningValues | TYPEOF(temp) <> TYPEOF(SELF.DefiningValues[1])))=0;
- WR3 : SIZEOF(QUERY(temp <* SELF.DefinedValues | TYPEOF(temp) <> TYPEOF(SELF.DefinedValues[1])))=0;
-END_ENTITY;
-
-ENTITY IfcProtectiveDeviceType
- SUBTYPE OF (IfcFlowControllerType);
- PredefinedType : IfcProtectiveDeviceTypeEnum;
-END_ENTITY;
-
-ENTITY IfcProxy
- SUBTYPE OF (IfcProduct);
- ProxyType : IfcObjectTypeEnum;
- Tag : OPTIONAL IfcLabel;
- WHERE
- WR1 : EXISTS(SELF\IfcRoot.Name);
-END_ENTITY;
-
-ENTITY IfcPumpType
- SUBTYPE OF (IfcFlowMovingDeviceType);
- PredefinedType : IfcPumpTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcPumpTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcPumpTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcQuantityArea
- SUBTYPE OF (IfcPhysicalSimpleQuantity);
- AreaValue : IfcAreaMeasure;
- WHERE
- WR21 : NOT(EXISTS(SELF\IfcPhysicalSimpleQuantity.Unit)) OR
- (SELF\IfcPhysicalSimpleQuantity.Unit.UnitType = IfcUnitEnum.AREAUNIT);
- WR22 : AreaValue >= 0.;
-END_ENTITY;
-
-ENTITY IfcQuantityCount
- SUBTYPE OF (IfcPhysicalSimpleQuantity);
- CountValue : IfcCountMeasure;
- WHERE
- WR21 : CountValue >= 0.;
-END_ENTITY;
-
-ENTITY IfcQuantityLength
- SUBTYPE OF (IfcPhysicalSimpleQuantity);
- LengthValue : IfcLengthMeasure;
- WHERE
- WR21 : NOT(EXISTS(SELF\IfcPhysicalSimpleQuantity.Unit)) OR
- (SELF\IfcPhysicalSimpleQuantity.Unit.UnitType = IfcUnitEnum.LENGTHUNIT);
- WR22 : LengthValue >= 0.;
-END_ENTITY;
-
-ENTITY IfcQuantityTime
- SUBTYPE OF (IfcPhysicalSimpleQuantity);
- TimeValue : IfcTimeMeasure;
- WHERE
- WR21 : NOT(EXISTS(SELF\IfcPhysicalSimpleQuantity.Unit)) OR
- (SELF\IfcPhysicalSimpleQuantity.Unit.UnitType = IfcUnitEnum.TIMEUNIT);
- WR22 : TimeValue >= 0.;
-END_ENTITY;
-
-ENTITY IfcQuantityVolume
- SUBTYPE OF (IfcPhysicalSimpleQuantity);
- VolumeValue : IfcVolumeMeasure;
- WHERE
- WR21 : NOT(EXISTS(SELF\IfcPhysicalSimpleQuantity.Unit)) OR
- (SELF\IfcPhysicalSimpleQuantity.Unit.UnitType = IfcUnitEnum.VOLUMEUNIT);
- WR22 : VolumeValue >= 0.;
-END_ENTITY;
-
-ENTITY IfcQuantityWeight
- SUBTYPE OF (IfcPhysicalSimpleQuantity);
- WeightValue : IfcMassMeasure;
- WHERE
- WR21 : NOT(EXISTS(SELF\IfcPhysicalSimpleQuantity.Unit)) OR
- (SELF\IfcPhysicalSimpleQuantity.Unit.UnitType = IfcUnitEnum.MASSUNIT);
- WR22 : WeightValue >= 0.;
-END_ENTITY;
-
-ENTITY IfcRadiusDimension
- SUBTYPE OF (IfcDimensionCurveDirectedCallout);
-END_ENTITY;
-
-ENTITY IfcRailing
- SUBTYPE OF (IfcBuildingElement);
- PredefinedType : OPTIONAL IfcRailingTypeEnum;
-END_ENTITY;
-
-ENTITY IfcRailingType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcRailingTypeEnum;
-END_ENTITY;
-
-ENTITY IfcRamp
- SUBTYPE OF (IfcBuildingElement);
- ShapeType : IfcRampTypeEnum;
- WHERE
- WR1 : (HIINDEX(SELF\IfcObjectDefinition.IsDecomposedBy) = 0) OR
- ((HIINDEX(SELF\IfcObjectDefinition.IsDecomposedBy) = 1) AND (NOT(EXISTS(SELF\IfcProduct.Representation))));
-END_ENTITY;
-
-ENTITY IfcRampFlight
- SUBTYPE OF (IfcBuildingElement);
-END_ENTITY;
-
-ENTITY IfcRampFlightType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcRampFlightTypeEnum;
-END_ENTITY;
-
-ENTITY IfcRationalBezierCurve
- SUBTYPE OF (IfcBezierCurve);
- WeightsData : LIST [2:?] OF REAL;
- DERIVE
- Weights : ARRAY [0:255] OF REAL := IfcListToArray(WeightsData,0,SELF\IfcBSplineCurve.UpperIndexOnControlPoints);
- WHERE
- WR1 : SIZEOF(WeightsData) = SIZEOF(SELF\IfcBSplineCurve.ControlPointsList);
- WR2 : IfcCurveWeightsPositive(SELF);
-END_ENTITY;
-
-ENTITY IfcRectangleHollowProfileDef
- SUBTYPE OF (IfcRectangleProfileDef);
- WallThickness : IfcPositiveLengthMeasure;
- InnerFilletRadius : OPTIONAL IfcPositiveLengthMeasure;
- OuterFilletRadius : OPTIONAL IfcPositiveLengthMeasure;
- WHERE
- WR31 : (WallThickness < (SELF\IfcRectangleProfileDef.XDim/2.)) AND
- (WallThickness < (SELF\IfcRectangleProfileDef.YDim/2.));
- WR32 : NOT(EXISTS(OuterFilletRadius)) OR
- ((OuterFilletRadius <= (SELF\IfcRectangleProfileDef.XDim/2.)) AND
- (OuterFilletRadius <= (SELF\IfcRectangleProfileDef.YDim/2.)));
- WR33 : NOT(EXISTS(InnerFilletRadius)) OR
- ((InnerFilletRadius <= (SELF\IfcRectangleProfileDef.XDim/2. - WallThickness)) AND
- (InnerFilletRadius <= (SELF\IfcRectangleProfileDef.YDim/2. - WallThickness)));
-END_ENTITY;
-
-ENTITY IfcRectangleProfileDef
- SUPERTYPE OF (ONEOF
- (IfcRectangleHollowProfileDef
- ,IfcRoundedRectangleProfileDef))
- SUBTYPE OF (IfcParameterizedProfileDef);
- XDim : IfcPositiveLengthMeasure;
- YDim : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcRectangularPyramid
- SUBTYPE OF (IfcCsgPrimitive3D);
- XLength : IfcPositiveLengthMeasure;
- YLength : IfcPositiveLengthMeasure;
- Height : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcRectangularTrimmedSurface
- SUBTYPE OF (IfcBoundedSurface);
- BasisSurface : IfcSurface;
- U1 : IfcParameterValue;
- V1 : IfcParameterValue;
- U2 : IfcParameterValue;
- V2 : IfcParameterValue;
- Usense : BOOLEAN;
- Vsense : BOOLEAN;
- DERIVE
- Dim : IfcDimensionCount := BasisSurface.Dim;
- WHERE
- WR1 : U1 <> U2;
- WR2 : V1 <> V2;
- WR3 : (('IFC2X3.IFCELEMENTARYSURFACE' IN TYPEOF(BasisSurface)) AND
- (NOT ('IFC2X3.IFCPLANE' IN TYPEOF(BasisSurface)))) OR
- ('IFC2X3.IFCSURFACEOFREVOLUTION' IN TYPEOF(BasisSurface)) OR
- (Usense = (U2 > U1));
- WR4 : Vsense = (V2 > V1);
-END_ENTITY;
-
-ENTITY IfcReferencesValueDocument;
- ReferencedDocument : IfcDocumentSelect;
- ReferencingValues : SET [1:?] OF IfcAppliedValue;
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
-END_ENTITY;
-
-ENTITY IfcRegularTimeSeries
- SUBTYPE OF (IfcTimeSeries);
- TimeStep : IfcTimeMeasure;
- Values : LIST [1:?] OF IfcTimeSeriesValue;
-END_ENTITY;
-
-ENTITY IfcReinforcementBarProperties;
- TotalCrossSectionArea : IfcAreaMeasure;
- SteelGrade : IfcLabel;
- BarSurface : OPTIONAL IfcReinforcingBarSurfaceEnum;
- EffectiveDepth : OPTIONAL IfcLengthMeasure;
- NominalBarDiameter : OPTIONAL IfcPositiveLengthMeasure;
- BarCount : OPTIONAL IfcCountMeasure;
-END_ENTITY;
-
-ENTITY IfcReinforcementDefinitionProperties
- SUBTYPE OF (IfcPropertySetDefinition);
- DefinitionType : OPTIONAL IfcLabel;
- ReinforcementSectionDefinitions : LIST [1:?] OF IfcSectionReinforcementProperties;
-END_ENTITY;
-
-ENTITY IfcReinforcingBar
- SUBTYPE OF (IfcReinforcingElement);
- NominalDiameter : IfcPositiveLengthMeasure;
- CrossSectionArea : IfcAreaMeasure;
- BarLength : OPTIONAL IfcPositiveLengthMeasure;
- BarRole : IfcReinforcingBarRoleEnum;
- BarSurface : OPTIONAL IfcReinforcingBarSurfaceEnum;
- WHERE
- WR1 : (BarRole <> IfcReinforcingBarRoleEnum.USERDEFINED) OR ((BarRole = IfcReinforcingBarRoleEnum.USERDEFINED) AND EXISTS(SELF\IfcObject.ObjectType));
-END_ENTITY;
-
-ENTITY IfcReinforcingElement
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcReinforcingBar
- ,IfcReinforcingMesh
- ,IfcTendon
- ,IfcTendonAnchor))
- SUBTYPE OF (IfcBuildingElementComponent);
- SteelGrade : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcReinforcingMesh
- SUBTYPE OF (IfcReinforcingElement);
- MeshLength : OPTIONAL IfcPositiveLengthMeasure;
- MeshWidth : OPTIONAL IfcPositiveLengthMeasure;
- LongitudinalBarNominalDiameter : IfcPositiveLengthMeasure;
- TransverseBarNominalDiameter : IfcPositiveLengthMeasure;
- LongitudinalBarCrossSectionArea : IfcAreaMeasure;
- TransverseBarCrossSectionArea : IfcAreaMeasure;
- LongitudinalBarSpacing : IfcPositiveLengthMeasure;
- TransverseBarSpacing : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcRelAggregates
- SUBTYPE OF (IfcRelDecomposes);
-END_ENTITY;
-
-ENTITY IfcRelAssigns
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcRelAssignsToActor
- ,IfcRelAssignsToControl
- ,IfcRelAssignsToGroup
- ,IfcRelAssignsToProcess
- ,IfcRelAssignsToProduct
- ,IfcRelAssignsToResource))
- SUBTYPE OF (IfcRelationship);
- RelatedObjects : SET [1:?] OF IfcObjectDefinition;
- RelatedObjectsType : OPTIONAL IfcObjectTypeEnum;
- WHERE
- WR1 : IfcCorrectObjectAssignment(RelatedObjectsType, RelatedObjects);
-END_ENTITY;
-
-ENTITY IfcRelAssignsTasks
- SUBTYPE OF (IfcRelAssignsToControl);
- TimeForTask : OPTIONAL IfcScheduleTimeControl;
- WHERE
- WR1 : HIINDEX(SELF\IfcRelAssigns.RelatedObjects) = 1;
- WR2 : 'IFC2X3.IFCTASK' IN TYPEOF(SELF\IfcRelAssigns.RelatedObjects[1]);
- WR3 : 'IFC2X3.IFCWORKCONTROL' IN TYPEOF(SELF\IfcRelAssignsToControl.RelatingControl);
-END_ENTITY;
-
-ENTITY IfcRelAssignsToActor
- SUPERTYPE OF (ONEOF
- (IfcRelOccupiesSpaces))
- SUBTYPE OF (IfcRelAssigns);
- RelatingActor : IfcActor;
- ActingRole : OPTIONAL IfcActorRole;
- WHERE
- WR1 : SIZEOF(QUERY(Temp <* SELF\IfcRelAssigns.RelatedObjects | RelatingActor :=: Temp)) = 0;
-END_ENTITY;
-
-ENTITY IfcRelAssignsToControl
- SUPERTYPE OF (ONEOF
- (IfcRelAssignsTasks
- ,IfcRelAssignsToProjectOrder
- ,IfcRelSchedulesCostItems))
- SUBTYPE OF (IfcRelAssigns);
- RelatingControl : IfcControl;
- WHERE
- WR1 : SIZEOF(QUERY(Temp <* SELF\IfcRelAssigns.RelatedObjects | RelatingControl :=: Temp)) = 0;
-END_ENTITY;
-
-ENTITY IfcRelAssignsToGroup
- SUBTYPE OF (IfcRelAssigns);
- RelatingGroup : IfcGroup;
- WHERE
- WR1 : SIZEOF(QUERY(Temp <* SELF\IfcRelAssigns.RelatedObjects | RelatingGroup :=: Temp)) = 0;
-END_ENTITY;
-
-ENTITY IfcRelAssignsToProcess
- SUBTYPE OF (IfcRelAssigns);
- RelatingProcess : IfcProcess;
- QuantityInProcess : OPTIONAL IfcMeasureWithUnit;
- WHERE
- WR1 : SIZEOF(QUERY(Temp <* SELF\IfcRelAssigns.RelatedObjects | RelatingProcess :=: Temp)) = 0;
-END_ENTITY;
-
-ENTITY IfcRelAssignsToProduct
- SUBTYPE OF (IfcRelAssigns);
- RelatingProduct : IfcProduct;
- WHERE
- WR1 : SIZEOF(QUERY(Temp <* SELF\IfcRelAssigns.RelatedObjects | RelatingProduct :=: Temp)) = 0;
-END_ENTITY;
-
-ENTITY IfcRelAssignsToProjectOrder
- SUBTYPE OF (IfcRelAssignsToControl);
-END_ENTITY;
-
-ENTITY IfcRelAssignsToResource
- SUBTYPE OF (IfcRelAssigns);
- RelatingResource : IfcResource;
- WHERE
- WR1 : SIZEOF(QUERY(Temp <* SELF\IfcRelAssigns.RelatedObjects | RelatingResource :=: Temp)) = 0;
-END_ENTITY;
-
-ENTITY IfcRelAssociates
- SUPERTYPE OF (ONEOF
- (IfcRelAssociatesAppliedValue
- ,IfcRelAssociatesApproval
- ,IfcRelAssociatesClassification
- ,IfcRelAssociatesConstraint
- ,IfcRelAssociatesDocument
- ,IfcRelAssociatesLibrary
- ,IfcRelAssociatesMaterial
- ,IfcRelAssociatesProfileProperties))
- SUBTYPE OF (IfcRelationship);
- RelatedObjects : SET [1:?] OF IfcRoot;
- WHERE
- WR21 : SIZEOF(QUERY(temp <* RelatedObjects |
- NOT(('IFC2X3.IFCOBJECTDEFINITION' IN TYPEOF(temp))
- OR ('IFC2X3.IFCPROPERTYDEFINITION' IN TYPEOF(temp)))
- )) = 0;
-END_ENTITY;
-
-ENTITY IfcRelAssociatesAppliedValue
- SUBTYPE OF (IfcRelAssociates);
- RelatingAppliedValue : IfcAppliedValue;
-END_ENTITY;
-
-ENTITY IfcRelAssociatesApproval
- SUBTYPE OF (IfcRelAssociates);
- RelatingApproval : IfcApproval;
-END_ENTITY;
-
-ENTITY IfcRelAssociatesClassification
- SUBTYPE OF (IfcRelAssociates);
- RelatingClassification : IfcClassificationNotationSelect;
-END_ENTITY;
-
-ENTITY IfcRelAssociatesConstraint
- SUBTYPE OF (IfcRelAssociates);
- Intent : IfcLabel;
- RelatingConstraint : IfcConstraint;
-END_ENTITY;
-
-ENTITY IfcRelAssociatesDocument
- SUBTYPE OF (IfcRelAssociates);
- RelatingDocument : IfcDocumentSelect;
-END_ENTITY;
-
-ENTITY IfcRelAssociatesLibrary
- SUBTYPE OF (IfcRelAssociates);
- RelatingLibrary : IfcLibrarySelect;
-END_ENTITY;
-
-ENTITY IfcRelAssociatesMaterial
- SUBTYPE OF (IfcRelAssociates);
- RelatingMaterial : IfcMaterialSelect;
- WHERE
- WR21 : SIZEOF(QUERY(temp <* SELF\IfcRelAssociates.RelatedObjects |
- ('IFC2X3.IFCFEATUREELEMENTSUBTRACTION' IN TYPEOF(temp))
- OR ('IFC2X3.IFCVIRTUALELEMENT' IN TYPEOF(temp))
- )) = 0;
- WR22 : SIZEOF(QUERY(temp <* SELF\IfcRelAssociates.RelatedObjects |
- (NOT('IFC2X3.IFCPRODUCT' IN TYPEOF(temp)) AND NOT('IFC2X3.IFCTYPEPRODUCT' IN TYPEOF(temp)))
- )) = 0;
-END_ENTITY;
-
-ENTITY IfcRelAssociatesProfileProperties
- SUBTYPE OF (IfcRelAssociates);
- RelatingProfileProperties : IfcProfileProperties;
- ProfileSectionLocation : OPTIONAL IfcShapeAspect;
- ProfileOrientation : OPTIONAL IfcOrientationSelect;
-END_ENTITY;
-
-ENTITY IfcRelConnects
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcRelConnectsElements
- ,IfcRelConnectsPortToElement
- ,IfcRelConnectsPorts
- ,IfcRelConnectsStructuralActivity
- ,IfcRelConnectsStructuralElement
- ,IfcRelConnectsStructuralMember
- ,IfcRelContainedInSpatialStructure
- ,IfcRelCoversBldgElements
- ,IfcRelCoversSpaces
- ,IfcRelFillsElement
- ,IfcRelFlowControlElements
- ,IfcRelInteractionRequirements
- ,IfcRelProjectsElement
- ,IfcRelReferencedInSpatialStructure
- ,IfcRelSequence
- ,IfcRelServicesBuildings
- ,IfcRelSpaceBoundary
- ,IfcRelVoidsElement))
- SUBTYPE OF (IfcRelationship);
-END_ENTITY;
-
-ENTITY IfcRelConnectsElements
- SUPERTYPE OF (ONEOF
- (IfcRelConnectsPathElements
- ,IfcRelConnectsWithRealizingElements))
- SUBTYPE OF (IfcRelConnects);
- ConnectionGeometry : OPTIONAL IfcConnectionGeometry;
- RelatingElement : IfcElement;
- RelatedElement : IfcElement;
- WHERE
- WR31 : RelatingElement :<>: RelatedElement;
-END_ENTITY;
-
-ENTITY IfcRelConnectsPathElements
- SUBTYPE OF (IfcRelConnectsElements);
- RelatingPriorities : LIST [0:?] OF INTEGER;
- RelatedPriorities : LIST [0:?] OF INTEGER;
- RelatedConnectionType : IfcConnectionTypeEnum;
- RelatingConnectionType : IfcConnectionTypeEnum;
- DERIVE
- RelatedLayerCount : INTEGER := IfcNoOfLayers(SELF\IfcRelConnectsElements.RelatedElement);
- RelatingLayerCount : INTEGER := IfcNoOfLayers(SELF\IfcRelConnectsElements.RelatingElement);
-END_ENTITY;
-
-ENTITY IfcRelConnectsPortToElement
- SUBTYPE OF (IfcRelConnects);
- RelatingPort : IfcPort;
- RelatedElement : IfcElement;
-END_ENTITY;
-
-ENTITY IfcRelConnectsPorts
- SUBTYPE OF (IfcRelConnects);
- RelatingPort : IfcPort;
- RelatedPort : IfcPort;
- RealizingElement : OPTIONAL IfcElement;
-END_ENTITY;
-
-ENTITY IfcRelConnectsStructuralActivity
- SUBTYPE OF (IfcRelConnects);
- RelatingElement : IfcStructuralActivityAssignmentSelect;
- RelatedStructuralActivity : IfcStructuralActivity;
-END_ENTITY;
-
-ENTITY IfcRelConnectsStructuralElement
- SUBTYPE OF (IfcRelConnects);
- RelatingElement : IfcElement;
- RelatedStructuralMember : IfcStructuralMember;
-END_ENTITY;
-
-ENTITY IfcRelConnectsStructuralMember
- SUPERTYPE OF (ONEOF
- (IfcRelConnectsWithEccentricity))
- SUBTYPE OF (IfcRelConnects);
- RelatingStructuralMember : IfcStructuralMember;
- RelatedStructuralConnection : IfcStructuralConnection;
- AppliedCondition : OPTIONAL IfcBoundaryCondition;
- AdditionalConditions : OPTIONAL IfcStructuralConnectionCondition;
- SupportedLength : OPTIONAL IfcLengthMeasure;
- ConditionCoordinateSystem : OPTIONAL IfcAxis2Placement3D;
-END_ENTITY;
-
-ENTITY IfcRelConnectsWithEccentricity
- SUBTYPE OF (IfcRelConnectsStructuralMember);
- ConnectionConstraint : IfcConnectionGeometry;
-END_ENTITY;
-
-ENTITY IfcRelConnectsWithRealizingElements
- SUBTYPE OF (IfcRelConnectsElements);
- RealizingElements : SET [1:?] OF IfcElement;
- ConnectionType : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcRelContainedInSpatialStructure
- SUBTYPE OF (IfcRelConnects);
- RelatedElements : SET [1:?] OF IfcProduct;
- RelatingStructure : IfcSpatialStructureElement;
- WHERE
- WR31 : SIZEOF(QUERY(temp <* RelatedElements | 'IFC2X3.IFCSPATIALSTRUCTUREELEMENT' IN TYPEOF(temp))) = 0;
-END_ENTITY;
-
-ENTITY IfcRelCoversBldgElements
- SUBTYPE OF (IfcRelConnects);
- RelatingBuildingElement : IfcElement;
- RelatedCoverings : SET [1:?] OF IfcCovering;
-END_ENTITY;
-
-ENTITY IfcRelCoversSpaces
- SUBTYPE OF (IfcRelConnects);
- RelatedSpace : IfcSpace;
- RelatedCoverings : SET [1:?] OF IfcCovering;
-END_ENTITY;
-
-ENTITY IfcRelDecomposes
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcRelAggregates
- ,IfcRelNests))
- SUBTYPE OF (IfcRelationship);
- RelatingObject : IfcObjectDefinition;
- RelatedObjects : SET [1:?] OF IfcObjectDefinition;
- WHERE
- WR31 : SIZEOF(QUERY(Temp <* RelatedObjects | RelatingObject :=: Temp)) = 0;
- WR32 : SIZEOF(QUERY(Temp <* RelatedObjects | 'IFC2X3.IFCTYPEOBJECT' IN TYPEOF(temp))) = 0;
- WR33 : NOT('IFC2X3.IFCTYPEOBJECT' IN TYPEOF(RelatingObject));
-END_ENTITY;
-
-ENTITY IfcRelDefines
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcRelDefinesByProperties
- ,IfcRelDefinesByType))
- SUBTYPE OF (IfcRelationship);
- RelatedObjects : SET [1:?] OF IfcObject;
-END_ENTITY;
-
-ENTITY IfcRelDefinesByProperties
- SUPERTYPE OF (ONEOF
- (IfcRelOverridesProperties))
- SUBTYPE OF (IfcRelDefines);
- RelatingPropertyDefinition : IfcPropertySetDefinition;
-END_ENTITY;
-
-ENTITY IfcRelDefinesByType
- SUBTYPE OF (IfcRelDefines);
- RelatingType : IfcTypeObject;
-END_ENTITY;
-
-ENTITY IfcRelFillsElement
- SUBTYPE OF (IfcRelConnects);
- RelatingOpeningElement : IfcOpeningElement;
- RelatedBuildingElement : IfcElement;
-END_ENTITY;
-
-ENTITY IfcRelFlowControlElements
- SUBTYPE OF (IfcRelConnects);
- RelatedControlElements : SET [1:?] OF IfcDistributionControlElement;
- RelatingFlowElement : IfcDistributionFlowElement;
-END_ENTITY;
-
-ENTITY IfcRelInteractionRequirements
- SUBTYPE OF (IfcRelConnects);
- DailyInteraction : OPTIONAL IfcCountMeasure;
- ImportanceRating : OPTIONAL IfcNormalisedRatioMeasure;
- LocationOfInteraction : OPTIONAL IfcSpatialStructureElement;
- RelatedSpaceProgram : IfcSpaceProgram;
- RelatingSpaceProgram : IfcSpaceProgram;
-END_ENTITY;
-
-ENTITY IfcRelNests
- SUBTYPE OF (IfcRelDecomposes);
- WHERE
- WR1 : SIZEOF(QUERY(Temp <* SELF\IfcRelDecomposes.RelatedObjects |
- NOT(TYPEOF(SELF\IfcRelDecomposes.RelatingObject) = TYPEOF(Temp)))) = 0;
-END_ENTITY;
-
-ENTITY IfcRelOccupiesSpaces
- SUBTYPE OF (IfcRelAssignsToActor);
-END_ENTITY;
-
-ENTITY IfcRelOverridesProperties
- SUBTYPE OF (IfcRelDefinesByProperties);
- OverridingProperties : SET [1:?] OF IfcProperty;
- WHERE
- WR1 : SIZEOF(SELF\IfcRelDefines.RelatedObjects) = 1;
-END_ENTITY;
-
-ENTITY IfcRelProjectsElement
- SUBTYPE OF (IfcRelConnects);
- RelatingElement : IfcElement;
- RelatedFeatureElement : IfcFeatureElementAddition;
-END_ENTITY;
-
-ENTITY IfcRelReferencedInSpatialStructure
- SUBTYPE OF (IfcRelConnects);
- RelatedElements : SET [1:?] OF IfcProduct;
- RelatingStructure : IfcSpatialStructureElement;
- WHERE
- WR31 : SIZEOF(QUERY(temp <* RelatedElements | 'IFC2X3.IFCSPATIALSTRUCTUREELEMENT' IN TYPEOF(temp))) = 0;
-END_ENTITY;
-
-ENTITY IfcRelSchedulesCostItems
- SUBTYPE OF (IfcRelAssignsToControl);
- WHERE
- WR11 : SIZEOF(QUERY(temp <* SELF\IfcRelAssigns.RelatedObjects |
- NOT('IFC2X3.IFCCOSTITEM' IN TYPEOF(temp))
- )) = 0;
- WR12 : 'IFC2X3.IFCCOSTSCHEDULE' IN TYPEOF (SELF\IfcRelAssignsToControl.RelatingControl);
-END_ENTITY;
-
-ENTITY IfcRelSequence
- SUBTYPE OF (IfcRelConnects);
- RelatingProcess : IfcProcess;
- RelatedProcess : IfcProcess;
- TimeLag : IfcTimeMeasure;
- SequenceType : IfcSequenceEnum;
- WHERE
- WR1 : RelatingProcess :<>: RelatedProcess;
-END_ENTITY;
-
-ENTITY IfcRelServicesBuildings
- SUBTYPE OF (IfcRelConnects);
- RelatingSystem : IfcSystem;
- RelatedBuildings : SET [1:?] OF IfcSpatialStructureElement;
-END_ENTITY;
-
-ENTITY IfcRelSpaceBoundary
- SUBTYPE OF (IfcRelConnects);
- RelatingSpace : IfcSpace;
- RelatedBuildingElement : OPTIONAL IfcElement;
- ConnectionGeometry : OPTIONAL IfcConnectionGeometry;
- PhysicalOrVirtualBoundary : IfcPhysicalOrVirtualEnum;
- InternalOrExternalBoundary : IfcInternalOrExternalEnum;
- WHERE
- WR1 : ((PhysicalOrVirtualBoundary = IfcPhysicalOrVirtualEnum.Physical) AND
- (EXISTS(RelatedBuildingElement) AND NOT('IFC2X3.IFCVIRTUALELEMENT' IN TYPEOF(RelatedBuildingElement))))
- OR
- ((PhysicalOrVirtualBoundary = IfcPhysicalOrVirtualEnum.Virtual) AND
- (NOT(EXISTS(RelatedBuildingElement)) OR ('IFC2X3.IFCVIRTUALELEMENT' IN TYPEOF(RelatedBuildingElement))))
- OR
- (PhysicalOrVirtualBoundary = IfcPhysicalOrVirtualEnum.NotDefined);
-END_ENTITY;
-
-ENTITY IfcRelVoidsElement
- SUBTYPE OF (IfcRelConnects);
- RelatingBuildingElement : IfcElement;
- RelatedOpeningElement : IfcFeatureElementSubtraction;
-END_ENTITY;
-
-ENTITY IfcRelationship
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcRelAssigns
- ,IfcRelAssociates
- ,IfcRelConnects
- ,IfcRelDecomposes
- ,IfcRelDefines))
- SUBTYPE OF (IfcRoot);
-END_ENTITY;
-
-ENTITY IfcRelaxation;
- RelaxationValue : IfcNormalisedRatioMeasure;
- InitialStress : IfcNormalisedRatioMeasure;
-END_ENTITY;
-
-ENTITY IfcRepresentation
- SUPERTYPE OF (ONEOF
- (IfcShapeModel
- ,IfcStyleModel));
- ContextOfItems : IfcRepresentationContext;
- RepresentationIdentifier : OPTIONAL IfcLabel;
- RepresentationType : OPTIONAL IfcLabel;
- Items : SET [1:?] OF IfcRepresentationItem;
- INVERSE
- RepresentationMap : SET [0:1] OF IfcRepresentationMap FOR MappedRepresentation;
- LayerAssignments : SET [0:?] OF IfcPresentationLayerAssignment FOR Assigneditems;
- OfProductRepresentation : SET [0:1] OF IfcProductRepresentation FOR Representations;
-END_ENTITY;
-
-ENTITY IfcRepresentationContext
- SUPERTYPE OF (ONEOF
- (IfcGeometricRepresentationContext));
- ContextIdentifier : OPTIONAL IfcLabel;
- ContextType : OPTIONAL IfcLabel;
- INVERSE
- RepresentationsInContext : SET [0:?] OF IfcRepresentation FOR ContextOfItems;
-END_ENTITY;
-
-ENTITY IfcRepresentationItem
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcGeometricRepresentationItem
- ,IfcMappedItem
- ,IfcStyledItem
- ,IfcTopologicalRepresentationItem));
- INVERSE
- LayerAssignments : SET [0:?] OF IfcPresentationLayerAssignment FOR AssignedItems;
- StyledByItem : SET [0:1] OF IfcStyledItem FOR Item;
-END_ENTITY;
-
-ENTITY IfcRepresentationMap;
- MappingOrigin : IfcAxis2Placement;
- MappedRepresentation : IfcRepresentation;
- INVERSE
- MapUsage : SET [0:?] OF IfcMappedItem FOR MappingSource;
-END_ENTITY;
-
-ENTITY IfcResource
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcConstructionResource))
- SUBTYPE OF (IfcObject);
- INVERSE
- ResourceOf : SET [0:?] OF IfcRelAssignsToResource FOR RelatingResource;
-END_ENTITY;
-
-ENTITY IfcRevolvedAreaSolid
- SUBTYPE OF (IfcSweptAreaSolid);
- Axis : IfcAxis1Placement;
- Angle : IfcPlaneAngleMeasure;
- DERIVE
- AxisLine : IfcLine := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcCurve() || IfcLine(Axis.Location,
- IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector(Axis.Z,1.0));
- WHERE
- WR31 : Axis.Location.Coordinates[3] = 0.0;
- WR32 : Axis.Z.DirectionRatios[3] = 0.0;
-END_ENTITY;
-
-ENTITY IfcRibPlateProfileProperties
- SUBTYPE OF (IfcProfileProperties);
- Thickness : OPTIONAL IfcPositiveLengthMeasure;
- RibHeight : OPTIONAL IfcPositiveLengthMeasure;
- RibWidth : OPTIONAL IfcPositiveLengthMeasure;
- RibSpacing : OPTIONAL IfcPositiveLengthMeasure;
- Direction : IfcRibPlateDirectionEnum;
-END_ENTITY;
-
-ENTITY IfcRightCircularCone
- SUBTYPE OF (IfcCsgPrimitive3D);
- Height : IfcPositiveLengthMeasure;
- BottomRadius : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcRightCircularCylinder
- SUBTYPE OF (IfcCsgPrimitive3D);
- Height : IfcPositiveLengthMeasure;
- Radius : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcRoof
- SUBTYPE OF (IfcBuildingElement);
- ShapeType : IfcRoofTypeEnum;
- WHERE
- WR1 : (HIINDEX(SELF\IfcObjectDefinition.IsDecomposedBy) = 0) OR
- ((HIINDEX(SELF\IfcObjectDefinition.IsDecomposedBy) = 1) AND (NOT(EXISTS(SELF\IfcProduct.Representation))));
-END_ENTITY;
-
-ENTITY IfcRoot
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcObjectDefinition
- ,IfcPropertyDefinition
- ,IfcRelationship));
- GlobalId : IfcGloballyUniqueId;
- OwnerHistory : IfcOwnerHistory;
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
- UNIQUE
- UR1 : GlobalId;
-END_ENTITY;
-
-ENTITY IfcRoundedEdgeFeature
- SUBTYPE OF (IfcEdgeFeature);
- Radius : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcRoundedRectangleProfileDef
- SUBTYPE OF (IfcRectangleProfileDef);
- RoundingRadius : IfcPositiveLengthMeasure;
- WHERE
- WR31 : ((RoundingRadius <= (SELF\IfcRectangleProfileDef.XDim/2.)) AND
- (RoundingRadius <= (SELF\IfcRectangleProfileDef.YDim/2.)));
-END_ENTITY;
-
-ENTITY IfcSIUnit
- SUBTYPE OF (IfcNamedUnit);
- Prefix : OPTIONAL IfcSIPrefix;
- Name : IfcSIUnitName;
- DERIVE
- SELF\IfcNamedUnit.Dimensions : IfcDimensionalExponents := IfcDimensionsForSiUnit (SELF.Name);
-END_ENTITY;
-
-ENTITY IfcSanitaryTerminalType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcSanitaryTerminalTypeEnum;
-END_ENTITY;
-
-ENTITY IfcScheduleTimeControl
- SUBTYPE OF (IfcControl);
- ActualStart : OPTIONAL IfcDateTimeSelect;
- EarlyStart : OPTIONAL IfcDateTimeSelect;
- LateStart : OPTIONAL IfcDateTimeSelect;
- ScheduleStart : OPTIONAL IfcDateTimeSelect;
- ActualFinish : OPTIONAL IfcDateTimeSelect;
- EarlyFinish : OPTIONAL IfcDateTimeSelect;
- LateFinish : OPTIONAL IfcDateTimeSelect;
- ScheduleFinish : OPTIONAL IfcDateTimeSelect;
- ScheduleDuration : OPTIONAL IfcTimeMeasure;
- ActualDuration : OPTIONAL IfcTimeMeasure;
- RemainingTime : OPTIONAL IfcTimeMeasure;
- FreeFloat : OPTIONAL IfcTimeMeasure;
- TotalFloat : OPTIONAL IfcTimeMeasure;
- IsCritical : OPTIONAL BOOLEAN;
- StatusTime : OPTIONAL IfcDateTimeSelect;
- StartFloat : OPTIONAL IfcTimeMeasure;
- FinishFloat : OPTIONAL IfcTimeMeasure;
- Completion : OPTIONAL IfcPositiveRatioMeasure;
- INVERSE
- ScheduleTimeControlAssigned : IfcRelAssignsTasks FOR TimeForTask;
-END_ENTITY;
-
-ENTITY IfcSectionProperties;
- SectionType : IfcSectionTypeEnum;
- StartProfile : IfcProfileDef;
- EndProfile : OPTIONAL IfcProfileDef;
-END_ENTITY;
-
-ENTITY IfcSectionReinforcementProperties;
- LongitudinalStartPosition : IfcLengthMeasure;
- LongitudinalEndPosition : IfcLengthMeasure;
- TransversePosition : OPTIONAL IfcLengthMeasure;
- ReinforcementRole : IfcReinforcingBarRoleEnum;
- SectionDefinition : IfcSectionProperties;
- CrossSectionReinforcementDefinitions : SET [1:?] OF IfcReinforcementBarProperties;
-END_ENTITY;
-
-ENTITY IfcSectionedSpine
- SUBTYPE OF (IfcGeometricRepresentationItem);
- SpineCurve : IfcCompositeCurve;
- CrossSections : LIST [2:?] OF IfcProfileDef;
- CrossSectionPositions : LIST [2:?] OF IfcAxis2Placement3D;
- DERIVE
- Dim : IfcDimensionCount := 3;
- WHERE
- WR1 : SIZEOF(CrossSections) = SIZEOF(CrossSectionPositions);
- WR2 : SIZEOF(QUERY(temp <* CrossSections | CrossSections[1].ProfileType <> temp.ProfileType)) = 0;
- WR3 : SpineCurve.Dim = 3;
-END_ENTITY;
-
-ENTITY IfcSensorType
- SUBTYPE OF (IfcDistributionControlElementType);
- PredefinedType : IfcSensorTypeEnum;
-END_ENTITY;
-
-ENTITY IfcServiceLife
- SUBTYPE OF (IfcControl);
- ServiceLifeType : IfcServiceLifeTypeEnum;
- ServiceLifeDuration : IfcTimeMeasure;
-END_ENTITY;
-
-ENTITY IfcServiceLifeFactor
- SUBTYPE OF (IfcPropertySetDefinition);
- PredefinedType : IfcServiceLifeFactorTypeEnum;
- UpperValue : OPTIONAL IfcMeasureValue;
- MostUsedValue : IfcMeasureValue;
- LowerValue : OPTIONAL IfcMeasureValue;
- WHERE
- WR31 : NOT(PredefinedType = IfcServiceLifeFactorTypeEnum.USERDEFINED)
- OR EXISTS(SELF\IfcObject.ObjectType);
-END_ENTITY;
-
-ENTITY IfcShapeAspect;
- ShapeRepresentations : LIST [1:?] OF IfcShapeModel;
- Name : OPTIONAL IfcLabel;
- Description : OPTIONAL IfcText;
- ProductDefinitional : LOGICAL;
- PartOfProductDefinitionShape : IfcProductDefinitionShape;
-END_ENTITY;
-
-ENTITY IfcShapeModel
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcShapeRepresentation
- ,IfcTopologyRepresentation))
- SUBTYPE OF (IfcRepresentation);
- INVERSE
- OfShapeAspect : SET [0:1] OF IfcShapeAspect FOR ShapeRepresentations;
- WHERE
- WR11 : (SIZEOF(SELF\IfcRepresentation.OfProductRepresentation) = 1) XOR
- (SIZEOF(SELF\IfcRepresentation.RepresentationMap) = 1) XOR
- (SIZEOF(OfShapeAspect) = 1);
-END_ENTITY;
-
-ENTITY IfcShapeRepresentation
- SUBTYPE OF (IfcShapeModel);
- WHERE
- WR21 : 'IFC2X3.IFCGEOMETRICREPRESENTATIONCONTEXT'
- IN TYPEOF(SELF\IfcRepresentation.ContextOfItems);
- WR22 : SIZEOF(QUERY(temp <* Items |
- ('IFC2X3.IFCTOPOLOGICALREPRESENTATIONITEM' IN TYPEOF(temp))
- AND (NOT(SIZEOF(
- ['IFC2X3.IFCVERTEXPOINT',
- 'IFC2X3.IFCEDGECURVE',
- 'IFC2X3.IFCFACESURFACE'] * TYPEOF(temp)) = 1))
- )) = 0;
- WR23 : EXISTS(SELF\IfcRepresentation.RepresentationType);
- WR24 : IfcShapeRepresentationTypes(SELF\IfcRepresentation.RepresentationType, SELF\IfcRepresentation.Items);
-END_ENTITY;
-
-ENTITY IfcShellBasedSurfaceModel
- SUBTYPE OF (IfcGeometricRepresentationItem);
- SbsmBoundary : SET [1:?] OF IfcShell;
- DERIVE
- Dim : IfcDimensionCount := 3;
-END_ENTITY;
-
-ENTITY IfcSimpleProperty
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcPropertyBoundedValue
- ,IfcPropertyEnumeratedValue
- ,IfcPropertyListValue
- ,IfcPropertyReferenceValue
- ,IfcPropertySingleValue
- ,IfcPropertyTableValue))
- SUBTYPE OF (IfcProperty);
-END_ENTITY;
-
-ENTITY IfcSite
- SUBTYPE OF (IfcSpatialStructureElement);
- RefLatitude : OPTIONAL IfcCompoundPlaneAngleMeasure;
- RefLongitude : OPTIONAL IfcCompoundPlaneAngleMeasure;
- RefElevation : OPTIONAL IfcLengthMeasure;
- LandTitleNumber : OPTIONAL IfcLabel;
- SiteAddress : OPTIONAL IfcPostalAddress;
-END_ENTITY;
-
-ENTITY IfcSlab
- SUBTYPE OF (IfcBuildingElement);
- PredefinedType : OPTIONAL IfcSlabTypeEnum;
- WHERE
- WR2 : (PredefinedType <> IfcSlabTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcSlabTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcObject.ObjectType));
-END_ENTITY;
-
-ENTITY IfcSlabType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcSlabTypeEnum;
-END_ENTITY;
-
-ENTITY IfcSlippageConnectionCondition
- SUBTYPE OF (IfcStructuralConnectionCondition);
- SlippageX : OPTIONAL IfcLengthMeasure;
- SlippageY : OPTIONAL IfcLengthMeasure;
- SlippageZ : OPTIONAL IfcLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcSolidModel
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcCsgSolid
- ,IfcManifoldSolidBrep
- ,IfcSweptAreaSolid
- ,IfcSweptDiskSolid))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- DERIVE
- Dim : IfcDimensionCount := 3;
-END_ENTITY;
-
-ENTITY IfcSoundProperties
- SUBTYPE OF (IfcPropertySetDefinition);
- IsAttenuating : IfcBoolean;
- SoundScale : OPTIONAL IfcSoundScaleEnum;
- SoundValues : LIST [1:8] OF IfcSoundValue;
-END_ENTITY;
-
-ENTITY IfcSoundValue
- SUBTYPE OF (IfcPropertySetDefinition);
- SoundLevelTimeSeries : OPTIONAL IfcTimeSeries;
- Frequency : IfcFrequencyMeasure;
- SoundLevelSingleValue : OPTIONAL IfcDerivedMeasureValue;
-END_ENTITY;
-
-ENTITY IfcSpace
- SUBTYPE OF (IfcSpatialStructureElement);
- InteriorOrExteriorSpace : IfcInternalOrExternalEnum;
- ElevationWithFlooring : OPTIONAL IfcLengthMeasure;
- INVERSE
- HasCoverings : SET [0:?] OF IfcRelCoversSpaces FOR RelatedSpace;
- BoundedBy : SET [0:?] OF IfcRelSpaceBoundary FOR RelatingSpace;
-END_ENTITY;
-
-ENTITY IfcSpaceHeaterType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcSpaceHeaterTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcSpaceHeaterTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcSpaceHeaterTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcSpaceProgram
- SUBTYPE OF (IfcControl);
- SpaceProgramIdentifier : IfcIdentifier;
- MaxRequiredArea : OPTIONAL IfcAreaMeasure;
- MinRequiredArea : OPTIONAL IfcAreaMeasure;
- RequestedLocation : OPTIONAL IfcSpatialStructureElement;
- StandardRequiredArea : IfcAreaMeasure;
- INVERSE
- HasInteractionReqsFrom : SET [0:?] OF IfcRelInteractionRequirements FOR RelatedSpaceProgram;
- HasInteractionReqsTo : SET [0:?] OF IfcRelInteractionRequirements FOR RelatingSpaceProgram;
-END_ENTITY;
-
-ENTITY IfcSpaceThermalLoadProperties
- SUBTYPE OF (IfcPropertySetDefinition);
- ApplicableValueRatio : OPTIONAL IfcPositiveRatioMeasure;
- ThermalLoadSource : IfcThermalLoadSourceEnum;
- PropertySource : IfcPropertySourceEnum;
- SourceDescription : OPTIONAL IfcText;
- MaximumValue : IfcPowerMeasure;
- MinimumValue : OPTIONAL IfcPowerMeasure;
- ThermalLoadTimeSeriesValues : OPTIONAL IfcTimeSeries;
- UserDefinedThermalLoadSource : OPTIONAL IfcLabel;
- UserDefinedPropertySource : OPTIONAL IfcLabel;
- ThermalLoadType : IfcThermalLoadTypeEnum;
-END_ENTITY;
-
-ENTITY IfcSpaceType
- SUBTYPE OF (IfcSpatialStructureElementType);
- PredefinedType : IfcSpaceTypeEnum;
-END_ENTITY;
-
-ENTITY IfcSpatialStructureElement
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBuilding
- ,IfcBuildingStorey
- ,IfcSite
- ,IfcSpace))
- SUBTYPE OF (IfcProduct);
- LongName : OPTIONAL IfcLabel;
- CompositionType : IfcElementCompositionEnum;
- INVERSE
- ReferencesElements : SET [0:?] OF IfcRelReferencedInSpatialStructure FOR RelatingStructure;
- ServicedBySystems : SET [0:?] OF IfcRelServicesBuildings FOR RelatedBuildings;
- ContainsElements : SET [0:?] OF IfcRelContainedInSpatialStructure FOR RelatingStructure;
- WHERE
- WR41 : (HIINDEX(SELF\IfcObjectDefinition.Decomposes) = 1)
- AND
- ('IFC2X3.IFCRELAGGREGATES' IN TYPEOF(SELF\IfcObjectDefinition.Decomposes[1]))
- AND
- (('IFC2X3.IFCPROJECT' IN TYPEOF (SELF\IfcObjectDefinition.Decomposes[1].RelatingObject)) OR
- ('IFC2X3.IFCSPATIALSTRUCTUREELEMENT' IN TYPEOF (SELF\IfcObjectDefinition.Decomposes[1].RelatingObject))
- );
-END_ENTITY;
-
-ENTITY IfcSpatialStructureElementType
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcSpaceType))
- SUBTYPE OF (IfcElementType);
-END_ENTITY;
-
-ENTITY IfcSphere
- SUBTYPE OF (IfcCsgPrimitive3D);
- Radius : IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcStackTerminalType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcStackTerminalTypeEnum;
-END_ENTITY;
-
-ENTITY IfcStair
- SUBTYPE OF (IfcBuildingElement);
- ShapeType : IfcStairTypeEnum;
- WHERE
- WR1 : (HIINDEX(SELF\IfcObjectDefinition.IsDecomposedBy) = 0) OR
- ((HIINDEX(SELF\IfcObjectDefinition.IsDecomposedBy) = 1) AND (NOT(EXISTS(SELF\IfcProduct.Representation))));
-END_ENTITY;
-
-ENTITY IfcStairFlight
- SUBTYPE OF (IfcBuildingElement);
- NumberOfRiser : OPTIONAL INTEGER;
- NumberOfTreads : OPTIONAL INTEGER;
- RiserHeight : OPTIONAL IfcPositiveLengthMeasure;
- TreadLength : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcStairFlightType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcStairFlightTypeEnum;
-END_ENTITY;
-
-ENTITY IfcStructuralAction
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcStructuralLinearAction
- ,IfcStructuralPlanarAction
- ,IfcStructuralPointAction))
- SUBTYPE OF (IfcStructuralActivity);
- DestabilizingLoad : BOOLEAN;
- CausedBy : OPTIONAL IfcStructuralReaction;
-END_ENTITY;
-
-ENTITY IfcStructuralActivity
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcStructuralAction
- ,IfcStructuralReaction))
- SUBTYPE OF (IfcProduct);
- AppliedLoad : IfcStructuralLoad;
- GlobalOrLocal : IfcGlobalOrLocalEnum;
- INVERSE
- AssignedToStructuralItem : IfcRelConnectsStructuralActivity FOR RelatedStructuralActivity;
-END_ENTITY;
-
-ENTITY IfcStructuralAnalysisModel
- SUBTYPE OF (IfcSystem);
- PredefinedType : IfcAnalysisModelTypeEnum;
- OrientationOf2DPlane : OPTIONAL IfcAxis2Placement3D;
- LoadedBy : OPTIONAL SET [1:?] OF IfcStructuralLoadGroup;
- HasResults : OPTIONAL SET [1:?] OF IfcStructuralResultGroup;
-END_ENTITY;
-
-ENTITY IfcStructuralConnection
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcStructuralCurveConnection
- ,IfcStructuralPointConnection
- ,IfcStructuralSurfaceConnection))
- SUBTYPE OF (IfcStructuralItem);
- AppliedCondition : OPTIONAL IfcBoundaryCondition;
- INVERSE
- ConnectsStructuralMembers : SET [1:?] OF IfcRelConnectsStructuralMember FOR RelatedStructuralConnection;
-END_ENTITY;
-
-ENTITY IfcStructuralConnectionCondition
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcFailureConnectionCondition
- ,IfcSlippageConnectionCondition));
- Name : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcStructuralCurveConnection
- SUBTYPE OF (IfcStructuralConnection);
-END_ENTITY;
-
-ENTITY IfcStructuralCurveMember
- SUPERTYPE OF (ONEOF
- (IfcStructuralCurveMemberVarying))
- SUBTYPE OF (IfcStructuralMember);
- PredefinedType : IfcStructuralCurveTypeEnum;
-END_ENTITY;
-
-ENTITY IfcStructuralCurveMemberVarying
- SUBTYPE OF (IfcStructuralCurveMember);
-END_ENTITY;
-
-ENTITY IfcStructuralItem
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcStructuralConnection
- ,IfcStructuralMember))
- SUBTYPE OF (IfcProduct);
- INVERSE
- AssignedStructuralActivity : SET [0:?] OF IfcRelConnectsStructuralActivity FOR RelatingElement;
-END_ENTITY;
-
-ENTITY IfcStructuralLinearAction
- SUPERTYPE OF (ONEOF
- (IfcStructuralLinearActionVarying))
- SUBTYPE OF (IfcStructuralAction);
- ProjectedOrTrue : IfcProjectedOrTrueLengthEnum;
- WHERE
- WR61 : SIZEOF(['IFC2X3.IFCSTRUCTURALLOADLINEARFORCE',
- 'IFC2X3.IFCSTRUCTURALLOADTEMPERATURE']
- * TYPEOF(SELF\IfcStructuralActivity.AppliedLoad)) = 1;
-END_ENTITY;
-
-ENTITY IfcStructuralLinearActionVarying
- SUBTYPE OF (IfcStructuralLinearAction);
- VaryingAppliedLoadLocation : IfcShapeAspect;
- SubsequentAppliedLoads : LIST [1:?] OF IfcStructuralLoad;
- DERIVE
- VaryingAppliedLoads : LIST [2:?] OF IfcStructuralLoad := IfcAddToBeginOfList(SELF\IfcStructuralActivity.AppliedLoad, SubsequentAppliedLoads);
-END_ENTITY;
-
-ENTITY IfcStructuralLoad
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcStructuralLoadStatic));
- Name : OPTIONAL IfcLabel;
-END_ENTITY;
-
-ENTITY IfcStructuralLoadGroup
- SUBTYPE OF (IfcGroup);
- PredefinedType : IfcLoadGroupTypeEnum;
- ActionType : IfcActionTypeEnum;
- ActionSource : IfcActionSourceTypeEnum;
- Coefficient : OPTIONAL IfcPositiveRatioMeasure;
- Purpose : OPTIONAL IfcLabel;
- INVERSE
- SourceOfResultGroup : SET [0:1] OF IfcStructuralResultGroup FOR ResultForLoadGroup;
- LoadGroupFor : SET [0:?] OF IfcStructuralAnalysisModel FOR LoadedBy;
-END_ENTITY;
-
-ENTITY IfcStructuralLoadLinearForce
- SUBTYPE OF (IfcStructuralLoadStatic);
- LinearForceX : OPTIONAL IfcLinearForceMeasure;
- LinearForceY : OPTIONAL IfcLinearForceMeasure;
- LinearForceZ : OPTIONAL IfcLinearForceMeasure;
- LinearMomentX : OPTIONAL IfcLinearMomentMeasure;
- LinearMomentY : OPTIONAL IfcLinearMomentMeasure;
- LinearMomentZ : OPTIONAL IfcLinearMomentMeasure;
-END_ENTITY;
-
-ENTITY IfcStructuralLoadPlanarForce
- SUBTYPE OF (IfcStructuralLoadStatic);
- PlanarForceX : OPTIONAL IfcPlanarForceMeasure;
- PlanarForceY : OPTIONAL IfcPlanarForceMeasure;
- PlanarForceZ : OPTIONAL IfcPlanarForceMeasure;
-END_ENTITY;
-
-ENTITY IfcStructuralLoadSingleDisplacement
- SUPERTYPE OF (ONEOF
- (IfcStructuralLoadSingleDisplacementDistortion))
- SUBTYPE OF (IfcStructuralLoadStatic);
- DisplacementX : OPTIONAL IfcLengthMeasure;
- DisplacementY : OPTIONAL IfcLengthMeasure;
- DisplacementZ : OPTIONAL IfcLengthMeasure;
- RotationalDisplacementRX : OPTIONAL IfcPlaneAngleMeasure;
- RotationalDisplacementRY : OPTIONAL IfcPlaneAngleMeasure;
- RotationalDisplacementRZ : OPTIONAL IfcPlaneAngleMeasure;
-END_ENTITY;
-
-ENTITY IfcStructuralLoadSingleDisplacementDistortion
- SUBTYPE OF (IfcStructuralLoadSingleDisplacement);
- Distortion : OPTIONAL IfcCurvatureMeasure;
-END_ENTITY;
-
-ENTITY IfcStructuralLoadSingleForce
- SUPERTYPE OF (ONEOF
- (IfcStructuralLoadSingleForceWarping))
- SUBTYPE OF (IfcStructuralLoadStatic);
- ForceX : OPTIONAL IfcForceMeasure;
- ForceY : OPTIONAL IfcForceMeasure;
- ForceZ : OPTIONAL IfcForceMeasure;
- MomentX : OPTIONAL IfcTorqueMeasure;
- MomentY : OPTIONAL IfcTorqueMeasure;
- MomentZ : OPTIONAL IfcTorqueMeasure;
-END_ENTITY;
-
-ENTITY IfcStructuralLoadSingleForceWarping
- SUBTYPE OF (IfcStructuralLoadSingleForce);
- WarpingMoment : OPTIONAL IfcWarpingMomentMeasure;
-END_ENTITY;
-
-ENTITY IfcStructuralLoadStatic
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcStructuralLoadLinearForce
- ,IfcStructuralLoadPlanarForce
- ,IfcStructuralLoadSingleDisplacement
- ,IfcStructuralLoadSingleForce
- ,IfcStructuralLoadTemperature))
- SUBTYPE OF (IfcStructuralLoad);
-END_ENTITY;
-
-ENTITY IfcStructuralLoadTemperature
- SUBTYPE OF (IfcStructuralLoadStatic);
- DeltaT_Constant : OPTIONAL IfcThermodynamicTemperatureMeasure;
- DeltaT_Y : OPTIONAL IfcThermodynamicTemperatureMeasure;
- DeltaT_Z : OPTIONAL IfcThermodynamicTemperatureMeasure;
-END_ENTITY;
-
-ENTITY IfcStructuralMember
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcStructuralCurveMember
- ,IfcStructuralSurfaceMember))
- SUBTYPE OF (IfcStructuralItem);
- INVERSE
- ReferencesElement : SET [0:?] OF IfcRelConnectsStructuralElement FOR RelatedStructuralMember;
- ConnectedBy : SET [0:?] OF IfcRelConnectsStructuralMember FOR RelatingStructuralMember;
-END_ENTITY;
-
-ENTITY IfcStructuralPlanarAction
- SUPERTYPE OF (ONEOF
- (IfcStructuralPlanarActionVarying))
- SUBTYPE OF (IfcStructuralAction);
- ProjectedOrTrue : IfcProjectedOrTrueLengthEnum;
- WHERE
- WR61 : SIZEOF(['IFC2X3.IFCSTRUCTURALLOADPLANARFORCE',
- 'IFC2X3.IFCSTRUCTURALLOADTEMPERATURE']
- * TYPEOF(SELF\IfcStructuralActivity.AppliedLoad)) = 1;
-END_ENTITY;
-
-ENTITY IfcStructuralPlanarActionVarying
- SUBTYPE OF (IfcStructuralPlanarAction);
- VaryingAppliedLoadLocation : IfcShapeAspect;
- SubsequentAppliedLoads : LIST [2:?] OF IfcStructuralLoad;
- DERIVE
- VaryingAppliedLoads : LIST [3:?] OF IfcStructuralLoad := IfcAddToBeginOfList(SELF\IfcStructuralActivity.AppliedLoad, SubsequentAppliedLoads);
-END_ENTITY;
-
-ENTITY IfcStructuralPointAction
- SUBTYPE OF (IfcStructuralAction);
- WHERE
- WR61 : SIZEOF(['IFC2X3.IFCSTRUCTURALLOADSINGLEFORCE',
- 'IFC2X3.IFCSTRUCTURALLOADSINGLEDISPLACEMENT']
- * TYPEOF(SELF\IfcStructuralActivity.AppliedLoad)) = 1;
-END_ENTITY;
-
-ENTITY IfcStructuralPointConnection
- SUBTYPE OF (IfcStructuralConnection);
-END_ENTITY;
-
-ENTITY IfcStructuralPointReaction
- SUBTYPE OF (IfcStructuralReaction);
- WHERE
- WR61 : SIZEOF(['IFC2X3.IFCSTRUCTURALLOADSINGLEFORCE',
- 'IFC2X3.IFCSTRUCTURALLOADSINGLEDISPLACEMENT']
- * TYPEOF(SELF\IfcStructuralActivity.AppliedLoad)) = 1;
-END_ENTITY;
-
-ENTITY IfcStructuralProfileProperties
- SUPERTYPE OF (ONEOF
- (IfcStructuralSteelProfileProperties))
- SUBTYPE OF (IfcGeneralProfileProperties);
- TorsionalConstantX : OPTIONAL IfcMomentOfInertiaMeasure;
- MomentOfInertiaYZ : OPTIONAL IfcMomentOfInertiaMeasure;
- MomentOfInertiaY : OPTIONAL IfcMomentOfInertiaMeasure;
- MomentOfInertiaZ : OPTIONAL IfcMomentOfInertiaMeasure;
- WarpingConstant : OPTIONAL IfcWarpingConstantMeasure;
- ShearCentreZ : OPTIONAL IfcLengthMeasure;
- ShearCentreY : OPTIONAL IfcLengthMeasure;
- ShearDeformationAreaZ : OPTIONAL IfcAreaMeasure;
- ShearDeformationAreaY : OPTIONAL IfcAreaMeasure;
- MaximumSectionModulusY : OPTIONAL IfcSectionModulusMeasure;
- MinimumSectionModulusY : OPTIONAL IfcSectionModulusMeasure;
- MaximumSectionModulusZ : OPTIONAL IfcSectionModulusMeasure;
- MinimumSectionModulusZ : OPTIONAL IfcSectionModulusMeasure;
- TorsionalSectionModulus : OPTIONAL IfcSectionModulusMeasure;
- CentreOfGravityInX : OPTIONAL IfcLengthMeasure;
- CentreOfGravityInY : OPTIONAL IfcLengthMeasure;
- WHERE
- WR21 : NOT(EXISTS(ShearDeformationAreaY)) OR (ShearDeformationAreaY >= 0.);
- WR22 : NOT(EXISTS(ShearDeformationAreaZ)) OR (ShearDeformationAreaZ >= 0.);
-END_ENTITY;
-
-ENTITY IfcStructuralReaction
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcStructuralPointReaction))
- SUBTYPE OF (IfcStructuralActivity);
- INVERSE
- Causes : SET [0:?] OF IfcStructuralAction FOR CausedBy;
-END_ENTITY;
-
-ENTITY IfcStructuralResultGroup
- SUBTYPE OF (IfcGroup);
- TheoryType : IfcAnalysisTheoryTypeEnum;
- ResultForLoadGroup : OPTIONAL IfcStructuralLoadGroup;
- IsLinear : BOOLEAN;
- INVERSE
- ResultGroupFor : SET [0:1] OF IfcStructuralAnalysisModel FOR HasResults;
-END_ENTITY;
-
-ENTITY IfcStructuralSteelProfileProperties
- SUBTYPE OF (IfcStructuralProfileProperties);
- ShearAreaZ : OPTIONAL IfcAreaMeasure;
- ShearAreaY : OPTIONAL IfcAreaMeasure;
- PlasticShapeFactorY : OPTIONAL IfcPositiveRatioMeasure;
- PlasticShapeFactorZ : OPTIONAL IfcPositiveRatioMeasure;
- WHERE
- WR31 : NOT(EXISTS(ShearAreaY)) OR (ShearAreaY >= 0.);
- WR32 : NOT(EXISTS(ShearAreaZ)) OR (ShearAreaZ >= 0.);
-END_ENTITY;
-
-ENTITY IfcStructuralSurfaceConnection
- SUBTYPE OF (IfcStructuralConnection);
-END_ENTITY;
-
-ENTITY IfcStructuralSurfaceMember
- SUPERTYPE OF (ONEOF
- (IfcStructuralSurfaceMemberVarying))
- SUBTYPE OF (IfcStructuralMember);
- PredefinedType : IfcStructuralSurfaceTypeEnum;
- Thickness : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcStructuralSurfaceMemberVarying
- SUBTYPE OF (IfcStructuralSurfaceMember);
- SubsequentThickness : LIST [2:?] OF IfcPositiveLengthMeasure;
- VaryingThicknessLocation : IfcShapeAspect;
- DERIVE
- VaryingThickness : LIST [3:?] OF IfcPositiveLengthMeasure := IfcAddToBeginOfList(SELF\IfcStructuralSurfaceMember.Thickness, SubsequentThickness);
- WHERE
- WR61 : EXISTS(SELF\IfcStructuralSurfaceMember.Thickness);
- WR62 : SIZEOF(QUERY(temp <* SELF.VaryingThicknessLocation.ShapeRepresentations |
- NOT(SIZEOF(temp\IfcRepresentation.Items) = 1)
- )) = 0;
- WR63 : SIZEOF(QUERY(temp <* SELF.VaryingThicknessLocation.ShapeRepresentations |
- NOT(('IFC2X3.IFCCARTESIANPOINT' IN TYPEOF(temp\IfcRepresentation.Items[1]))
- OR
- ('IFC2X3.IFCPOINTONSURFACE' IN TYPEOF(temp\IfcRepresentation.Items[1])))
- )) = 0;
-END_ENTITY;
-
-ENTITY IfcStructuredDimensionCallout
- SUBTYPE OF (IfcDraughtingCallout);
- WHERE
- WR31 : SIZEOF(QUERY ( Ato <* QUERY ( Con <* SELF.contents | (
- 'IFC2X3.IFCANNOTATIONTEXTOCCURRENCE' IN
- TYPEOF(Con)) ) | (NOT (Ato.Name IN ['dimension value',
- 'tolerance value','unit text','prefix text','suffix text']))))
- = 0;
-END_ENTITY;
-
-ENTITY IfcStyleModel
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcStyledRepresentation))
- SUBTYPE OF (IfcRepresentation);
-END_ENTITY;
-
-ENTITY IfcStyledItem
- SUPERTYPE OF (ONEOF
- (IfcAnnotationOccurrence))
- SUBTYPE OF (IfcRepresentationItem);
- Item : OPTIONAL IfcRepresentationItem;
- Styles : SET [1:?] OF IfcPresentationStyleAssignment;
- Name : OPTIONAL IfcLabel;
- WHERE
- WR11 : SIZEOF(Styles) = 1;
- WR12 : NOT('IFC2X3.IFCSTYLEDITEM' IN TYPEOF(Item));
-END_ENTITY;
-
-ENTITY IfcStyledRepresentation
- SUBTYPE OF (IfcStyleModel);
- WHERE
- WR21 : SIZEOF(QUERY(temp <* SELF\IfcRepresentation.Items |
- (NOT('IFC2X3.IFCSTYLEDITEM' IN TYPEOF(temp)))
- )) = 0;
-END_ENTITY;
-
-ENTITY IfcSubContractResource
- SUBTYPE OF (IfcConstructionResource);
- SubContractor : OPTIONAL IfcActorSelect;
- JobDescription : OPTIONAL IfcText;
-END_ENTITY;
-
-ENTITY IfcSubedge
- SUBTYPE OF (IfcEdge);
- ParentEdge : IfcEdge;
-END_ENTITY;
-
-ENTITY IfcSurface
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBoundedSurface
- ,IfcElementarySurface
- ,IfcSweptSurface))
- SUBTYPE OF (IfcGeometricRepresentationItem);
-END_ENTITY;
-
-ENTITY IfcSurfaceCurveSweptAreaSolid
- SUBTYPE OF (IfcSweptAreaSolid);
- Directrix : IfcCurve;
- StartParam : IfcParameterValue;
- EndParam : IfcParameterValue;
- ReferenceSurface : IfcSurface;
-END_ENTITY;
-
-ENTITY IfcSurfaceOfLinearExtrusion
- SUBTYPE OF (IfcSweptSurface);
- ExtrudedDirection : IfcDirection;
- Depth : IfcLengthMeasure;
- DERIVE
- ExtrusionAxis : IfcVector := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector (ExtrudedDirection, Depth);
- WHERE
- WR41 : Depth > 0.;
-END_ENTITY;
-
-ENTITY IfcSurfaceOfRevolution
- SUBTYPE OF (IfcSweptSurface);
- AxisPosition : IfcAxis1Placement;
- DERIVE
- AxisLine : IfcLine := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcCurve() || IfcLine(AxisPosition.Location,
- IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector(AxisPosition.Z,1.0));
-END_ENTITY;
-
-ENTITY IfcSurfaceStyle
- SUBTYPE OF (IfcPresentationStyle);
- Side : IfcSurfaceSide;
- Styles : SET [1:5] OF IfcSurfaceStyleElementSelect;
- WHERE
- WR11 : SIZEOF(QUERY(Style <* SELF.Styles |
- 'IFC2X3.IFCSURFACESTYLESHADING' IN
- TYPEOF(Style)
- )) <= 1;
- WR12 : SIZEOF(QUERY(Style <* SELF.Styles |
- 'IFC2X3.IFCSURFACESTYLELIGHTING' IN
- TYPEOF(Style)
- )) <= 1;
- WR13 : SIZEOF(QUERY(Style <* SELF.Styles |
- 'IFC2X3.IFCSURFACESTYLEREFRACTION' IN
- TYPEOF(Style)
- )) <= 1;
- WR14 : SIZEOF(QUERY(Style <* SELF.Styles |
- 'IFC2X3.IFCSURFACESTYLEWITHTEXTURES' IN
- TYPEOF(Style)
- )) <= 1;
- WR15 : SIZEOF(QUERY(Style <* SELF.Styles |
- 'IFC2X3.IFCEXTERNALLYDEFINEDSURFACESTYLE' IN
- TYPEOF(Style)
- )) <= 1;
-END_ENTITY;
-
-ENTITY IfcSurfaceStyleLighting;
- DiffuseTransmissionColour : IfcColourRgb;
- DiffuseReflectionColour : IfcColourRgb;
- TransmissionColour : IfcColourRgb;
- ReflectanceColour : IfcColourRgb;
-END_ENTITY;
-
-ENTITY IfcSurfaceStyleRefraction;
- RefractionIndex : OPTIONAL IfcReal;
- DispersionFactor : OPTIONAL IfcReal;
-END_ENTITY;
-
-ENTITY IfcSurfaceStyleRendering
- SUBTYPE OF (IfcSurfaceStyleShading);
- Transparency : OPTIONAL IfcNormalisedRatioMeasure;
- DiffuseColour : OPTIONAL IfcColourOrFactor;
- TransmissionColour : OPTIONAL IfcColourOrFactor;
- DiffuseTransmissionColour : OPTIONAL IfcColourOrFactor;
- ReflectionColour : OPTIONAL IfcColourOrFactor;
- SpecularColour : OPTIONAL IfcColourOrFactor;
- SpecularHighlight : OPTIONAL IfcSpecularHighlightSelect;
- ReflectanceMethod : IfcReflectanceMethodEnum;
-END_ENTITY;
-
-ENTITY IfcSurfaceStyleShading
- SUPERTYPE OF (ONEOF
- (IfcSurfaceStyleRendering));
- SurfaceColour : IfcColourRgb;
-END_ENTITY;
-
-ENTITY IfcSurfaceStyleWithTextures;
- Textures : LIST [1:?] OF IfcSurfaceTexture;
-END_ENTITY;
-
-ENTITY IfcSurfaceTexture
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcBlobTexture
- ,IfcImageTexture
- ,IfcPixelTexture));
- RepeatS : BOOLEAN;
- RepeatT : BOOLEAN;
- TextureType : IfcSurfaceTextureEnum;
- TextureTransform : OPTIONAL IfcCartesianTransformationOperator2D;
-END_ENTITY;
-
-ENTITY IfcSweptAreaSolid
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcExtrudedAreaSolid
- ,IfcRevolvedAreaSolid
- ,IfcSurfaceCurveSweptAreaSolid))
- SUBTYPE OF (IfcSolidModel);
- SweptArea : IfcProfileDef;
- Position : IfcAxis2Placement3D;
- WHERE
- WR22 : SweptArea.ProfileType = IfcProfileTypeEnum.Area;
-END_ENTITY;
-
-ENTITY IfcSweptDiskSolid
- SUBTYPE OF (IfcSolidModel);
- Directrix : IfcCurve;
- Radius : IfcPositiveLengthMeasure;
- InnerRadius : OPTIONAL IfcPositiveLengthMeasure;
- StartParam : IfcParameterValue;
- EndParam : IfcParameterValue;
- WHERE
- WR1 : Directrix.Dim = 3;
- WR2 : (NOT EXISTS(InnerRadius)) OR (Radius > InnerRadius);
-END_ENTITY;
-
-ENTITY IfcSweptSurface
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcSurfaceOfLinearExtrusion
- ,IfcSurfaceOfRevolution))
- SUBTYPE OF (IfcSurface);
- SweptCurve : IfcProfileDef;
- Position : IfcAxis2Placement3D;
- DERIVE
- Dim : IfcDimensionCount := Position.Dim;
- WHERE
- WR1 : NOT('IFC2X3.IFCDERIVEDPROFILEDEF' IN TYPEOF(SweptCurve));
- WR2 : SweptCurve.ProfileType = IfcProfileTypeEnum.Curve;
-END_ENTITY;
-
-ENTITY IfcSwitchingDeviceType
- SUBTYPE OF (IfcFlowControllerType);
- PredefinedType : IfcSwitchingDeviceTypeEnum;
-END_ENTITY;
-
-ENTITY IfcSymbolStyle
- SUBTYPE OF (IfcPresentationStyle);
- StyleOfSymbol : IfcSymbolStyleSelect;
-END_ENTITY;
-
-ENTITY IfcSystem
- SUPERTYPE OF (ONEOF
- (IfcElectricalCircuit
- ,IfcStructuralAnalysisModel))
- SUBTYPE OF (IfcGroup);
- INVERSE
- ServicesBuildings : SET [0:1] OF IfcRelServicesBuildings FOR RelatingSystem;
-END_ENTITY;
-
-ENTITY IfcSystemFurnitureElementType
- SUBTYPE OF (IfcFurnishingElementType);
-END_ENTITY;
-
-ENTITY IfcTShapeProfileDef
- SUBTYPE OF (IfcParameterizedProfileDef);
- Depth : IfcPositiveLengthMeasure;
- FlangeWidth : IfcPositiveLengthMeasure;
- WebThickness : IfcPositiveLengthMeasure;
- FlangeThickness : IfcPositiveLengthMeasure;
- FilletRadius : OPTIONAL IfcPositiveLengthMeasure;
- FlangeEdgeRadius : OPTIONAL IfcPositiveLengthMeasure;
- WebEdgeRadius : OPTIONAL IfcPositiveLengthMeasure;
- WebSlope : OPTIONAL IfcPlaneAngleMeasure;
- FlangeSlope : OPTIONAL IfcPlaneAngleMeasure;
- CentreOfGravityInY : OPTIONAL IfcPositiveLengthMeasure;
- WHERE
- WR1 : FlangeThickness < Depth;
- WR2 : WebThickness < FlangeWidth;
-END_ENTITY;
-
-ENTITY IfcTable;
- Name : STRING;
- Rows : LIST [1:?] OF IfcTableRow;
- DERIVE
- NumberOfCellsInRow : INTEGER := HIINDEX(Rows[1].RowCells);
- NumberOfHeadings : INTEGER := SIZEOF(QUERY( Temp <* Rows | Temp.IsHeading));
- NumberOfDataRows : INTEGER := SIZEOF(QUERY( Temp <* Rows | NOT(Temp.IsHeading)));
- WHERE
- WR1 : SIZEOF(QUERY( Temp <* Rows | HIINDEX(Temp.RowCells) <> HIINDEX(Rows[1].RowCells))) = 0;
- WR2 : SIZEOF(QUERY( Temp <* Rows | HIINDEX(Temp.RowCells) <> HIINDEX(Rows[1].RowCells))) = 0;
- WR3 : { 0 <= NumberOfHeadings <= 1 };
-END_ENTITY;
-
-ENTITY IfcTableRow;
- RowCells : LIST [1:?] OF IfcValue;
- IsHeading : BOOLEAN;
- INVERSE
- OfTable : IfcTable FOR Rows;
-END_ENTITY;
-
-ENTITY IfcTankType
- SUBTYPE OF (IfcFlowStorageDeviceType);
- PredefinedType : IfcTankTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcTankTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcTankTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcTask
- SUPERTYPE OF (ONEOF
- (IfcMove
- ,IfcOrderAction))
- SUBTYPE OF (IfcProcess);
- TaskId : IfcIdentifier;
- Status : OPTIONAL IfcLabel;
- WorkMethod : OPTIONAL IfcLabel;
- IsMilestone : BOOLEAN;
- Priority : OPTIONAL INTEGER;
- WHERE
- WR1 : SIZEOF(QUERY(temp <* SELF\IfcObjectDefinition.Decomposes | NOT('IFC2X3.IFCRELNESTS' IN TYPEOF(temp)))) = 0;
- WR2 : SIZEOF(QUERY(temp <* SELF\IfcObjectDefinition.IsDecomposedBy | NOT('IFC2X3.IFCRELNESTS' IN TYPEOF(temp)))) = 0;
- WR3 : EXISTS(SELF\IfcRoot.Name);
-END_ENTITY;
-
-ENTITY IfcTelecomAddress
- SUBTYPE OF (IfcAddress);
- TelephoneNumbers : OPTIONAL LIST [1:?] OF IfcLabel;
- FacsimileNumbers : OPTIONAL LIST [1:?] OF IfcLabel;
- PagerNumber : OPTIONAL IfcLabel;
- ElectronicMailAddresses : OPTIONAL LIST [1:?] OF IfcLabel;
- WWWHomePageURL : OPTIONAL IfcLabel;
- WHERE
- WR1 : EXISTS (TelephoneNumbers) OR
- EXISTS (PagerNumber) OR
- EXISTS (FacsimileNumbers) OR
- EXISTS (ElectronicMailAddresses) OR
- EXISTS (WWWHomePageURL);
-END_ENTITY;
-
-ENTITY IfcTendon
- SUBTYPE OF (IfcReinforcingElement);
- PredefinedType : IfcTendonTypeEnum;
- NominalDiameter : IfcPositiveLengthMeasure;
- CrossSectionArea : IfcAreaMeasure;
- TensionForce : OPTIONAL IfcForceMeasure;
- PreStress : OPTIONAL IfcPressureMeasure;
- FrictionCoefficient : OPTIONAL IfcNormalisedRatioMeasure;
- AnchorageSlip : OPTIONAL IfcPositiveLengthMeasure;
- MinCurvatureRadius : OPTIONAL IfcPositiveLengthMeasure;
- WHERE
- WR1 : (PredefinedType <> IfcTendonTypeEnum.USERDEFINED) OR ((PredefinedType = IfcTendonTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcObject.ObjectType));
-END_ENTITY;
-
-ENTITY IfcTendonAnchor
- SUBTYPE OF (IfcReinforcingElement);
-END_ENTITY;
-
-ENTITY IfcTerminatorSymbol
- SUPERTYPE OF (ONEOF
- (IfcDimensionCurveTerminator))
- SUBTYPE OF (IfcAnnotationSymbolOccurrence);
- AnnotatedCurve : IfcAnnotationCurveOccurrence;
-END_ENTITY;
-
-ENTITY IfcTextLiteral
- SUPERTYPE OF (ONEOF
- (IfcTextLiteralWithExtent))
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Literal : IfcPresentableText;
- Placement : IfcAxis2Placement;
- Path : IfcTextPath;
-END_ENTITY;
-
-ENTITY IfcTextLiteralWithExtent
- SUBTYPE OF (IfcTextLiteral);
- Extent : IfcPlanarExtent;
- BoxAlignment : IfcBoxAlignment;
- WHERE
- WR31 : NOT('IFC2X3.IFCPLANARBOX' IN TYPEOF(Extent));
-END_ENTITY;
-
-ENTITY IfcTextStyle
- SUBTYPE OF (IfcPresentationStyle);
- TextCharacterAppearance : OPTIONAL IfcCharacterStyleSelect;
- TextStyle : OPTIONAL IfcTextStyleSelect;
- TextFontStyle : IfcTextFontSelect;
-END_ENTITY;
-
-ENTITY IfcTextStyleFontModel
- SUBTYPE OF (IfcPreDefinedTextFont);
- FontFamily : OPTIONAL LIST [1:?] OF IfcTextFontName;
- FontStyle : OPTIONAL IfcFontStyle;
- FontVariant : OPTIONAL IfcFontVariant;
- FontWeight : OPTIONAL IfcFontWeight;
- FontSize : IfcSizeSelect;
- WHERE
- WR31 : ('IFC2X3.IFCLENGTHMEASURE' IN TYPEOF(SELF.FontSize)) AND
- (SELF.FontSize > 0.);
-END_ENTITY;
-
-ENTITY IfcTextStyleForDefinedFont;
- Colour : IfcColour;
- BackgroundColour : OPTIONAL IfcColour;
-END_ENTITY;
-
-ENTITY IfcTextStyleTextModel;
- TextIndent : OPTIONAL IfcSizeSelect;
- TextAlign : OPTIONAL IfcTextAlignment;
- TextDecoration : OPTIONAL IfcTextDecoration;
- LetterSpacing : OPTIONAL IfcSizeSelect;
- WordSpacing : OPTIONAL IfcSizeSelect;
- TextTransform : OPTIONAL IfcTextTransformation;
- LineHeight : OPTIONAL IfcSizeSelect;
-END_ENTITY;
-
-ENTITY IfcTextStyleWithBoxCharacteristics;
- BoxHeight : OPTIONAL IfcPositiveLengthMeasure;
- BoxWidth : OPTIONAL IfcPositiveLengthMeasure;
- BoxSlantAngle : OPTIONAL IfcPlaneAngleMeasure;
- BoxRotateAngle : OPTIONAL IfcPlaneAngleMeasure;
- CharacterSpacing : OPTIONAL IfcSizeSelect;
-END_ENTITY;
-
-ENTITY IfcTextureCoordinate
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcTextureCoordinateGenerator
- ,IfcTextureMap));
- INVERSE
- AnnotatedSurface : SET [1:1] OF IfcAnnotationSurface FOR TextureCoordinates;
-END_ENTITY;
-
-ENTITY IfcTextureCoordinateGenerator
- SUBTYPE OF (IfcTextureCoordinate);
- Mode : IfcLabel;
- Parameter : LIST [1:?] OF IfcSimpleValue;
-END_ENTITY;
-
-ENTITY IfcTextureMap
- SUBTYPE OF (IfcTextureCoordinate);
- TextureMaps : SET [1:?] OF IfcVertexBasedTextureMap;
- WHERE
- WR11 : SIZEOF([
- 'IFC2X3.IFCSHELLBASEDSURFACEMODEL',
- 'IFC2X3.IFCFACEBASEDSURFACEMODEL',
- 'IFC2X3.IFCFACETEDBREP',
- 'IFC2X3.IFCFACETEDBREPWITHVOIDS']
- * TYPEOF(SELF\IfcTextureCoordinate.AnnotatedSurface[1].Item)
- ) >= 1;
-END_ENTITY;
-
-ENTITY IfcTextureVertex;
- Coordinates : LIST [2:2] OF IfcParameterValue;
-END_ENTITY;
-
-ENTITY IfcThermalMaterialProperties
- SUBTYPE OF (IfcMaterialProperties);
- SpecificHeatCapacity : OPTIONAL IfcSpecificHeatCapacityMeasure;
- BoilingPoint : OPTIONAL IfcThermodynamicTemperatureMeasure;
- FreezingPoint : OPTIONAL IfcThermodynamicTemperatureMeasure;
- ThermalConductivity : OPTIONAL IfcThermalConductivityMeasure;
- UNIQUE
- UR11 : Material;
-END_ENTITY;
-
-ENTITY IfcTimeSeries
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcIrregularTimeSeries
- ,IfcRegularTimeSeries));
- Name : IfcLabel;
- Description : OPTIONAL IfcText;
- StartTime : IfcDateTimeSelect;
- EndTime : IfcDateTimeSelect;
- TimeSeriesDataType : IfcTimeSeriesDataTypeEnum;
- DataOrigin : IfcDataOriginEnum;
- UserDefinedDataOrigin : OPTIONAL IfcLabel;
- Unit : OPTIONAL IfcUnit;
- INVERSE
- DocumentedBy : SET [0:1] OF IfcTimeSeriesReferenceRelationship FOR ReferencedTimeSeries;
-END_ENTITY;
-
-ENTITY IfcTimeSeriesReferenceRelationship;
- ReferencedTimeSeries : IfcTimeSeries;
- TimeSeriesReferences : SET [1:?] OF IfcDocumentSelect;
-END_ENTITY;
-
-ENTITY IfcTimeSeriesSchedule
- SUBTYPE OF (IfcControl);
- ApplicableDates : OPTIONAL LIST [1:?] OF IfcDateTimeSelect;
- TimeSeriesScheduleType : IfcTimeSeriesScheduleTypeEnum;
- TimeSeries : IfcTimeSeries;
- WHERE
- WR41 : NOT(TimeSeriesScheduleType=IfcTimeSeriesScheduleTypeEnum.USERDEFINED) OR EXISTS(SELF\IfcObject.ObjectType);
-END_ENTITY;
-
-ENTITY IfcTimeSeriesValue;
- ListValues : LIST [1:?] OF IfcValue;
-END_ENTITY;
-
-ENTITY IfcTopologicalRepresentationItem
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcConnectedFaceSet
- ,IfcEdge
- ,IfcFace
- ,IfcFaceBound
- ,IfcLoop
- ,IfcPath
- ,IfcVertex))
- SUBTYPE OF (IfcRepresentationItem);
-END_ENTITY;
-
-ENTITY IfcTopologyRepresentation
- SUBTYPE OF (IfcShapeModel);
- WHERE
- WR21 : SIZEOF(QUERY(temp <* SELF\IfcRepresentation.Items |
- NOT('IFC2X3.IFCTOPOLOGICALREPRESENTATIONITEM' IN TYPEOF(temp))
- )) = 0;
- WR22 : EXISTS(SELF\IfcRepresentation.RepresentationType);
- WR23 : IfcTopologyRepresentationTypes(SELF\IfcRepresentation.RepresentationType, SELF\IfcRepresentation.Items);
-END_ENTITY;
-
-ENTITY IfcTransformerType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcTransformerTypeEnum;
-END_ENTITY;
-
-ENTITY IfcTransportElement
- SUBTYPE OF (IfcElement);
- OperationType : OPTIONAL IfcTransportElementTypeEnum;
- CapacityByWeight : OPTIONAL IfcMassMeasure;
- CapacityByNumber : OPTIONAL IfcCountMeasure;
-END_ENTITY;
-
-ENTITY IfcTransportElementType
- SUBTYPE OF (IfcElementType);
- PredefinedType : IfcTransportElementTypeEnum;
-END_ENTITY;
-
-ENTITY IfcTrapeziumProfileDef
- SUBTYPE OF (IfcParameterizedProfileDef);
- BottomXDim : IfcPositiveLengthMeasure;
- TopXDim : IfcPositiveLengthMeasure;
- YDim : IfcPositiveLengthMeasure;
- TopXOffset : IfcLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcTrimmedCurve
- SUBTYPE OF (IfcBoundedCurve);
- BasisCurve : IfcCurve;
- Trim1 : SET [1:2] OF IfcTrimmingSelect;
- Trim2 : SET [1:2] OF IfcTrimmingSelect;
- SenseAgreement : BOOLEAN;
- MasterRepresentation : IfcTrimmingPreference;
- WHERE
- WR41 : (HIINDEX(Trim1) = 1) OR (TYPEOF(Trim1[1]) <> TYPEOF(Trim1[2]));
- WR42 : (HIINDEX(Trim2) = 1) OR (TYPEOF(Trim2[1]) <> TYPEOF(Trim2[2]));
- WR43 : NOT('IFC2X3.IFCBOUNDEDCURVE' IN TYPEOF(BasisCurve));
-END_ENTITY;
-
-ENTITY IfcTubeBundleType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcTubeBundleTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcTubeBundleTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcTubeBundleTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcTwoDirectionRepeatFactor
- SUBTYPE OF (IfcOneDirectionRepeatFactor);
- SecondRepeatFactor : IfcVector;
-END_ENTITY;
-
-ENTITY IfcTypeObject
- SUPERTYPE OF (ONEOF
- (IfcTypeProduct))
- SUBTYPE OF (IfcObjectDefinition);
- ApplicableOccurrence : OPTIONAL IfcLabel;
- HasPropertySets : OPTIONAL SET [1:?] OF IfcPropertySetDefinition;
- INVERSE
- ObjectTypeOf : SET [0:1] OF IfcRelDefinesByType FOR RelatingType;
- WHERE
- WR1 : EXISTS(SELF\IfcRoot.Name);
-END_ENTITY;
-
-ENTITY IfcTypeProduct
- SUPERTYPE OF (ONEOF
- (IfcDoorStyle
- ,IfcElementType
- ,IfcWindowStyle))
- SUBTYPE OF (IfcTypeObject);
- RepresentationMaps : OPTIONAL LIST [1:?] OF UNIQUE IfcRepresentationMap;
- Tag : OPTIONAL IfcLabel;
- WHERE
- WR41 : NOT(EXISTS(SELF\IfcTypeObject.ObjectTypeOf[1])) OR
- (SIZEOF(QUERY(temp <* SELF\IfcTypeObject.ObjectTypeOf[1].RelatedObjects |
- NOT('IFC2X3.IFCPRODUCT' IN TYPEOF(temp)))
- ) = 0);
-END_ENTITY;
-
-ENTITY IfcUShapeProfileDef
- SUBTYPE OF (IfcParameterizedProfileDef);
- Depth : IfcPositiveLengthMeasure;
- FlangeWidth : IfcPositiveLengthMeasure;
- WebThickness : IfcPositiveLengthMeasure;
- FlangeThickness : IfcPositiveLengthMeasure;
- FilletRadius : OPTIONAL IfcPositiveLengthMeasure;
- EdgeRadius : OPTIONAL IfcPositiveLengthMeasure;
- FlangeSlope : OPTIONAL IfcPlaneAngleMeasure;
- CentreOfGravityInX : OPTIONAL IfcPositiveLengthMeasure;
- WHERE
- WR21 : FlangeThickness < (Depth / 2.);
- WR22 : WebThickness < FlangeWidth;
-END_ENTITY;
-
-ENTITY IfcUnitAssignment;
- Units : SET [1:?] OF IfcUnit;
- WHERE
- WR01 : IfcCorrectUnitAssignment(Units);
-END_ENTITY;
-
-ENTITY IfcUnitaryEquipmentType
- SUBTYPE OF (IfcEnergyConversionDeviceType);
- PredefinedType : IfcUnitaryEquipmentTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcUnitaryEquipmentTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcUnitaryEquipmentTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcValveType
- SUBTYPE OF (IfcFlowControllerType);
- PredefinedType : IfcValveTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcValveTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcValveTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcVector
- SUBTYPE OF (IfcGeometricRepresentationItem);
- Orientation : IfcDirection;
- Magnitude : IfcLengthMeasure;
- DERIVE
- Dim : IfcDimensionCount := Orientation.Dim;
- WHERE
- WR1 : Magnitude >= 0.0;
-END_ENTITY;
-
-ENTITY IfcVertex
- SUPERTYPE OF (ONEOF
- (IfcVertexPoint))
- SUBTYPE OF (IfcTopologicalRepresentationItem);
-END_ENTITY;
-
-ENTITY IfcVertexBasedTextureMap;
- TextureVertices : LIST [3:?] OF IfcTextureVertex;
- TexturePoints : LIST [3:?] OF IfcCartesianPoint;
-END_ENTITY;
-
-ENTITY IfcVertexLoop
- SUBTYPE OF (IfcLoop);
- LoopVertex : IfcVertex;
-END_ENTITY;
-
-ENTITY IfcVertexPoint
- SUBTYPE OF (IfcVertex);
- VertexGeometry : IfcPoint;
-END_ENTITY;
-
-ENTITY IfcVibrationIsolatorType
- SUBTYPE OF (IfcDiscreteAccessoryType);
- PredefinedType : IfcVibrationIsolatorTypeEnum;
- WHERE
- WR1 : (PredefinedType <> IfcVibrationIsolatorTypeEnum.USERDEFINED) OR
- ((PredefinedType = IfcVibrationIsolatorTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcElementType.ElementType));
-END_ENTITY;
-
-ENTITY IfcVirtualElement
- SUBTYPE OF (IfcElement);
-END_ENTITY;
-
-ENTITY IfcVirtualGridIntersection;
- IntersectingAxes : LIST [2:2] OF UNIQUE IfcGridAxis;
- OffsetDistances : LIST [2:3] OF IfcLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcWall
- SUPERTYPE OF (ONEOF
- (IfcWallStandardCase))
- SUBTYPE OF (IfcBuildingElement);
- WHERE
- WR1 : SIZEOF (QUERY(temp <* SELF\IfcObjectDefinition.HasAssociations |
- 'IFC2X3.IFCRELASSOCIATESMATERIAL' IN TYPEOF(temp)
- )) <= 1;
-END_ENTITY;
-
-ENTITY IfcWallStandardCase
- SUBTYPE OF (IfcWall);
- WHERE
- WR1 : SIZEOF (QUERY(temp <* USEDIN(SELF, 'IFC2X3.IFCRELASSOCIATES.RELATEDOBJECTS') |
- ('IFC2X3.IFCRELASSOCIATESMATERIAL' IN TYPEOF(temp)) AND
- ('IFC2X3.IFCMATERIALLAYERSETUSAGE' IN TYPEOF(temp.RelatingMaterial))
- )) = 1;
-END_ENTITY;
-
-ENTITY IfcWallType
- SUBTYPE OF (IfcBuildingElementType);
- PredefinedType : IfcWallTypeEnum;
-END_ENTITY;
-
-ENTITY IfcWasteTerminalType
- SUBTYPE OF (IfcFlowTerminalType);
- PredefinedType : IfcWasteTerminalTypeEnum;
-END_ENTITY;
-
-ENTITY IfcWaterProperties
- SUBTYPE OF (IfcMaterialProperties);
- IsPotable : OPTIONAL BOOLEAN;
- Hardness : OPTIONAL IfcIonConcentrationMeasure;
- AlkalinityConcentration : OPTIONAL IfcIonConcentrationMeasure;
- AcidityConcentration : OPTIONAL IfcIonConcentrationMeasure;
- ImpuritiesContent : OPTIONAL IfcNormalisedRatioMeasure;
- PHLevel : OPTIONAL IfcPHMeasure;
- DissolvedSolidsContent : OPTIONAL IfcNormalisedRatioMeasure;
- UNIQUE
- UR11 : Material;
-END_ENTITY;
-
-ENTITY IfcWindow
- SUBTYPE OF (IfcBuildingElement);
- OverallHeight : OPTIONAL IfcPositiveLengthMeasure;
- OverallWidth : OPTIONAL IfcPositiveLengthMeasure;
-END_ENTITY;
-
-ENTITY IfcWindowLiningProperties
- SUBTYPE OF (IfcPropertySetDefinition);
- LiningDepth : OPTIONAL IfcPositiveLengthMeasure;
- LiningThickness : OPTIONAL IfcPositiveLengthMeasure;
- TransomThickness : OPTIONAL IfcPositiveLengthMeasure;
- MullionThickness : OPTIONAL IfcPositiveLengthMeasure;
- FirstTransomOffset : OPTIONAL IfcNormalisedRatioMeasure;
- SecondTransomOffset : OPTIONAL IfcNormalisedRatioMeasure;
- FirstMullionOffset : OPTIONAL IfcNormalisedRatioMeasure;
- SecondMullionOffset : OPTIONAL IfcNormalisedRatioMeasure;
- ShapeAspectStyle : OPTIONAL IfcShapeAspect;
- WHERE
- WR31 : NOT(NOT(EXISTS(LiningDepth)) AND EXISTS(LiningThickness));
- WR32 : NOT(NOT(EXISTS(FirstTransomOffset)) AND EXISTS(SecondTransomOffset));
- WR33 : NOT(NOT(EXISTS(FirstMullionOffset)) AND EXISTS(SecondMullionOffset));
- WR34 : EXISTS(SELF\IfcPropertySetDefinition.DefinesType[1]) AND
- ('IFC2X3.IFCWINDOWSTYLE' IN TYPEOF(SELF\IfcPropertySetDefinition.DefinesType[1]));
-END_ENTITY;
-
-ENTITY IfcWindowPanelProperties
- SUBTYPE OF (IfcPropertySetDefinition);
- OperationType : IfcWindowPanelOperationEnum;
- PanelPosition : IfcWindowPanelPositionEnum;
- FrameDepth : OPTIONAL IfcPositiveLengthMeasure;
- FrameThickness : OPTIONAL IfcPositiveLengthMeasure;
- ShapeAspectStyle : OPTIONAL IfcShapeAspect;
-END_ENTITY;
-
-ENTITY IfcWindowStyle
- SUBTYPE OF (IfcTypeProduct);
- ConstructionType : IfcWindowStyleConstructionEnum;
- OperationType : IfcWindowStyleOperationEnum;
- ParameterTakesPrecedence : BOOLEAN;
- Sizeable : BOOLEAN;
-END_ENTITY;
-
-ENTITY IfcWorkControl
- ABSTRACT SUPERTYPE OF (ONEOF
- (IfcWorkPlan
- ,IfcWorkSchedule))
- SUBTYPE OF (IfcControl);
- Identifier : IfcIdentifier;
- CreationDate : IfcDateTimeSelect;
- Creators : OPTIONAL SET [1:?] OF IfcPerson;
- Purpose : OPTIONAL IfcLabel;
- Duration : OPTIONAL IfcTimeMeasure;
- TotalFloat : OPTIONAL IfcTimeMeasure;
- StartTime : IfcDateTimeSelect;
- FinishTime : OPTIONAL IfcDateTimeSelect;
- WorkControlType : OPTIONAL IfcWorkControlTypeEnum;
- UserDefinedControlType : OPTIONAL IfcLabel;
- WHERE
- WR1 : (WorkControlType <> IfcWorkControlTypeEnum.USERDEFINED) OR
- ((WorkControlType = IfcWorkControlTypeEnum.USERDEFINED) AND EXISTS(SELF\IfcWorkControl.UserDefinedControlType));
-END_ENTITY;
-
-ENTITY IfcWorkPlan
- SUBTYPE OF (IfcWorkControl);
-END_ENTITY;
-
-ENTITY IfcWorkSchedule
- SUBTYPE OF (IfcWorkControl);
-END_ENTITY;
-
-ENTITY IfcZShapeProfileDef
- SUBTYPE OF (IfcParameterizedProfileDef);
- Depth : IfcPositiveLengthMeasure;
- FlangeWidth : IfcPositiveLengthMeasure;
- WebThickness : IfcPositiveLengthMeasure;
- FlangeThickness : IfcPositiveLengthMeasure;
- FilletRadius : OPTIONAL IfcPositiveLengthMeasure;
- EdgeRadius : OPTIONAL IfcPositiveLengthMeasure;
- WHERE
- WR21 : FlangeThickness < (Depth / 2.);
-END_ENTITY;
-
-ENTITY IfcZone
- SUBTYPE OF (IfcGroup);
- WHERE
- WR1 : SIZEOF (QUERY (temp <* SELF\IfcGroup.IsGroupedBy.RelatedObjects | NOT(('IFC2X3.IFCZONE' IN TYPEOF(temp)) OR ('IFC2X3.IFCSPACE' IN TYPEOF(temp))) )) = 0;
-END_ENTITY;
-
-FUNCTION IfcAddToBeginOfList
- (AScalar : GENERIC;
- AList : LIST OF GENERIC:AL)
- : LIST[1:?] OF GENERIC:AL;
-
- LOCAL
- Result : LIST OF GENERIC:AL := [];
- END_LOCAL;
-
- IF NOT(EXISTS(AScalar)) THEN
- Result := AList;
- ELSE
- Result := Result + AScalar;
- IF (HIINDEX(AList) >= 1) THEN
- REPEAT i:=1 TO HIINDEX(AList);
- Result[i+1] := AList[i];
- END_REPEAT;
- END_IF;
- END_IF;
- RETURN(Result);
-END_FUNCTION;
-
-FUNCTION IfcBaseAxis
- (Dim : INTEGER;
- Axis1, Axis2, Axis3 : IfcDirection)
- : LIST [2:3] OF IfcDirection;
-
- LOCAL
- U : LIST [2:3] OF IfcDirection;
- Factor : REAL;
- D1, D2 : IfcDirection;
- END_LOCAL;
-
- IF (Dim = 3) THEN
- D1 := NVL(IfcNormalise(Axis3), IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([0.0,0.0,1.0]));
- D2 := IfcFirstProjAxis(D1, Axis1);
- U := [D2, IfcSecondProjAxis(D1, D2, Axis2), D1];
- ELSE
- IF EXISTS(Axis1) THEN
- D1 := IfcNormalise(Axis1);
- U := [D1, IfcOrthogonalComplement(D1)];
- IF EXISTS(Axis2) THEN
- Factor := IfcDotProduct(Axis2, U[2]);
- IF (Factor < 0.0) THEN
- U[2].DirectionRatios[1] := -U[2].DirectionRatios[1];
- U[2].DirectionRatios[2] := -U[2].DirectionRatios[2];
- END_IF;
- END_IF;
- ELSE
- IF EXISTS(Axis2) THEN
- D1 := IfcNormalise(Axis2);
- U := [IfcOrthogonalComplement(D1), D1];
- U[1].DirectionRatios[1] := -U[1].DirectionRatios[1];
- U[1].DirectionRatios[2] := -U[1].DirectionRatios[2];
- ELSE
- U := [IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([1.0, 0.0]),
- IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([0.0, 1.0])];
- END_IF;
- END_IF;
- END_IF;
- RETURN(U);
-END_FUNCTION;
-
-FUNCTION IfcBooleanChoose
- (B : BOOLEAN ;
- Choice1, Choice2 : Generic : Item)
- : Generic : Item;
- IF B THEN
- RETURN (Choice1);
- ELSE
- RETURN (Choice2);
- END_IF;
-END_FUNCTION;
-
-FUNCTION IfcBuild2Axes
- (RefDirection : IfcDirection)
- : LIST [2:2] OF IfcDirection;
- LOCAL
- D : IfcDirection := NVL(IfcNormalise(RefDirection),
- IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([1.0,0.0]));
- END_LOCAL;
- RETURN([D, IfcOrthogonalComplement(D)]);
-END_FUNCTION;
-
-FUNCTION IfcBuildAxes
- (Axis, RefDirection : IfcDirection)
- : LIST [3:3] OF IfcDirection;
- LOCAL
- D1, D2 : IfcDirection;
- END_LOCAL;
- D1 := NVL(IfcNormalise(Axis), IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([0.0,0.0,1.0]));
- D2 := IfcFirstProjAxis(D1, RefDirection);
- RETURN ([D2, IfcNormalise(IfcCrossProduct(D1,D2)).Orientation, D1]);
-END_FUNCTION;
-
-FUNCTION IfcCorrectDimensions
- (m : IfcUnitEnum; Dim : IfcDimensionalExponents)
- : LOGICAL;
- CASE m OF
- LENGTHUNIT : IF
- Dim = (IfcDimensionalExponents (1, 0, 0, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- MASSUNIT : IF
- Dim = (IfcDimensionalExponents (0, 1, 0, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- TIMEUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, 1, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- ELECTRICCURRENTUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, 0, 1, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- THERMODYNAMICTEMPERATUREUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, 0, 0, 1, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- AMOUNTOFSUBSTANCEUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, 0, 0, 0, 1, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- LUMINOUSINTENSITYUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, 0, 0, 0, 0, 1))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- PLANEANGLEUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, 0, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- SOLIDANGLEUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, 0, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- AREAUNIT : IF
- Dim = (IfcDimensionalExponents (2, 0, 0, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- VOLUMEUNIT : IF
- Dim = (IfcDimensionalExponents (3, 0, 0, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
-
- ABSORBEDDOSEUNIT : IF
- Dim = (IfcDimensionalExponents (2, 0, -2, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- RADIOACTIVITYUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, -1, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- ELECTRICCAPACITANCEUNIT : IF
- Dim = (IfcDimensionalExponents (-2, 1, 4, 1, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- DOSEEQUIVALENTUNIT : IF
- Dim = (IfcDimensionalExponents (2, 0, -2, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- ELECTRICCHARGEUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, 1, 1, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- ELECTRICCONDUCTANCEUNIT : IF
- Dim = (IfcDimensionalExponents (-2, -1, 3, 2, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- ELECTRICVOLTAGEUNIT : IF
- Dim = (IfcDimensionalExponents (2, 1, -3, -1, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- ELECTRICRESISTANCEUNIT : IF
- Dim = (IfcDimensionalExponents (2, 1, -3, -2, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- ENERGYUNIT : IF
- Dim = (IfcDimensionalExponents (2, 1, -2, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- FORCEUNIT : IF
- Dim = (IfcDimensionalExponents (1, 1, -2, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- FREQUENCYUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, -1, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- INDUCTANCEUNIT : IF
- Dim = (IfcDimensionalExponents (2, 1, -2, -2, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- ILLUMINANCEUNIT : IF
- Dim = (IfcDimensionalExponents (-2, 0, 0, 0, 0, 0, 1))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- LUMINOUSFLUXUNIT : IF
- Dim = (IfcDimensionalExponents (0, 0, 0, 0, 0, 0, 1))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- MAGNETICFLUXUNIT : IF
- Dim = (IfcDimensionalExponents (2, 1, -2, -1, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- MAGNETICFLUXDENSITYUNIT : IF
- Dim = (IfcDimensionalExponents (0, 1, -2, -1, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- POWERUNIT : IF
- Dim = (IfcDimensionalExponents (2, 1, -3, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
- PRESSUREUNIT : IF
- Dim = (IfcDimensionalExponents (-1, 1, -2, 0, 0, 0, 0))
- THEN RETURN(TRUE);
- ELSE RETURN(FALSE);
- END_IF;
-
- OTHERWISE :
- RETURN (UNKNOWN);
- END_CASE;
-END_FUNCTION;
-
-FUNCTION IfcCorrectLocalPlacement
- (AxisPlacement:IfcAxis2Placement;
- RelPlacement : IfcObjectPlacement)
- : LOGICAL;
-
- IF (EXISTS(RelPlacement)) THEN
- IF ('IFC2X3.IFCGRIDPLACEMENT' IN TYPEOF(RelPlacement)) THEN
- RETURN(?);
- END_IF;
- IF ('IFC2X3.IFCLOCALPLACEMENT' IN TYPEOF(RelPlacement)) THEN
- IF ('IFC2X3.IFCAXIS2PLACEMENT2D' IN TYPEOF(AxisPlacement)) THEN
- RETURN(TRUE);
- END_IF;
- IF ('IFC2X3.IFCAXIS2PLACEMENT3D' IN TYPEOF(AxisPlacement)) THEN
- IF (RelPlacement.RelativePlacement.Dim = 3) THEN
- RETURN(TRUE);
- ELSE
- RETURN(FALSE);
- END_IF;
- END_IF;
- END_IF;
- ELSE
- RETURN(TRUE);
- END_IF;
- RETURN(?);
-END_FUNCTION;
-
-FUNCTION IfcCorrectObjectAssignment
- (Constraint: IfcObjectTypeEnum; Objects : SET[1:?] OF IfcObjectDefinition)
- : LOGICAL;
-
- LOCAL
- Count : INTEGER := 0;
- END_LOCAL;
-
- IF NOT(EXISTS(Constraint)) THEN
- RETURN(TRUE);
- END_IF;
-
- CASE Constraint OF
- IfcObjectTypeEnum.NOTDEFINED : RETURN(TRUE);
- IfcObjectTypeEnum.PRODUCT :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Objects | NOT('IFC2X3.IFCPRODUCT' IN TYPEOF(temp))));
- RETURN(Count = 0);
- END;
- IfcObjectTypeEnum.PROCESS :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Objects | NOT('IFC2X3.IFCPROCESS' IN TYPEOF(temp))));
- RETURN(Count = 0);
- END;
- IfcObjectTypeEnum.CONTROL :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Objects | NOT('IFC2X3.IFCCONTROL' IN TYPEOF(temp))));
- RETURN(Count = 0);
- END;
- IfcObjectTypeEnum.RESOURCE :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Objects | NOT('IFC2X3.IFCRESOURCE' IN TYPEOF(temp))));
- RETURN(Count = 0);
- END;
- IfcObjectTypeEnum.ACTOR :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Objects | NOT('IFC2X3.IFCACTOR' IN TYPEOF(temp))));
- RETURN(Count = 0);
- END;
- IfcObjectTypeEnum.GROUP :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Objects | NOT('IFC2X3.IFCGROUP' IN TYPEOF(temp))));
- RETURN(Count = 0);
- END;
- IfcObjectTypeEnum.PROJECT :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Objects | NOT('IFC2X3.IFCPROJECT' IN TYPEOF(temp))));
- RETURN(Count = 0);
- END;
- OTHERWISE : RETURN(?);
- END_CASE;
-END_FUNCTION;
-
-FUNCTION IfcCorrectUnitAssignment
- (Units : SET [1:?] OF IfcUnit)
- : LOGICAL;
-
- LOCAL
- NamedUnitNumber : INTEGER := 0;
- DerivedUnitNumber : INTEGER := 0;
- MonetaryUnitNumber : INTEGER := 0;
- NamedUnitNames : SET OF IfcUnitEnum := [];
- DerivedUnitNames : SET OF IfcDerivedUnitEnum := [];
- END_LOCAL;
-
- NamedUnitNumber := SIZEOF(QUERY(temp <* Units | ('IFC2X3.IFCNAMEDUNIT' IN TYPEOF(temp)) AND NOT(temp.UnitType = IfcUnitEnum.USERDEFINED)));
- DerivedUnitNumber := SIZEOF(QUERY(temp <* Units | ('IFC2X3.IFCDERIVEDUNIT' IN TYPEOF(temp)) AND NOT(temp.UnitType = IfcDerivedUnitEnum.USERDEFINED)));
- MonetaryUnitNumber := SIZEOF(QUERY(temp <* Units | 'IFC2X3.IFCMONETARYUNIT' IN TYPEOF(temp)));
-
- REPEAT i := 1 TO SIZEOF(Units);
- IF (('IFC2X3.IFCNAMEDUNIT' IN TYPEOF(Units[i])) AND NOT(Units[i].UnitType = IfcUnitEnum.USERDEFINED)) THEN
- NamedUnitNames := NamedUnitNames + Units[i].UnitType;
- END_IF;
- IF (('IFC2X3.IFCDERIVEDUNIT' IN TYPEOF(Units[i])) AND NOT(Units[i].UnitType = IfcDerivedUnitEnum.USERDEFINED)) THEN
- DerivedUnitNames := DerivedUnitNames + Units[i].UnitType;
- END_IF;
- END_REPEAT;
-
- RETURN((SIZEOF(NamedUnitNames) = NamedUnitNumber) AND (SIZEOF(DerivedUnitNames) = DerivedUnitNumber) AND (MonetaryUnitNumber <= 1));
-END_FUNCTION;
-
-FUNCTION IfcCrossProduct
- (Arg1, Arg2 : IfcDirection)
- : IfcVector;
- LOCAL
- Mag : REAL;
- Res : IfcDirection;
- V1,V2 : LIST[3:3] OF REAL;
- Result : IfcVector;
- END_LOCAL;
-
- IF (NOT EXISTS (Arg1) OR (Arg1.Dim = 2)) OR (NOT EXISTS (Arg2) OR (Arg2.Dim = 2)) THEN
- RETURN(?);
- ELSE
- BEGIN
- V1 := IfcNormalise(Arg1).DirectionRatios;
- V2 := IfcNormalise(Arg2).DirectionRatios;
- Res := IfcRepresentationItem() || IfcGeometricRepresentationItem ()
- || IfcDirection([(V1[2]*V2[3] - V1[3]*V2[2]), (V1[3]*V2[1] - V1[1]*V2[3]), (V1[1]*V2[2] - V1[2]*V2[1])]);
- Mag := 0.0;
- REPEAT i := 1 TO 3;
- Mag := Mag + Res.DirectionRatios[i]*Res.DirectionRatios[i];
- END_REPEAT;
- IF (Mag > 0.0) THEN
- Result := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector(Res, SQRT(Mag));
- ELSE
- Result := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector(Arg1, 0.0);
- END_IF;
- RETURN(Result);
- END;
- END_IF;
-END_FUNCTION;
-
-FUNCTION IfcCurveDim
- (Curve : IfcCurve)
- : IfcDimensionCount;
-
- IF ('IFC2X3.IFCLINE' IN TYPEOF(Curve))
- THEN RETURN(Curve.Pnt.Dim);
- END_IF;
- IF ('IFC2X3.IFCCONIC' IN TYPEOF(Curve))
- THEN RETURN(Curve.Position.Dim);
- END_IF;
- IF ('IFC2X3.IFCPOLYLINE' IN TYPEOF(Curve))
- THEN RETURN(Curve.Points[1].Dim);
- END_IF;
- IF ('IFC2X3.IFCTRIMMEDCURVE' IN TYPEOF(Curve))
- THEN RETURN(IfcCurveDim(Curve.BasisCurve));
- END_IF;
- IF ('IFC2X3.IFCCOMPOSITECURVE' IN TYPEOF(Curve))
- THEN RETURN(Curve.Segments[1].Dim);
- END_IF;
- IF ('IFC2X3.IFCBSPLINECURVE' IN TYPEOF(Curve))
- THEN RETURN(Curve.ControlPointsList[1].Dim);
- END_IF;
- IF ('IFC2X3.IFCOFFSETCURVE2D' IN TYPEOF(Curve))
- THEN RETURN(2);
- END_IF;
- IF ('IFC2X3.IFCOFFSETCURVE3D' IN TYPEOF(Curve))
- THEN RETURN(3);
- END_IF;
- RETURN (?);
-END_FUNCTION;
-
-FUNCTION IfcCurveWeightsPositive
- (B: IfcRationalBezierCurve)
- : BOOLEAN;
- LOCAL
- Result : BOOLEAN := TRUE;
- END_LOCAL;
-
- REPEAT i := 0 TO B.UpperIndexOnControlPoints;
- IF B.Weights[i] <= 0.0 THEN
- Result := FALSE;
- RETURN(Result);
- END_IF;
- END_REPEAT;
- RETURN(Result);
-END_FUNCTION;
-
-FUNCTION IfcDeriveDimensionalExponents
- (x : IfcUnit)
- : IfcDimensionalExponents;
- LOCAL
- Result : IfcDimensionalExponents :=
- IfcDimensionalExponents(0, 0, 0, 0, 0, 0, 0);
- END_LOCAL;
- IF 'IFC2X3.IFCDERIVEDUNIT' IN TYPEOF(x) THEN
- REPEAT i := LOINDEX(x.Elements) TO HIINDEX(x.Elements);
- Result.LengthExponent := Result.LengthExponent +
- (x.Elements[i].Exponent *
- x.Elements[i].Unit.Dimensions.LengthExponent);
- Result.MassExponent := Result.MassExponent +
- (x.Elements[i].Exponent *
- x.Elements[i].Unit.Dimensions.MassExponent);
- Result.TimeExponent := Result.TimeExponent +
- (x.Elements[i].Exponent *
- x.Elements[i].Unit.Dimensions.TimeExponent);
- Result.ElectricCurrentExponent := Result.ElectricCurrentExponent +
- (x.Elements[i].Exponent *
- x.Elements[i].Unit.Dimensions.ElectricCurrentExponent);
- Result.ThermodynamicTemperatureExponent :=
- Result.ThermodynamicTemperatureExponent +
- (x.Elements[i].Exponent *
- x.Elements[i].Unit.Dimensions.ThermodynamicTemperatureExponent);
- Result.AmountOfSubstanceExponent :=
- Result.AmountOfSubstanceExponent + (x.Elements[i].Exponent *
- x.Elements[i].Unit.Dimensions.AmountOfSubstanceExponent);
- Result.LuminousIntensityExponent :=
- Result.LuminousIntensityExponent + (x.Elements[i].Exponent *
- x.Elements[i].Unit.Dimensions.LuminousIntensityExponent);
- END_REPEAT;
- ELSE
- Result := x.Dimensions;
- END_IF;
- RETURN (Result);
-END_FUNCTION;
-
-FUNCTION IfcDimensionsForSiUnit
- (n : IfcSiUnitName )
- : IfcDimensionalExponents;
- CASE n OF
- METRE : RETURN (IfcDimensionalExponents
- (1, 0, 0, 0, 0, 0, 0));
- SQUARE_METRE : RETURN (IfcDimensionalExponents
- (2, 0, 0, 0, 0, 0, 0));
- CUBIC_METRE : RETURN (IfcDimensionalExponents
- (3, 0, 0, 0, 0, 0, 0));
- GRAM : RETURN (IfcDimensionalExponents
- (0, 1, 0, 0, 0, 0, 0));
- SECOND : RETURN (IfcDimensionalExponents
- (0, 0, 1, 0, 0, 0, 0));
- AMPERE : RETURN (IfcDimensionalExponents
- (0, 0, 0, 1, 0, 0, 0));
- KELVIN : RETURN (IfcDimensionalExponents
- (0, 0, 0, 0, 1, 0, 0));
- MOLE : RETURN (IfcDimensionalExponents
- (0, 0, 0, 0, 0, 1, 0));
- CANDELA : RETURN (IfcDimensionalExponents
- (0, 0, 0, 0, 0, 0, 1));
- RADIAN : RETURN (IfcDimensionalExponents
- (0, 0, 0, 0, 0, 0, 0));
- STERADIAN : RETURN (IfcDimensionalExponents
- (0, 0, 0, 0, 0, 0, 0));
- HERTZ : RETURN (IfcDimensionalExponents
- (0, 0, -1, 0, 0, 0, 0));
- NEWTON : RETURN (IfcDimensionalExponents
- (1, 1, -2, 0, 0, 0, 0));
- PASCAL : RETURN (IfcDimensionalExponents
- (-1, 1, -2, 0, 0, 0, 0));
- JOULE : RETURN (IfcDimensionalExponents
- (2, 1, -2, 0, 0, 0, 0));
- WATT : RETURN (IfcDimensionalExponents
- (2, 1, -3, 0, 0, 0, 0));
- COULOMB : RETURN (IfcDimensionalExponents
- (0, 0, 1, 1, 0, 0, 0));
- VOLT : RETURN (IfcDimensionalExponents
- (2, 1, -3, -1, 0, 0, 0));
- FARAD : RETURN (IfcDimensionalExponents
- (-2, -1, 4, 1, 0, 0, 0));
- OHM : RETURN (IfcDimensionalExponents
- (2, 1, -3, -2, 0, 0, 0));
- SIEMENS : RETURN (IfcDimensionalExponents
- (-2, -1, 3, 2, 0, 0, 0));
- WEBER : RETURN (IfcDimensionalExponents
- (2, 1, -2, -1, 0, 0, 0));
- TESLA : RETURN (IfcDimensionalExponents
- (0, 1, -2, -1, 0, 0, 0));
- HENRY : RETURN (IfcDimensionalExponents
- (2, 1, -2, -2, 0, 0, 0));
- DEGREE_CELSIUS : RETURN (IfcDimensionalExponents
- (0, 0, 0, 0, 1, 0, 0));
- LUMEN : RETURN (IfcDimensionalExponents
- (0, 0, 0, 0, 0, 0, 1));
- LUX : RETURN (IfcDimensionalExponents
- (-2, 0, 0, 0, 0, 0, 1));
- BECQUEREL : RETURN (IfcDimensionalExponents
- (0, 0, -1, 0, 0, 0, 0));
- GRAY : RETURN (IfcDimensionalExponents
- (2, 0, -2, 0, 0, 0, 0));
- SIEVERT : RETURN (IfcDimensionalExponents
- (2, 0, -2, 0, 0, 0, 0));
- OTHERWISE : RETURN (IfcDimensionalExponents
- (0, 0, 0, 0, 0, 0, 0));
- END_CASE;
-END_FUNCTION;
-
-FUNCTION IfcDotProduct
- (Arg1, Arg2 : IfcDirection)
- : REAL;
- LOCAL
- Scalar : REAL;
- Vec1, Vec2 : IfcDirection;
- Ndim : INTEGER;
- END_LOCAL;
-
- IF NOT EXISTS (Arg1) OR NOT EXISTS (Arg2) THEN
- Scalar := ?;
- ELSE
- IF (Arg1.Dim <> Arg2.Dim) THEN
- Scalar := ?;
- ELSE
- BEGIN
- Vec1 := IfcNormalise(Arg1);
- Vec2 := IfcNormalise(Arg2);
- Ndim := Arg1.Dim;
- Scalar := 0.0;
- REPEAT i := 1 TO Ndim;
- Scalar := Scalar + Vec1.DirectionRatios[i]*Vec2.DirectionRatios[i];
- END_REPEAT;
- END;
- END_IF;
- END_IF;
- RETURN (Scalar);
-END_FUNCTION;
-
-FUNCTION IfcFirstProjAxis
- (ZAxis, Arg : IfcDirection)
- : IfcDirection;
- LOCAL
- XAxis : IfcDirection;
- V : IfcDirection;
- Z : IfcDirection;
- XVec : IfcVector;
- END_LOCAL;
-
- IF (NOT EXISTS(ZAxis)) THEN
- RETURN (?) ;
- ELSE
- Z := IfcNormalise(ZAxis);
- IF NOT EXISTS(Arg) THEN
- IF (Z.DirectionRatios <> [1.0,0.0,0.0]) THEN
- V := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([1.0,0.0,0.0]);
- ELSE
- V := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([0.0,1.0,0.0]);
- END_IF;
- ELSE
- IF (Arg.Dim <> 3) THEN
- RETURN (?) ;
- END_IF;
- IF ((IfcCrossProduct(Arg,Z).Magnitude) = 0.0) THEN
- RETURN (?);
- ELSE
- V := IfcNormalise(Arg);
- END_IF;
- END_IF;
- XVec := IfcScalarTimesVector(IfcDotProduct(V, Z), Z);
- XAxis := IfcVectorDifference(V, XVec).Orientation;
- XAxis := IfcNormalise(XAxis);
- END_IF;
- RETURN(XAxis);
-END_FUNCTION;
-
-FUNCTION IfcLeapYear
- (Year : IfcYearNumber)
- : BOOLEAN;
-
- IF ((((Year MOD 4) = 0) AND ((Year MOD 100) <> 0)) OR
- ((Year MOD 400) = 0)) THEN
- RETURN(TRUE);
- ELSE
- RETURN(FALSE);
- END_IF;
-END_FUNCTION;
-
-FUNCTION IfcListToArray
- (Lis : LIST [0:?] OF GENERIC : T;
- Low,U : INTEGER)
- : ARRAY OF GENERIC : T;
- LOCAL
- N : INTEGER;
- Res : ARRAY [Low:U] OF GENERIC : T;
- END_LOCAL;
-
- N := SIZEOF(Lis);
- IF (N <> (U-Low +1)) THEN
- RETURN(?);
- ELSE
- Res := [Lis[1] : N];
- REPEAT i := 2 TO N;
- Res[Low+i-1] := Lis[i];
- END_REPEAT;
- RETURN(Res);
- END_IF;
-END_FUNCTION;
-
-FUNCTION IfcLoopHeadToTail
- (ALoop : IfcEdgeLoop)
- : LOGICAL;
- LOCAL
- N : INTEGER;
- P : LOGICAL := TRUE;
- END_LOCAL;
-
- N := SIZEOF (ALoop.EdgeList);
- REPEAT i := 2 TO N;
- P := P AND (ALoop.EdgeList[i-1].EdgeEnd :=:
- ALoop.EdgeList[i].EdgeStart);
- END_REPEAT;
- RETURN (P);
-END_FUNCTION;
-
-FUNCTION IfcMlsTotalThickness
- (LayerSet : IfcMaterialLayerSet)
- : IfcLengthMeasure;
- LOCAL
- Max : IfcLengthMeasure := LayerSet.MaterialLayers[1].LayerThickness;
- END_LOCAL;
-
- IF SIZEOF(LayerSet.MaterialLayers) > 1 THEN
- REPEAT i := 2 TO HIINDEX(LayerSet.MaterialLayers);
- Max := Max + LayerSet.MaterialLayers[i].LayerThickness;
- END_REPEAT;
- END_IF;
- RETURN (Max);
-END_FUNCTION;
-
-FUNCTION IfcNoOfLayers
- (Element : IfcElement )
- : INTEGER;
-
- LOCAL
- Association : BAG OF IfcRelAssociates := [];
- MaterialAssociation : SET OF IfcRelAssociatesMaterial := [];
- END_LOCAL;
-
- Association := USEDIN(Element, 'IFC2X3.IFCRELASSOCIATES.RELATEDOBJECTS');
-
- IF SIZEOF (Association) > 0 THEN
- REPEAT i := 1 TO HIINDEX(Association);
- IF ('IFC2X3.IFCRELASSOCIATESMATERIAL' IN TYPEOF(Association[i])) THEN
- MaterialAssociation := MaterialAssociation + Association[i];
- END_IF;
- END_REPEAT;
- END_IF;
-
- IF (SIZEOF(MaterialAssociation) <> 1) THEN
- RETURN (?);
- ELSE
- IF 'IFC2X3.IFCMATERIAL' IN TYPEOF(MaterialAssociation[1].RelatingMaterial) THEN
- RETURN (1);
- END_IF;
- IF 'IFC2X3.IFCMATERIALLAYERSETUSAGE' IN TYPEOF(MaterialAssociation[1].RelatingMaterial) THEN
- RETURN (SIZEOF(MaterialAssociation[1].RelatingMaterial.ForLayerSet.MaterialLayers));
- END_IF;
- IF 'IFC2X3.IFCMATERIALLIST' IN TYPEOF(MaterialAssociation[1].RelatingMaterial) THEN
- RETURN (?);
- END_IF;
- END_IF;
-
- RETURN (?);
-END_FUNCTION;
-
-FUNCTION IfcNormalise
- (Arg : IfcVectorOrDirection)
- : IfcVectorOrDirection;
- LOCAL
- Ndim : INTEGER;
- V : IfcDirection
- := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([1.,0.]);
- Vec : IfcVector
- := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector (
- IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([1.,0.]), 1.);
- Mag : REAL;
- Result : IfcVectorOrDirection
- := V;
- END_LOCAL;
-
- IF NOT EXISTS (Arg) THEN
- RETURN (?);
- ELSE
- Ndim := Arg.Dim;
- IF 'IFC2X3.IFCVECTOR' IN TYPEOF(Arg) THEN
- BEGIN
- V.DirectionRatios := Arg.Orientation.DirectionRatios;
- Vec.Magnitude := Arg.Magnitude;
- Vec.Orientation := V;
- IF Arg.Magnitude = 0.0 THEN
- RETURN(?);
- ELSE
- Vec.Magnitude := 1.0;
- END_IF;
- END;
- ELSE
- V.DirectionRatios := Arg.DirectionRatios;
- END_IF;
- Mag := 0.0;
- REPEAT i := 1 TO Ndim;
- Mag := Mag + V.DirectionRatios[i]*V.DirectionRatios[i];
- END_REPEAT;
- IF Mag > 0.0 THEN
- Mag := SQRT(Mag);
- REPEAT i := 1 TO Ndim;
- V.DirectionRatios[i] := V.DirectionRatios[i]/Mag;
- END_REPEAT;
- IF 'IFC2X3.IFCVECTOR' IN TYPEOF(arg) THEN
- Vec.Orientation := V;
- Result := Vec;
- ELSE
- Result := V;
- END_IF;
- ELSE
- RETURN(?);
- END_IF;
- END_IF;
- RETURN (Result);
-END_FUNCTION;
-
-FUNCTION IfcOrthogonalComplement
- (Vec : IfcDirection)
- : IfcDirection;
- LOCAL
- Result : IfcDirection ;
- END_LOCAL;
- IF NOT EXISTS (Vec) OR (Vec.Dim <> 2) THEN
- RETURN(?);
- ELSE
- Result := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([-Vec.DirectionRatios[2], Vec.DirectionRatios[1]]);
- RETURN(Result);
- END_IF;
-END_FUNCTION;
-
-FUNCTION IfcPathHeadToTail
- (APath : IfcPath)
- : LOGICAL;
- LOCAL
- N : INTEGER := 0;
- P : LOGICAL := UNKNOWN;
- END_LOCAL;
- N := SIZEOF (APath.EdgeList);
- REPEAT i := 2 TO N;
- P := P AND (APath.EdgeList[i-1].EdgeEnd :=:
- APath.EdgeList[i].EdgeStart);
- END_REPEAT;
- RETURN (P);
-END_FUNCTION;
-
-FUNCTION IfcSameAxis2Placement
- (ap1, ap2 : IfcAxis2Placement; Epsilon : REAL)
- : LOGICAL;
-
- RETURN (IfcSameDirection(ap1.P[1],ap2.P[1],Epsilon) AND
- IfcSameDirection(ap1.P[2],ap2.P[2],Epsilon) AND
- IfcSameCartesianPoint(ap1.Location,ap1.Location,Epsilon));
-END_FUNCTION;
-
-FUNCTION IfcSameCartesianPoint
- (cp1, cp2 : IfcCartesianPoint; Epsilon : REAL)
- : LOGICAL;
-
- LOCAL
- cp1x : REAL := cp1.Coordinates[1];
- cp1y : REAL := cp1.Coordinates[2];
- cp1z : REAL := 0;
- cp2x : REAL := cp2.Coordinates[1];
- cp2y : REAL := cp2.Coordinates[2];
- cp2z : REAL := 0;
- END_LOCAL;
-
- IF (SIZEOF(cp1.Coordinates) > 2) THEN
- cp1z := cp1.Coordinates[3];
- END_IF;
-
- IF (SIZEOF(cp2.Coordinates) > 2) THEN
- cp2z := cp2.Coordinates[3];
- END_IF;
-
- RETURN (IfcSameValue(cp1x,cp2x,Epsilon) AND
- IfcSameValue(cp1y,cp2y,Epsilon) AND
- IfcSameValue(cp1z,cp2z,Epsilon));
-END_FUNCTION;
-
-FUNCTION IfcSameDirection
- (dir1, dir2 : IfcDirection; Epsilon : REAL)
- : LOGICAL;
- LOCAL
- dir1x : REAL := dir1.DirectionRatios[1];
- dir1y : REAL := dir1.DirectionRatios[2];
- dir1z : REAL := 0;
- dir2x : REAL := dir2.DirectionRatios[1];
- dir2y : REAL := dir2.DirectionRatios[2];
- dir2z : REAL := 0;
- END_LOCAL;
-
- IF (SIZEOF(dir1.DirectionRatios) > 2) THEN
- dir1z := dir1.DirectionRatios[3];
- END_IF;
-
- IF (SIZEOF(dir2.DirectionRatios) > 2) THEN
- dir2z := dir2.DirectionRatios[3];
- END_IF;
-
- RETURN (IfcSameValue(dir1x,dir2x,Epsilon) AND
- IfcSameValue(dir1y,dir2y,Epsilon) AND
- IfcSameValue(dir1z,dir2z,Epsilon));
-END_FUNCTION;
-
-FUNCTION IfcSameValidPrecision
- (Epsilon1, Epsilon2 : REAL)
- : LOGICAL;
- LOCAL
- ValidEps1, ValidEps2 : REAL;
- DefaultEps : REAL := 0.000001;
- DerivationOfEps : REAL := 1.001;
- UpperEps : REAL := 1.0;
- END_LOCAL;
-
- ValidEps1 := NVL(Epsilon1, DefaultEps);
- ValidEps2 := NVL(Epsilon2, DefaultEps);
- RETURN ((0.0 < ValidEps1) AND (ValidEps1 <= (DerivationOfEps * ValidEps2)) AND
- (ValidEps2 <= (DerivationOfEps * ValidEps1)) AND (ValidEps2 < UpperEps));
-END_FUNCTION;
-
-FUNCTION IfcSameValue
- (Value1, Value2 : REAL; Epsilon : REAL)
- : LOGICAL;
- LOCAL
- ValidEps : REAL;
- DefaultEps : REAL := 0.000001;
- END_LOCAL;
-
- ValidEps := NVL(Epsilon, DefaultEps);
- RETURN ((Value1 + ValidEps > Value2) AND (Value1 < Value2 + ValidEps));
-END_FUNCTION;
-
-FUNCTION IfcScalarTimesVector
- (Scalar : REAL; Vec : IfcVectorOrDirection)
- : IfcVector;
- LOCAL
- V : IfcDirection;
- Mag : REAL;
- Result : IfcVector;
- END_LOCAL;
-
- IF NOT EXISTS (Scalar) OR NOT EXISTS (Vec) THEN
- RETURN (?) ;
- ELSE
- IF 'IFC2X3.IFCVECTOR' IN TYPEOF (Vec) THEN
- V := Vec.Orientation;
- Mag := Scalar * Vec.Magnitude;
- ELSE
- V := Vec;
- Mag := Scalar;
- END_IF;
- IF (Mag < 0.0 ) THEN
- REPEAT i := 1 TO SIZEOF(V.DirectionRatios);
- V.DirectionRatios[i] := -V.DirectionRatios[i];
- END_REPEAT;
- Mag := -Mag;
- END_IF;
- Result := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector(IfcNormalise(V), Mag);
- END_IF;
- RETURN (Result);
-END_FUNCTION;
-
-FUNCTION IfcSecondProjAxis
- (ZAxis, XAxis, Arg: IfcDirection)
- : IfcDirection;
- LOCAL
- YAxis : IfcVector;
- V : IfcDirection;
- Temp : IfcVector;
- END_LOCAL;
-
- IF NOT EXISTS(Arg) THEN
- V := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([0.0,1.0,0.0]);
- ELSE
- V := Arg;
- END_IF;
- Temp := IfcScalarTimesVector(IfcDotProduct(V, ZAxis), ZAxis);
- YAxis := IfcVectorDifference(V, Temp);
- Temp := IfcScalarTimesVector(IfcDotProduct(V, XAxis), XAxis);
- YAxis := IfcVectorDifference(YAxis, Temp);
- YAxis := IfcNormalise(YAxis);
- RETURN(YAxis.Orientation);
-END_FUNCTION;
-
-FUNCTION IfcShapeRepresentationTypes
- (RepType : IfcLabel; Items : SET OF IfcRepresentationItem)
- : LOGICAL;
-
- LOCAL
- Count : INTEGER := 0;
- END_LOCAL;
-
- CASE RepType OF
- 'Curve2D' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCCURVE' IN TYPEOF(temp))
- AND (temp.Dim = 2)));
- END;
- 'Annotation2D' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | (
- SIZEOF(TYPEOF(temp) * [
- 'IFC2X3.IFCPOINT',
- 'IFC2X3.IFCCURVE',
- 'IFC2X3.IFCGEOMETRICCURVESET',
- 'IFC2X3.IFCANNOTATIONFILLAREA',
- 'IFC2X3.IFCDEFINEDSYMBOL',
- 'IFC2X3.IFCTEXTLITERAL',
- 'IFC2X3.IFCDRAUGHTINGCALLOUT']) = 1)
- ));
- END;
- 'GeometricSet' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCGEOMETRICSET' IN TYPEOF(temp))
- OR ('IFC2X3.IFCPOINT' IN TYPEOF(temp))
- OR ('IFC2X3.IFCCURVE' IN TYPEOF(temp))
- OR ('IFC2X3.IFCSURFACE' IN TYPEOF(temp))));
- END;
- 'GeometricCurveSet' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCGEOMETRICCURVESET' IN TYPEOF(temp))
- OR ('IFC2X3.IFCGEOMETRICSET' IN TYPEOF(temp))
- OR ('IFC2X3.IFCPOINT' IN TYPEOF(temp))
- OR ('IFC2X3.IFCCURVE' IN TYPEOF(temp))));
- REPEAT i:=1 TO HIINDEX(Items);
- IF ('IFC2X3.IFCGEOMETRICSET' IN TYPEOF(Items[i]))
- THEN
- IF (SIZEOF(QUERY(temp <* Items[i]\IfcGeometricSet.Elements | 'IFC2X3.IFCSURFACE' IN TYPEOF(temp))) > 0)
- THEN
- Count := Count - 1;
- END_IF;
- END_IF;
- END_REPEAT;
- END;
- 'SurfaceModel' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | SIZEOF([
- 'IFC2X3.IFCSHELLBASEDSURFACEMODEL',
- 'IFC2X3.IFCFACEBASEDSURFACEMODEL',
- 'IFC2X3.IFCFACETEDBREP',
- 'IFC2X3.IFCFACETEDBREPWITHVOIDS'] * TYPEOF(temp)) >= 1
- ));
- END;
- 'SolidModel' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCSOLIDMODEL' IN TYPEOF(temp))));
- END;
- 'SweptSolid' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCSWEPTAREASOLID' IN TYPEOF(temp))));
- END;
- 'CSG' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCBOOLEANRESULT' IN TYPEOF(temp))));
- END;
- 'Clipping' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCBOOLEANCLIPPINGRESULT' IN TYPEOF(temp))));
- END;
- 'AdvancedSweptSolid' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCSURFACECURVESWEPTAREASOLID' IN TYPEOF(temp))
- OR ('IFC2X3.IFCSWEPTDISKSOLID' IN TYPEOF(temp))));
- END;
- 'Brep' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCFACETEDBREP' IN TYPEOF(temp))
- OR ('IFC2X3.IFCFACETEDBREPWITHVOIDS' IN TYPEOF(temp))));
- END;
- 'BoundingBox' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCBOUNDINGBOX' IN TYPEOF(temp))));
- IF (SIZEOF(Items) > 1)
- THEN
- Count := 0;
- END_IF;
- END;
- 'SectionedSpine' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCSECTIONEDSPINE' IN TYPEOF(temp))));
- END;
- 'MappedRepresentation' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items | ('IFC2X3.IFCMAPPEDITEM' IN TYPEOF(temp))));
- END;
- OTHERWISE : RETURN(?);
- END_CASE;
- RETURN (Count = SIZEOF(Items));
-END_FUNCTION;
-
-FUNCTION IfcTopologyRepresentationTypes
- (RepType : IfcLabel; Items : SET OF IfcRepresentationItem)
- : LOGICAL;
-
- LOCAL
- Count : INTEGER := 0;
- END_LOCAL;
-
- CASE RepType OF
- 'Vertex' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items |
- ('IFC2X3.IFCVERTEX' IN TYPEOF(temp))));
- END;
- 'Edge' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items |
- ('IFC2X3.IFCEDGE' IN TYPEOF(temp))));
- END;
- 'Path' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items |
- ('IFC2X3.IFCPATH' IN TYPEOF(temp))));
- END;
- 'Face' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items |
- ('IFC2X3.IFCFACE' IN TYPEOF(temp))));
- END;
- 'Shell' :
- BEGIN
- Count := SIZEOF(QUERY(temp <* Items |
- ('IFC2X3.IFCOPENSHELL' IN TYPEOF(temp))
- OR ('IFC2X3.IFCCLOSEDSHELL' IN TYPEOF(temp))));
- END;
- 'Undefined': RETURN(TRUE);
- OTHERWISE : RETURN(?);
- END_CASE;
- RETURN (Count = SIZEOF(Items));
-END_FUNCTION;
-
-FUNCTION IfcUniquePropertyName
- (Properties : SET [1:?] OF IfcProperty)
- : LOGICAL;
-
- LOCAL
- Names : SET OF IfcIdentifier := [];
- END_LOCAL;
-
- REPEAT i:=1 TO HIINDEX(Properties);
- Names := Names + Properties[i].Name;
- END_REPEAT;
- RETURN (SIZEOF(Names) = SIZEOF(Properties));
-END_FUNCTION;
-
-FUNCTION IfcValidCalendarDate
- (Date : IfcCalendarDate)
- : LOGICAL;
- IF NOT ({1 <= Date.DayComponent <= 31}) THEN
- RETURN(FALSE);
- END_IF;
- CASE Date.MonthComponent OF
- 4 : RETURN({ 1<= Date.DayComponent <= 30});
- 6 : RETURN({ 1<= Date.DayComponent <= 30});
- 9 : RETURN({ 1<= Date.DayComponent <= 30});
- 11 : RETURN({ 1<= Date.DayComponent <= 30});
- 2 :
- BEGIN
- IF (IfcLeapYear(Date.YearComponent)) THEN
- RETURN({ 1<= Date.DayComponent <= 29});
- ELSE
- RETURN({ 1<= Date.DayComponent <= 28});
- END_IF;
- END;
- OTHERWISE : RETURN(TRUE);
- END_CASE;
-END_FUNCTION;
-
-FUNCTION IfcValidTime
- (Time: IfcLocalTime)
- : BOOLEAN;
- IF EXISTS (Time.SecondComponent) THEN
- RETURN (EXISTS (Time.MinuteComponent));
- ELSE
- RETURN (TRUE);
- END_IF;
-END_FUNCTION;
-
-FUNCTION IfcVectorDifference
- (Arg1, Arg2 : IfcVectorOrDirection)
- : IfcVector;
- LOCAL
- Result : IfcVector;
- Res, Vec1, Vec2 : IfcDirection;
- Mag, Mag1, Mag2 : REAL;
- Ndim : INTEGER;
- END_LOCAL;
-
- IF ((NOT EXISTS (Arg1)) OR (NOT EXISTS (Arg2))) OR (Arg1.Dim <> Arg2.Dim) THEN
- RETURN (?) ;
- ELSE
- BEGIN
- IF 'IFC2X3.IFCVECTOR' IN TYPEOF(Arg1) THEN
- Mag1 := Arg1.Magnitude;
- Vec1 := Arg1.Orientation;
- ELSE
- Mag1 := 1.0;
- Vec1 := Arg1;
- END_IF;
- IF 'IFC2X3.IFCVECTOR' IN TYPEOF(Arg2) THEN
- Mag2 := Arg2.Magnitude;
- Vec2 := Arg2.Orientation;
- ELSE
- Mag2 := 1.0;
- Vec2 := Arg2;
- END_IF;
- Vec1 := IfcNormalise (Vec1);
- Vec2 := IfcNormalise (Vec2);
- Ndim := SIZEOF(Vec1.DirectionRatios);
- Mag := 0.0;
- Res := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([0.0:Ndim]);
-
- REPEAT i := 1 TO Ndim;
- Res.DirectionRatios[i] := Mag1*Vec1.DirectionRatios[i] - Mag2*Vec2.DirectionRatios[i];
- Mag := Mag + (Res.DirectionRatios[i]*Res.DirectionRatios[i]);
- END_REPEAT;
-
- IF (Mag > 0.0 ) THEN
- Result := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector( Res, SQRT(Mag));
- ELSE
- Result := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector( Vec1, 0.0);
- END_IF;
- END;
- END_IF;
- RETURN (Result);
-END_FUNCTION;
-
-FUNCTION IfcVectorSum
- (Arg1, Arg2 : IfcVectorOrDirection)
- : IfcVector;
- LOCAL
- Result : IfcVector;
- Res, Vec1, Vec2 : IfcDirection;
- Mag, Mag1, Mag2 : REAL;
- Ndim : INTEGER;
- END_LOCAL;
-
- IF ((NOT EXISTS (Arg1)) OR (NOT EXISTS (Arg2))) OR (Arg1.Dim <> Arg2.Dim) THEN
- RETURN (?) ;
- ELSE
- BEGIN
- IF 'IFC2X3.IFCVECTOR' IN TYPEOF(Arg1) THEN
- Mag1 := Arg1.Magnitude;
- Vec1 := Arg1.Orientation;
- ELSE
- Mag1 := 1.0;
- Vec1 := Arg1;
- END_IF;
- IF 'IFC2X3.IFCVECTOR' IN TYPEOF(Arg2) THEN
- Mag2 := Arg2.Magnitude;
- Vec2 := Arg2.Orientation;
- ELSE
- Mag2 := 1.0;
- Vec2 := Arg2;
- END_IF;
- Vec1 := IfcNormalise (Vec1);
- Vec2 := IfcNormalise (Vec2);
- Ndim := SIZEOF(Vec1.DirectionRatios);
- Mag := 0.0;
- Res := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcDirection([0.0:Ndim]);
-
- REPEAT i := 1 TO Ndim;
- Res.DirectionRatios[i] := Mag1*Vec1.DirectionRatios[i] + Mag2*Vec2.DirectionRatios[i];
- Mag := Mag + (Res.DirectionRatios[i]*Res.DirectionRatios[i]);
- END_REPEAT;
-
- IF (Mag > 0.0 ) THEN
- Result := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector( Res, SQRT(Mag));
- ELSE
- Result := IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector( Vec1, 0.0);
- END_IF;
- END;
- END_IF;
- RETURN (Result);
-END_FUNCTION;
-
-RULE IfcRepresentationContextSameWCS FOR
- (IfcGeometricRepresentationContext);
- LOCAL
- IsDifferent : LOGICAL := FALSE;
- END_LOCAL;
- IF (SIZEOF(IfcGeometricRepresentationContext) > 1)
- THEN
- REPEAT i := 2 TO HIINDEX(IfcGeometricRepresentationContext);
- IF (IfcGeometricRepresentationContext[1].WorldCoordinateSystem :<>: IfcGeometricRepresentationContext[i].WorldCoordinateSystem)
- THEN
- IsDifferent := (NOT(IfcSameValidPrecision(IfcGeometricRepresentationContext[1].Precision,
- IfcGeometricRepresentationContext[i].Precision)))
- OR (NOT(IfcSameAxis2Placement(IfcGeometricRepresentationContext[1].WorldCoordinateSystem,
- IfcGeometricRepresentationContext[i].WorldCoordinateSystem,
- IfcGeometricRepresentationContext[1].Precision)));
- IF (IsDifferent = TRUE) THEN
- ESCAPE;
- END_IF;
- END_IF;
- END_REPEAT;
- END_IF;
- WHERE
- WR1 : IsDifferent = FALSE;
-END_RULE;
-
-RULE IfcSingleProjectInstance FOR
- (IfcProject);
- WHERE
- WR1 : SIZEOF(IfcProject) <= 1;
-END_RULE;
-
-END_SCHEMA;