IFC 4.3.x development IfcPropertyEnumeration

Change log


modificationsattributes EnumerationValues definitionChanged from list[1:?] of unique IfcValue to list[1:?] of IfcValue


modificationsattributes EnumerationValues definitionChanged from list[1:?] of IfcValue to list[1:?] of unique IfcValue Semantic definitions at the entity

IfcPropertyEnumeration is a collection of simple or measure values that define a prescribed set of alternatives from which 'enumeration values' are selected. This enables inclusion of enumeration values in property sets. IfcPropertyEnumeration provides a name for the enumeration as well as a list of unique (numeric or descriptive) values (that may have a measure type assigned). The entity defines the list of potential enumerators to be exchanged together (or separately) with properties of type IfcPropertyEnumeratedValue that selects their actual property values from this enumeration.

The unit is handled by the Unit attribute, see Table 1 for an example of a unitless property enumeration:

  • If the Unit attribute is not given, than the unit is already implied by the type of IfcMeasureValue or IfcDerivedMeasureValue. The associated unit can be found at the IfcUnitAssignment globally defined at the project level (IfcProject.UnitsInContext).
  • If the Unit attribute is given, the unit assigned by the unit attribute overrides the globally assigned unit.


Name EnumerationValues Type (through IfcValue) Unit
PEnum_DamperBladeAction Parallel IfcLabel -
  Opposed IfcLabel  
  Other IfcLabel  
  Unset IfcLabel  

Table 1 — Property enumeration with values, measure types and units

HISTORY  New entity in IFC2.0, capabilities enhanced in IFC2x.

IFC2x CHANGE  Entity has been renamed from IfcEnumeration Attributes

# Attribute Type Description
HasExternalReferencesSET [0:?] OF IfcExternalReferenceRelationship FOR RelatedResourceObjectsReference 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 IfcLabel Name of this enumeration.
2 EnumerationValues LIST [1:?] OF IfcValue List of values that form the enumeration.
3 Unit OPTIONAL IfcUnit Unit for the enumerator 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 inheritance

dot_inheritance IfcPropertyEnumeration IfcPropertyEnumeration IfcPropertyAbstraction IfcPropertyAbstraction IfcPropertyEnumeration->IfcPropertyAbstraction IfcPropertyAbstraction_children 3 more... IfcPropertyAbstraction_children->IfcPropertyAbstraction Formal representations

ENTITY IfcPropertyEnumeration
 SUBTYPE OF (IfcPropertyAbstraction);
	Name : IfcLabel;
	EnumerationValues : LIST [1:?] OF IfcValue;
	Unit : OPTIONAL IfcUnit;
	UR1 : Name;
	WR01 : SIZEOF(QUERY(temp <* SELF.EnumerationValues | 
  NOT(TYPEOF(SELF.EnumerationValues[1]) = TYPEOF(temp))
  )) = 0;