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