用途:处理 IFC 元素的非几何数据。属性集是命名的属性容器,通过对象化关系绑定到一个或多个对象;本技能覆盖容器、关系、属性值实体及其有效性规则,适用于 IFC2x3、IFC4、IFC4.3。
主要能力:
- 容器与关系模式:IfcPropertySet 不是元素的子级,而是独立实例,由 IfcRelDefinesByProperties 关联。IfcPropertySet 继承 IfcRoot 的 GlobalId、OwnerHistory、Name、Description;Name 必填(ExistsName 规则),HasProperties 至少含一个 IfcProperty,且属性名唯一(UniquePropertyNames)。
- 关系:IfcRelDefinesByProperties 的 RelatedObjects 为 SET [1:?],一个属性集可被多个对象共享;RelatingPropertyDefinition 接受 IfcPropertySetDefinitionSelect。NoRelatedTypeObject 规则禁止 RelatedObjects 中出现 IfcTypeObject。
- 类型对象挂接:类型对象(如 IfcWallType)通过 IfcTypeObject.HasPropertySets 直接聚合属性集,类型经 IfcRelDefinesByType 关联实例;不可用 IfcRelDefinesByProperties 触达类型。
- 属性值树:IfcProperty 分 IfcSimpleProperty(六种具体子类型:IfcPropertySingleValue、IfcPropertyEnumeratedValue、IfcPropertyBoundedValue、IfcPropertyListValue、IfcPropertyTableValue、IfcPropertyReferenceValue)与 IfcComplexProperty(可嵌套,WR21 禁止自包含,WR22 要求子属性名唯一)。
- 单位解析:未给 Unit 时由值的度量类型与项目 IfcUnitAssignment 推导;给出 Unit 时仅对该属性局部覆盖。
- 命名约定:标准属性集名以 Pset_ 开头(如 Pset_WallCommon);自定义属性集不得使用 Pset_ 前缀。
- 模板:IfcPropertySetTemplate 与 IfcRelDefinesByTemplate 为 IFC4 新增,IFC2x3 不存在。
版本差异:IfcProperty 第二文本属性在 IFC2x3/IFC4 为 Description,IFC4.3 为 Specification;IfcPropertyBoundedValue.SetPointValue 在 IFC2x3 不存在;模板机制 IFC4 起才有。
使用方式:按决策树选择挂接机制(实例用 IfcRelDefinesByProperties,类型用 HasPropertySets)、属性子类型与命名;参考 references/methods.md、examples.md、anti-patterns.md 获取完整实体定义、STEP 示例与反模式。
适用场景:IFC 模型属性读写、校验与调试,属性集命名与单位处理。
限制:资料未提供安装命令、收费、平台或效果信息;具体实现细节需查阅官方 IFC4.3 文档链接。