5.1.3.34 IfcRelDeclares(关联关系-声明)
5.1.3.34.1 语义定义(Semantic definition)
对象化关系 IfcRelDeclares 用于将对象(IfcObject 的子类型)或属性(IfcPropertyDefinition 的子类型)声明到项目或项目库(由 IfcProject 或 IfcProjectLibrary 表示)。
该关系用于将其他对象,如 IfcActor 或 IfcTypeObject,分配给项目或项目库。 RelatedDefinitions 特性提供了对第一级对象的引用,这些对象是上下文中的对象。所有与其他第一级对象相关的其他对象也在此上下文中定义。
RelatingContext 是包含所有对象的项目或项目库。在 IfcProject 或 IfcProjectLibrary 上定义的单位分配和表示上下文适用于所有这些对象。
5.1.3.34.2 实体继承(Entity inheritance)
5.1.3.34.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 个继承特性 | |||
| IfcRelDeclares (2) | |||
| 5 | RelatingContext | IfcContext |
指向分配了附加信息的 IfcProject 的引用。 |
| 6 | RelatedDefinitions | SET [1:?] OF IfcDefinitionSelect |
一组分配给上下文的对象或属性定义,并且该上下文的单位和表示上下文定义适用于这些对象或属性。 |
5.1.3.34.4 形式化命题(Formal propositions)
| 名称 | 描述 |
|---|---|
| NoSelfReference |
指向关系的目标实例不得包含在 RelatedDefinitions 集中。 |
|
|
5.1.3.34.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。此外,它还可以为概念提供名称和描述。 |
|
| 点击显示 4 个隐藏的继承概念 点击隐藏 4 个继承概念 | |||
| IfcRelDeclares (2) | |||
| Revision Control | General |
使用 IfcOwnerHistory 捕获所有权、历史记录和合并状态。 |
|
| Software Identity | General |
IfcRoot 分配全局唯一 ID。此外,它还可以为概念提供名称和描述。 |
|
5.1.3.34.6 形式化表示(Formal representation)
ENTITY IfcRelDeclares
SUBTYPE OF (IfcRelationship);
RelatingContext : IfcContext;
RelatedDefinitions : SET [1:?] OF IfcDefinitionSelect;
WHERE
NoSelfReference : SIZEOF(QUERY(Temp <* RelatedDefinitions | RelatingContext :=: Temp)) = 0;
END_ENTITY;