


https://biblus.accasoftware.com/en/ifc-schema-the-ifcrelationship-concept/
在这篇博文中,我们将简要概述 IFC(行业基础类)格式数据模式所基于的第二个支柱IfcRelationShip,即在 IFC 模式内建立的不同类型的关系。在我们之前的博客文章中,我们已经研究了 IFC 中任何语义处理的事物或过程的泛化,以及实体。以下是构成 IFC 类层次结构中第一级专业化的 3 个内容的链接:IfcObject
关于 IfcObject 的文章(IFC 架构第 1 部分)
关于 IfcRelationship 的文章(IFC 模式第 2 部分)
文章重述 IfcPropertyDefinition(IFC 架构第 3 部分)。
IFC 模式可以被认为是一个用于组织和传输数字数据的存储系统,以促进不同主体之间的互操作性。
此外,IFC 定义了一个模型,其中集成了数百个分层组织的实体。

IFC 数据架构组合
IFC 逻辑基于 3 个基本概念并代表其结构:
IfcObjectDefinition: 代表所有实体(对象)
IfcRelationship: 总结实体之间的关系
IfcPropertyDefinition:描述与实体关联的属性。

IFC 架构 | 描述 IfcRelationship 的方案
IfcRelationship 描述了不同类型的关系。
具体来说,IFC 模型中有 5 种基本类型的关系,它们是 IfcRelationship 类的子类型:
IfcRelConnects是一种基于一定标准连接对象的连接关系。例如,连接到梁的楼板或支撑在楼板上的隔墙
IfcRelAssociates用于关联外部信息源并将它们与对象或属性定义相关联。关联关系是单向的。一个外部 IFC 库,其中定义了建筑物内特定空间的对象或分类信息,可以代表一个有效的例子
IfcRelDecomposes定义组合或分解元素的一般概念。分解意味着层次结构,其中整体的定义取决于单个部分的定义,反之亦然。因此,一个成本项目可以包含在其他项目中,或者一个结构框架可以被认为是梁和柱的集合
IfcRelDefines是一种允许对象实例继承属性集的关系。例如,IFC 模型中的不同窗口实例可能属于同一类型(属于同一目录或制造商)。从而他们共享相同的信息
IfcRelAssigns当一个对象需要另一个对象的服务时,就会产生明确的分配关系。例如,我们可以将某个资源分配给一个对象。
这 5 种类型中的每一种都允许开发对象、类型、属性等(子类型树)之间的进一步关系,如下图所示:

IFC 文件结构 | 显示 IfcRelationship 细分的方案
下面从usBIM.viewer+工作空间截取的屏幕截图概述了不同的关系示例:
在第一个插图中,我们看到了如何IfcRelAggregates与细分的IfcBuilding 所有级别相关联,即IfcBuildingStorey
在第二幅图中,它显示了如何与属于它的所有实体IfcRelContainedInSpatialStructure链接在一起IfcBuildingStorey
在第三个中,突出显示了 中包含IfcRelConnectsPathElements 的两个连续实体(墙)的关系IfcWallStandardCase。

IfcRelAggregates | IfcBuilding 与 IfcBuildingStorey 各层级的关系

IfcRelContainedInSpatialStructure | IfcBuildingStorey 与其所属实体的关系,例如 IfcDoor、IfcWallStandardCase、IfcSlab、IfcWindow

IfcRelConnectsPathElements | IfcWallStandardCase 中包含的两个连续实体之间的关系