IFC 4.3.2.20251031 (IFC4X3_ADD2) under development

5.3.3.5 IfcRelSequence(关系序列)

5.3.3.5.1 语义定义(Semantic definition)

IfcRelSequence 是进程之间的顺序关系,其中一个进程必须在时间上先于另一个进程发生,并且关系的时间可以描述为一种序列类型。关联进程(IfcRelSequence.RelatingProcess)被视为关系中的前驱(具有优先权),而关联的进程(IfcRelSequence.RelatedProcess)是后继。

IfcRelSequence 定义为一对一关系;因此,它将一个前驱分配给一个后继。

Use definitions

IfcRelSequence 用于描述两个进程之间存在的逻辑顺序关系。这种逻辑关系表明存在一个前驱或关联进程和一个后继或关联进程。在 IFC 中,关系中可以有一个前驱和一个后继。可以存在许多 IfcRelSequence 实例来描述一个前驱任务与多个后继任务之间的顺序关系,或者描述多个前驱任务与一个后继任务之间的顺序关系,从而实现任务之间的 m:n 顺序关系。请注意,顺序关系可用于定义进程实例之间的依赖关系,也可用于定义进程类型之间的依赖关系(有关更多信息,请参阅 IfcRelDefinesByObjectIfcTaskType)。在定义进程实例之间的依赖关系时,顺序关系应保持在有向无环图中。

可以为序列设置序列类型。对于分配给工作计划的任务,预期将断言序列类型。对于流程图,其中进程之间的顺序关系仅仅是逻辑流,则不必断言。

可以为序列分配时间滞后,并且序列类型定义了时间滞后应用于序列的方式,无论是作为持续时间的比例或百分比(例如,当前驱任务完成 50% 时开始后继任务),还是作为时间度量(例如,在前驱任务开始后一周开始后继任务)。在分配时间滞后给序列时,应谨慎使用,具体取决于序列类型的设置,因为没有检查时间滞后值是否与设置的序列类型一致。

5.3.3.5.2 实体继承(Entity inheritance)

5.3.3.5.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 个继承特性
IfcRelSequence (5)
5 RelatingProcess IfcProcess

指向作为前驱的进程的引用。

6 RelatedProcess IfcProcess

指向作为后继的进程的引用。

7 TimeLag OPTIONAL IfcLagTime

序列的时间持续时间,即前驱和后继之间的时间滞后,由 SequenceType 指定。

8 SequenceType OPTIONAL IfcSequenceEnum

时间滞后应用于序列的方式。

9 UserDefinedSequenceType OPTIONAL IfcLabel

允许指定序列的用户定义类型,超出 SequenceType 特性(START_STARTSTART_FINISH FINISH_STARTFINISH_FINISH)提供的枚举值。当在属性 UserDefinedSequenceType 中提供值时,属性 SequenceType 应具有枚举值 USERDEFINED

表 5.3.3.5.A

5.3.3.5.4 形式化命题(Formal propositions)

名称 描述
AvoidInconsistentSequence

RelatingProcess 不得指向与 RelatedProcess 相同的实例。

RelatingProcess :<>: RelatedProcess
CorrectSequenceType

SequenceType 的取值为 USERDEFINED 时,必须断言 UserDefinedSequenceType 特性。

(SequenceType <> IfcSequenceEnum.USERDEFINED) OR ((SequenceType = IfcSequenceEnum.USERDEFINED) AND EXISTS(UserDefinedSequenceType))
表 5.3.3.5.B

5.3.3.5.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。此外,它还可以为概念提供名称和描述。

IfcRelConnects (2)
Revision Control General

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

Software Identity General

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

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

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

Software Identity General

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

表 5.3.3.5.C

5.3.3.5.6 形式化表示(Formal representation)

ENTITY IfcRelSequence
 SUBTYPE OF (IfcRelConnects);
	RelatingProcess : IfcProcess;
	RelatedProcess : IfcProcess;
	TimeLag : OPTIONAL IfcLagTime;
	SequenceType : OPTIONAL IfcSequenceEnum;
	UserDefinedSequenceType : OPTIONAL IfcLabel;
 WHERE
	AvoidInconsistentSequence : RelatingProcess :<>: RelatedProcess;
	CorrectSequenceType : (SequenceType <> IfcSequenceEnum.USERDEFINED) OR ((SequenceType = IfcSequenceEnum.USERDEFINED) AND EXISTS(UserDefinedSequenceType));
END_ENTITY;

5.3.3.5.7 参考文献