IFC 4.3.2.20251031 (IFC4X3_ADD2) under development

8.16.3.9 IfcPropertyEnumeration(属性枚举)

RV ⓘ
AbV ⓘ

8.16.3.9.1 语义定义(Semantic definition)

IfcPropertyEnumeration 是一个简单值或度量值的集合,定义了一组预设的备选项,从中选择"枚举值"。这使得属性集中可以包含枚举值。IfcPropertyEnumeration 为枚举提供名称以及唯一值(数值或描述性)列表(可分配度量类型)。该实体定义了潜在的枚举器列表,可与 IfcPropertyEnumeratedValue 类型的属性一起(或分别)交换,这些属性从此枚举中选择实际属性值。

单位通过 Unit 属性处理,表1展示了一个无单位属性枚举的示例:

名称 枚举值 类型(通过 IfcValue 单位
PEnum_DamperBladeAction Parallel IfcLabel -
Opposed IfcLabel
Other IfcLabel
Unset IfcLabel
表1 — 包含值、度量类型和单位的属性枚举

8.16.3.9.2 实体继承(Entity inheritance)

8.16.3.9.3 特性(Attributes)

# 特性(Attributes) 类型 描述
IfcPropertyAbstraction (1)
点击显示 1 个隐藏的继承特性 点击隐藏 1 个继承特性
IfcPropertyEnumeration (3)
表 8.16.3.9.B

8.16.3.9.4 形式化命题(Formal propositions)

名称 描述
WR01

EnumerationValues 列表中的所有值应具有相同的度量类型。

SIZEOF(QUERY(temp <* SELF.EnumerationValues | 
  NOT(TYPEOF(SELF.EnumerationValues[1]) = TYPEOF(temp))
  )) = 0
UR1 The attribute Name should be unique
表 8.16.3.9.C

8.16.3.9.5 形式化表示(Formal representation)

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

8.16.3.9.6 参考文献