|
@@ -0,0 +1,9571 @@
|
|
|
+(*
|
|
|
+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 [email protected]
|
|
|
+*)
|
|
|
+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;
|