A property with a bounded value, IfcPropertyBoundedValue, defines a property object which has a maximum of two (numeric or descriptive) values assigned, the first value specifying the upper bound and the second value specifying the lower bound. It defines a property - value bound (min-max) combination for which the property Name, an optional Description, the optional UpperBoundValue with measure type, the optional LowerBoundValue with measure type, and the optional Unit is given. A set point value can be provided in addition to the upper and lower bound values for operational value setting.
The unit is handled by the Unit attribute, see Table 1 for an example of a bounded property:
The IfcPropertyBoundedValue allows for the specification of an interval for the value component of the property description. If either the LowerBoundValue or the UpperBoundValue is not given, then it indicates an open bound (either a minimum value or a maximum value). The interval is by definition inclusive, that is, the value given for the LowerBoundValue or the UpperBoundValue is included in the interval.
NOTE An IfcPropertyBoundedValue may be exchanged with no values assigned yet. In this case the LowerBoundValue and the UpperBoundValue are set to NIL.
Name UpperBoundValue LowerBoundValue SetPointValue Type
Unit OverallHeight 1930 2300 <nil> IfcPositiveLengthMeasure - OverallWidth 0.9 1.25 <nil> IfcPositiveLengthMeasure m MaxHeight 20.0 <nil> <nil> IfcPositiveLengthMeasure - MinWeight <nil> 20 <nil> IfcMassMeasure kg * Where rules ensures same measure type for all values
Table 1 — Bounded property with values, measure types and units
HISTORY New entity in IFC2x.
IFC2x2 CHANGE The attribute type of the attribute UpperBoundValue and LowerBoundValue has been made optional with upward compatibility for file based exchange.
IFC4 CHANGE The attribute SetPointValue has been added.
|HasExternalReferences||SET [0:?] OF IfcExternalReferenceRelationship FOR RelatedResourceObjects||Reference to an external reference, e.g. library, classification, or document information, that is associated to the property definition.|
> IFC4 CHANGE New inverse attribute.
|1||Name||IfcIdentifier||Name for this property. This label is the significant name string that defines the semantic meaning for the property.|
|2||Description||OPTIONAL IfcText||Informative text to explain the property.|
|PartOfPset||SET [0:?] OF IfcPropertySet FOR HasProperties||Reference to the IfcPropertySet by which the IfcProperty is referenced.|
> IFC4 CHANGE New inverse attribute to navigate from IfcProperty to IfcPropertySet with upward compatibility for file based exchange.
|PropertyForDependance||SET [0:?] OF IfcPropertyDependencyRelationship FOR DependingProperty||The property on whose value that of another property depends.|
|PropertyDependsOn||SET [0:?] OF IfcPropertyDependencyRelationship FOR DependantProperty||The relating property on which the value of the property depends.|
|PartOfComplex||SET [0:?] OF IfcComplexProperty FOR HasProperties||Reference to the IfcComplexProperty in which the IfcProperty is contained.|
> IFC4 CHANGE The cardinality has changed to 0..n to allow reuse of instances of IfcProperty in several IfcComplexProperty with upward compatibility for file based exchange.
|HasConstraints||SET [0:?] OF IfcResourceConstraintRelationship FOR RelatedResourceObjects||User-defined constraints for the property.|
|HasApprovals||SET [0:?] OF IfcResourceApprovalRelationship FOR RelatedResourceObjects||User-defined approvals for the property.|
|3||UpperBoundValue||OPTIONAL IfcValue||Upper bound value for the interval defining the property value. If the value is not given, it indicates an open bound (all values to be greater than or equal to LowerBoundValue).|
|4||LowerBoundValue||OPTIONAL IfcValue||Lower bound value for the interval defining the property value. If the value is not given, it indicates an open bound (all values to be lower than or equal to UpperBoundValue).|
|5||Unit||OPTIONAL IfcUnit||Unit for the upper and lower bound values, if not given, the default value for the measure type is used as defined by the global unit assignment at _IfcProject.UnitInContext_. The applicable unit is then selected by the underlying TYPE of the UpperBoundValue, LowerBoundValue, and SetPointValue)|
|6||SetPointValue||OPTIONAL IfcValue||Set point value as typically used for operational value setting.|
> IFC4 CHANGE The attribute has been added at the end of the attribute list.
ENTITY IfcPropertyBoundedValue SUBTYPE OF (IfcSimpleProperty); UpperBoundValue : OPTIONAL IfcValue; LowerBoundValue : OPTIONAL IfcValue; Unit : OPTIONAL IfcUnit; SetPointValue : OPTIONAL IfcValue; WHERE SameUnitUpperLower : NOT(EXISTS(UpperBoundValue)) OR NOT(EXISTS(LowerBoundValue)) OR (TYPEOF(UpperBoundValue) = TYPEOF(LowerBoundValue)); SameUnitUpperSet : NOT(EXISTS(UpperBoundValue)) OR NOT(EXISTS(SetPointValue)) OR (TYPEOF(UpperBoundValue) = TYPEOF(SetPointValue)); SameUnitLowerSet : NOT(EXISTS(LowerBoundValue)) OR NOT(EXISTS(SetPointValue)) OR (TYPEOF(LowerBoundValue) = TYPEOF(SetPointValue)); END_ENTITY;