|modifications||attributes ListValues is_optional||Changed from False to True|
An IfcPropertyListValue defines a property that has several (numeric or descriptive) values assigned, these values are given by an ordered list. It defines a property - list value combination for which the property Name, an optional Description, the optional ListValues with measure type and optionally an Unit is given. An IfcPropertyListValue is a list of values. The order in which values appear is significant. All list members shall be of the same type.
The unit is handled by the Unit attribute, see Table 1 for an example of a list property:
NOTE An IfcPropertyListValue may be exchanged with no values assigned yet. In this case the ListValues are set to NIL.
Name ListValues Type
<tr> <td width="15%">ApplicableSizes</td> <td width="30%">1200</td> <td width="25%"><em>IfcPositiveLengthMeasure</em></td> <td width="30%">-</td> </tr> <tr> <td width="15%">-</td> <td width="30%">1600</td> <td width="25%"><em>IfcPositiveLengthMeasure</em></td> <td width="30%">-</td> </tr> <tr> <td width="15%">-</td> <td width="30%">2400</td> <td width="25%"><em>IfcPositiveLengthMeasure</em></td> <td width="30%">-</td> </tr>
Table 1 — List property with values, measure types and units
HISTORY New entity in IFC2x2.
IFC4 CHANGE Attribute ListValues has been made OPTIONAL with upward compatibility for file based exchange.
|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||ListValues||OPTIONAL LIST [1:?] OF IfcValue||List of property values.|
> IFC4 CHANGE The attribute has been made optional with upward compatibility for file based exchange.
|4||Unit||OPTIONAL IfcUnit||Unit for the list values, if not given, the default value for the measure type (given by the TYPE of nominal value) is used as defined by the global unit assignment at IfcProject.|
ENTITY IfcPropertyListValue SUBTYPE OF (IfcSimpleProperty); ListValues : OPTIONAL LIST [1:?] OF IfcValue; Unit : OPTIONAL IfcUnit; WHERE WR31 : SIZEOF(QUERY(temp <* SELF.ListValues | NOT(TYPEOF(SELF.ListValues) = TYPEOF(temp)) )) = 0; END_ENTITY;