IFC 4.3.2.20251031 (IFC4X3_ADD2) under development

4.1.3 Object Attributes

=================

所有具有语义意义的实体都派生自 IfcRoot,其中实例在数据集中使用压缩的全局唯一标识符 (IFC-GUID) 进行标识。此标识符在对象的生命周期内不得更改,这允许数据被合并、版本化或从其他位置引用。

资源级别实例(不派生自 IfcRoot)没有任何标识,因此具有相同状态的两个实例被认为是相等的。例如,如果一个对象具有由 IfcCartesianPoint 实例描述的坐标,那么具有相同坐标的另一个对象可以拥有一个单独的 IfcCartesianPoint 实例或共享同一个实例;这种差异是数据存储优化问题,并不意味着任何语义关系。这也意味着非根实例只有在通过直接特性或逆向特性,或遵循实例特性的链条被至少一个根实例引用时才能存在。

根实体和非根实体(资源级别)之间的区别实现了几个目标: * 通过内部化(共享)非根数据实例可以减小文件大小; * 通过将非根数据存储在根数据实例的本地,可以提高数据库检索效率; * 通过避免为不需要直接检索的项目存储 IFC-GUID,可以减小存储大小; * 差异比较可以在更高级别进行,此时变化的上下文是明显的; * 实现可以为了效率或简化的使用而将非根数据实例视为不可变的。