8.16.3.8 IfcPropertyEnumeratedValue

Propriété à valeur issue d'un énumération
Merkmal mit Aufzählungswert

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.

NOTE  Multiple choices from the property enumeration are supported.

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

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. 

NOTE  An IfcPropertyEnumeratedValue may be exchanged with no values assigned yet. In this case the EnumerationValues are set to NIL.

 

Name Value
(EnumerationValue)
Type
(through IfcValue)
IfcPropertyEnumeration
(Name)
BladeAction Opposed IfcString DamperBladeActionEnum
BladeAction Parallel IfcString DamperBladeActionEnum

Table 688 — Enumerated property with values, measure types and units

 

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

Name EnumerationValues Type
(through IfcValue)
Unit
DamperBladeActionEnum (Parallel, Opposed, Other, Unset) IfcString -

Table 689 — 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.

HISTORY  New entity in IFC2.0.
IFC2x CHANGE  Entity has been renamed from IfcEnumeratedProperty
IFC4 CHANGE  Attribute EnumerationValues has been made OPTIONAL with upward compatibility for file based exchange.

XSD Specification:

 <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" nillable="true" minOccurs="0">
      <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:element name="EnumerationReference" type="ifc:IfcPropertyEnumeration" nillable="true" minOccurs="0"/>
    </xs:sequence>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>

EXPRESS Specification:

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;

Link to EXPRESS-G diagram EXPRESS-G diagram

Attribute Definitions:

EnumerationValues : Enumeration values, which shall be listed in the referenced IfcPropertyEnumeration, if such a reference is provided.
IFC4 CHANGE  The attribute has been made optional with upward compatibility for file based exchange.
EnumerationReference : Enumeration from which a enumeration value has been selected. The referenced enumeration also establishes the unit of the enumeration value.

Formal Propositions:

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).

Inheritance Graph:

ENTITY IfcPropertyEnumeratedValue
ENTITY IfcPropertyAbstraction
INVERSE
HasExternalReferences : SET OF IfcExternalReferenceRelationship FOR RelatedResourceObjects;
ENTITY IfcProperty
Name : IfcIdentifier;
Description : OPTIONAL IfcText;
INVERSE
PartOfPset : SET OF IfcPropertySet FOR HasProperties;
PropertyForDependance : SET OF IfcPropertyDependencyRelationship FOR DependingProperty;
PropertyDependsOn : SET OF IfcPropertyDependencyRelationship FOR DependantProperty;
PartOfComplex : SET OF IfcComplexProperty FOR HasProperties;
ENTITY IfcSimpleProperty
ENTITY IfcPropertyEnumeratedValue
EnumerationValues : OPTIONAL LIST [1:?] OF IfcValue;
EnumerationReference : OPTIONAL IfcPropertyEnumeration;
END_ENTITY;

Link to this page  Link to this page