A property with an enumerated value (IfcPropertyEnumeratedValue) defines a property object which has a value assigned which is chosen from an enumeration. It defines a property - value combination for which the property name, the value with measure type (and optional the unit) are given.
NOTE: Multiple choices from the property enumeration are supported.
The unit is handled by the Unit attribute of the IfcPropertyEnumeration:
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. Examples of a property with enumerated value with are:
Name | Value (EnumerationValue) |
Type (through IfcValue) |
ref. IfcPropertyEnumeration (Name) |
BladeAction | Opposed | IfcString | DamperBladeActionEnum |
BladeAction | Parallel | IfcString | DamperBladeActionEnum |
The IfcPropertyEnumeratedValue refers to an IfcPropertyEnumeration, e.g. for the above:
Name | EnumerationValues | Type (through IfcValue) |
Unit |
DamperBladeActionEnum | (Parallel, Opposed, Other, Unset) | IfcString | - |
HISTORY: New Entity in IFC Release 2.0, capabilities enhanced in IFC R2x. The entity has been renamed from IfcEnumeratedProperty in IFC Release 2x.
# | Attribute | Type | Cardinality | Description | A |
---|---|---|---|---|---|
3 | EnumerationValues | IfcValue | L[1:?] | Enumeration values, which shall be listed in the referenced IfcPropertyEnumeration, if such a reference is provided. | X |
4 | EnumerationReference | - | This attribute is out of scope for this model view definition and shall not be set. |
Rule | Description |
---|---|
WR1 | Each enumeration value shall be a member of the list of EnumerationValues at the referenced IfcPropertyEnumeration (if given). |
# | Attribute | Type | Cardinality | Description | A |
---|---|---|---|---|---|
IfcProperty | |||||
1 | Name | IfcIdentifier | [1:1] | Name for this property. This label is the significant name string that defines the semantic meaning for the property. | X |
2 | Description | - | This attribute is out of scope for this model view definition and shall not be set. | ||
IfcSimpleProperty | |||||
IfcPropertyEnumeratedValue | |||||
3 | EnumerationValues | IfcValue | L[1:?] | Enumeration values, which shall be listed in the referenced IfcPropertyEnumeration, if such a reference is provided. | X |
4 | EnumerationReference | - | This attribute is out of scope for this model view definition and shall not be set. |
<xs:element name="IfcPropertyEnumeratedValue" type="ifc:IfcPropertyEnumeratedValue" substitutionGroup="ifc:IfcSimpleProperty" nillable="true"/>
<xs:complexType name="IfcPropertyEnumeratedValue">
<xs:complexContent>
<xs:extension base="ifc:IfcSimpleProperty">
<xs:sequence>
<xs:element name="EnumerationValues">
<xs:complexType>
<xs:group ref="ifc:IfcValue" maxOccurs="unbounded"/>
<xs:attribute ref="ifc:itemType" fixed="ifc:IfcValue"/>
<xs:attribute ref="ifc:cType" fixed="list"/>
<xs:attribute ref="ifc:arraySize" use="optional"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcPropertyEnumeratedValue
SUBTYPE OF (IfcSimpleProperty);
EnumerationValues : LIST [1:?] OF IfcValue;
EnumerationReference : OPTIONAL IfcStrippedOptional;
WHERE
WR1 : NOT(EXISTS(EnumerationReference)) OR
(SIZEOF(QUERY(temp <* EnumerationValues |
temp IN EnumerationReference.EnumerationValues))
= SIZEOF(EnumerationValues));
END_ENTITY;