IFC 4.4.0.0 build 20261005 (IFC4X4_DEV_20260525) โš  buildingSMART Working Draft. All content is under development.

  • Help suggest improvements
  • Get user or developer support

8.16.3.8 IfcPropertyEnumeratedValue

RV โ“˜
AbV โ“˜

8.16.3.8.1 Semantic definition

A property with an enumerated value, IfcPropertyEnumeratedValue, defines a property object which has a value assigned that is chosen from an enumeration. It defines a property - value combination for which theย property Name, an optional Description,ย the optional EnumerationValues with measure type and optionally an Unit is given.

The unit is handled by the Unit attribute, see Table A for an example of a enumerated property:

  • If the Unit attribute is not given, then 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, then the unit assigned by the unit attribute overrides the globally assigned unit.

More precisely: The IfcPropertyEnumeratedValue defines a property, which value is selected from a defined list of enumerators. The enumerators are stored in a dynamic enumeration of values including the type information from IfcValue (see IfcPropertyEnumeration). This enables applications to use an enumeration value as a property within a property set (IfcPropertySet) including the allowed list of values.

Name Value (EnumerationValue) Type (through IfcValue) IfcPropertyEnumeration (Name)
BladeAction Opposed IfcLabel DamperBladeActionEnum
BladeAction Parallel IfcLabel DamperBladeActionEnum
Table A โ€” Enumerated property with values, measure types and units

The IfcPropertyEnumeratedValue refers to an IfcPropertyEnumeration, see Table B for an example:

Name EnumerationValues Type (through IfcValue) Unit
DamperBladeActionEnum (Parallel, Opposed, Other, Unset) IfcLabel -
Table B โ€” Property enumeration with enumerators

It is not mandatory to use an instance of IfcPropertyEnumeration to hold the applicable values for IfcPropertyEnumeratedValue, however this is the preferred way. A single instance of IfcPropertyEnumeration can be referenced by multiple instances of IfcPropertyEnumeratedValue.

{ .change-ifc2x}

{ .change-ifc2x4}

8.16.3.8.2 Entity inheritance

8.16.3.8.3 Attributes

# Attribute Type Description
IfcPropertyAbstraction (1)
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.

IfcProperty (8)
1 Name IfcIdentifier

Name for this property. This label is the significant name string that defines the semantic meaning for the property.

2 Specification OPTIONAL IfcText

URI reference to a location with semantic definition or informative text to explain the property.

HasApprovals SET [0:?] OF IfcResourceApprovalRelationship FOR RelatedResourceObjects

User-defined approvals for the property.

HasConstraints SET [0:?] OF IfcResourceConstraintRelationship FOR RelatedResourceObjects

User-defined constraints for the property.

PartOfComplex SET [0:?] OF IfcComplexProperty FOR HasProperties

Reference to the IfcComplexProperty in which the IfcProperty is contained.

PartOfPset SET [0:?] OF IfcPropertySet FOR HasProperties

Reference to the IfcPropertySet by which the IfcProperty is referenced.

PropertyDependsOn SET [0:?] OF IfcPropertyDependencyRelationship FOR DependantProperty

The relating property on which the value of the property depends.

PropertyForDependance SET [0:?] OF IfcPropertyDependencyRelationship FOR DependingProperty

The property on whose value that of another property depends.

Click to show 9 hidden inherited attributes Click to hide 9 inherited attributes
IfcPropertyEnumeratedValue (2)
3 EnumerationValues OPTIONAL LIST [1:?] OF IfcValue

Enumeration values, which shall be listed in the referenced IfcPropertyEnumeration, if such a reference is provided.

4 EnumerationReference OPTIONAL IfcPropertyEnumeration

Enumeration from which a enumeration value has been selected. The referenced enumeration also establishes the unit of the enumeration value.

Table C

8.16.3.8.4 Formal propositions

Name Description
WR21

Each value within the list of EnumerationValues shall be a member of the list of EnumerationValues at the referenced IfcPropertyEnumeration (provided that both, the EnumerationValues and EnumerationReference, are asserted).

NOT(EXISTS(EnumerationReference))
OR NOT(EXISTS(EnumerationValues))
OR (SIZEOF(QUERY(temp <* EnumerationValues |
temp IN EnumerationReference.EnumerationValues))
= SIZEOF(EnumerationValues))
Table D

8.16.3.8.5 Formal representation

ENTITY IfcPropertyEnumeratedValue
SUBTYPE OF (IfcSimpleProperty);
EnumerationValues : OPTIONAL LIST [1:?] OF IfcValue;
EnumerationReference : OPTIONAL IfcPropertyEnumeration;
WHERE
WR21 : NOT(EXISTS(EnumerationReference))
OR NOT(EXISTS(EnumerationValues))
OR (SIZEOF(QUERY(temp <* EnumerationValues |
temp IN EnumerationReference.EnumerationValues))
= SIZEOF(EnumerationValues));
END_ENTITY;

8.16.3.8.6 References

Edit on Github

4 contributor(s): ArturTomczakDion MoultbSI-BotThomas Krijnen
Last change: Improve definition split (#876) * bring back headers headers were previously removed by mistake, now bringing them back * add new lines and rename the tag add the word 'short' in it * unify newlines make exactly one newline before and two after the tag * resolving typos Because bringing back headers required to go back in time to previous version, I'm now re-resolving the issues: #861, #860, #856 by ArturTomczak on 2024-07-16T16:07:28+02:00

Is this page difficult to understand? Let us know!

8.16.3.8.7 Changelog

8.16.3.8.7.1 IFC4

  • where rule, WR21
  • where rule, WR1
  • attribute EnumerationValues optional, Is now optional