IFC 4.3.2.20251031 (IFC4X3_ADD2) under development

5.1.3.20 IfcRelAggregates (聚合关系)

RV ⓘ
AbV ⓘ

5.1.3.20.1 语义定义(Semantic definition)

聚合关系 IfcRelAggregates 是一种特殊的通用组合/分解(或整体/部分)关系 IfcRelDecomposes。 聚合关系可以应用于 IfcObjectDefinition 的所有子类型。

在将物理构件聚合为物理集合体的情况下,整体的形状表达(在相同的表达标识符内)可以取自各部分的形状表达的总和。

分解意味着一种依赖关系,意味着整体依赖于部分的定义,而部分依赖于整体的存在。 依赖关系所隐含的行为必须在应用程序内部建立。

5.1.3.20.2 实体继承(Entity inheritance)

5.1.3.20.3 特性(Attributes)

# 特性(Attributes) 类型 描述
IfcRoot (4)
1 GlobalId IfcGloballyUniqueId

在整个软件世界中分配全局唯一标识符。

2 OwnerHistory OPTIONAL IfcOwnerHistory

分配有关该对象当前所有权的信息,包括所有者参与者、应用程序、本地标识以及捕获到的关于对象近期更改的信息。

3 Name OPTIONAL IfcLabel

供参与的软件系统或用户使用的可选名称。对于某些 IfcRoot 的子类型,可能需要插入 Name 特性。这将通过 where 规则强制执行。

4 Description OPTIONAL IfcText

可选的描述,用于提供信息性注释。

点击显示 4 个隐藏的继承特性 点击隐藏 4 个继承特性
IfcRelAggregates (2)
5 RelatingObject IfcObjectDefinition

对象定义,可以是对象类型或对象实例,表示聚合。 它是整体/部分关系中的整体。

6 RelatedObjects SET [1:?] OF IfcObjectDefinition

正在聚合的对象定义,可以是对象实例或对象类型。 它们被定义为整体/部分关系中的部分。 各部分之间没有隐含的顺序。

表 5.1.3.20.A

5.1.3.20.4 形式化命题(Formal propositions)

名称 描述
NoSelfReference

RelatingObject 提供的关系指向的实例不得包含在 RelatedObjects 集合中。

SIZEOF(QUERY(Temp <* RelatedObjects | RelatingObject :=: Temp)) = 0
表 5.1.3.20.B

5.1.3.20.5 概念用法(Concept usage)

概念 用法 描述
IfcRoot (2)
Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

IfcRelationship (2)
Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

IfcRelDecomposes (2)
Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

点击显示 6 个隐藏的继承概念 点击隐藏 6 个继承概念
IfcRelAggregates (2)
Revision Control General

使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。

Software Identity General

IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。

表 5.1.3.20.C

5.1.3.20.6 形式化表示(Formal representation)

ENTITY IfcRelAggregates
 SUBTYPE OF (IfcRelDecomposes);
	RelatingObject : IfcObjectDefinition;
	RelatedObjects : SET [1:?] OF IfcObjectDefinition;
 WHERE
	NoSelfReference : SIZEOF(QUERY(Temp <* RelatedObjects | RelatingObject :=: Temp)) = 0;
END_ENTITY;

5.1.3.20.7 参考文献