IfcPropertyEnumeration

Natural language names
Merkmal - Aufzählung
Property Enumeration
Propriété à valeurs énumérées
Semantic definitions at the entity
Entity definition

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 346 for an example of a unitless property enumeration:

 

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

Table 346 — 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
Attribute definitions
#AttributeTypeCardinalityDescription R
1NameIfcLabel Name of this enumeration.X
2EnumerationValuesIfcValueL[1:?] List of values that form the enumeration.X
3Unit- This attribute is out of scope for this model view definition and shall not be set.
Formal Propositions
RuleDescription
WR01All values within the list of EnumerationValues shall be of the same measure type.
Inherited definitions from supertypes
Entity inheritance IfcPropertyAbstraction
Attribute inheritance
#AttributeTypeCardinalityDescriptionR
IfcPropertyAbstraction
IfcPropertyEnumeration
1NameIfcLabel Name of this enumeration.X
2EnumerationValuesIfcValueL[1:?] List of values that form the enumeration.X
3Unit- This attribute is out of scope for this model view definition and shall not be set.
Formal representations
XML Specification
 <xs:element name="IfcPropertyEnumeration" type="ifc:IfcPropertyEnumeration" substitutionGroup="ifc:IfcPropertyAbstraction" nillable="true"/>
 <xs:complexType name="IfcPropertyEnumeration">
  <xs:complexContent>
   <xs:extension base="ifc:IfcPropertyAbstraction">
    <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-unique"/>
       <xs:attribute ref="ifc:arraySize" use="optional"/>
      </xs:complexType>
     </xs:element>
    </xs:sequence>
    <xs:attribute name="Name" type="ifc:IfcLabel" use="optional"/>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcPropertyEnumeration
 SUBTYPE OF (IfcPropertyAbstraction);
  Name : IfcLabel;
  EnumerationValues : LIST [1:?] OF UNIQUE IfcValue;
  Unit : OPTIONAL IfcStrippedOptional;
 UNIQUE
  UR1 : Name;
 WHERE
  WR01 : SIZEOF(QUERY(temp <* SELF.EnumerationValues |
NOT(TYPEOF(SELF.EnumerationValues[1]) = TYPEOF(temp))
)) = 0;
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

References  References: IfcPropertyEnumeratedValue

Link to this page  Link to this page