该页全部中文内容仅供20252453-T-424 项目组内部使用

20252453-T-424 项目

5.1.3.6 IfcObject (对象)

抽象 该定义可能不会被直接实例化。

5.1.3.6.1 语义定义(Semantic definition)

IfcObject 是对任何语义上被处理的事物或过程的泛化。对象是事物呈现出来的样子——即,实例。

对象可以使用继承的 Name 特性来命名,该特性应该是对象实例的用户可识别的标签。可以使用继承的 Description 特性给出对对象的进一步解释。ObjectType 特性用于:

  • 存储 IfcObject 所有子类型的用户定义值,其中给出了 PredefinedType 特性,并且其值设置为 USERDEFINED。
  • 如果没有给出 PredefinedType 特性,则提供 IfcObject 子类型的类型信息(可以看作是一个非常轻量级的分类器)。如果没有全面的预定义类型列表,通常就是这种情况。

对象是独立的信息片段,可能包含或引用其他信息片段。对象可以参与以下几种关系:

  • 与外部/内部资源信息关联 - 一种关联关系,指向外部/内部信息来源。有关更多信息,请参见超类型 IfcObjectDefinition
  • 其他对象的分配 - 一种分配关系,指向其他类型的对象。有关更多信息,请参见超类型 IfcObjectDefinition
  • 其他对象的聚合 - 一种聚合关系,建立整体/部分关系。对象可以是整体,也可以是部分,或者两者都是。有关更多信息,请参见超类型 IfcObjectDefinition
  • 类型的分配IsTypedBy - 一种定义关系 IfcRelDefinesByType,它使用类型定义来定义此实例的共同特征,可能包括所有分配给此类型的对象实例的共同形状表达和共同特性。它是一种特定的实例关系,具有隐含的依赖关系(因为实例特性依赖于类型的特性,但可能会覆盖它们)。
  • 部分类型的分配IsDeclaredBy, Declares - 一种定义关系 IfcRelDefinesByObject,它使用类型定义的组成部分(类型的一部分,称为“声明部分”)来定义实例的组成部分(实例的一部分,称为“反映部分”)。这也称为“深度复制”。实例中所有部分的共同特征由类型中的部分定义。它是一种特定的实例关系,具有隐含的依赖关系(因为实例特性依赖于类型的特性,但可能会覆盖它们)。
  • 属性集分配IsDefinedBy - 一种定义关系 IfcRelDefinesByProperties,它将属性集定义分配给对象实例。

非正式命题

  1. 部分类型分配,即逆向特性 IsDeclaredByDeclares 只能在对象是分解的一部分时使用,即,如果施加了 IsDecomposedByDecomposes

5.1.3.6.2 实体继承(Entity inheritance)

5.1.3.6.3 特性(Attributes)

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

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

2 OwnerHistory OPTIONAL IfcOwnerHistory

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

3 Name OPTIONAL IfcLabel

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

4 Description OPTIONAL IfcText

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

IfcObjectDefinition (7)
HasAssignments SET [0:?] OF IfcRelAssigns FOR RelatedObjects

引用分配(通过关联关系)其他 IfcObject 子类型到此对象实例的关系对象。例如,与产品、过程、控制、资源或组的关联。

Nests SET [0:1] OF IfcRelNests FOR RelatedObjects

引用作为嵌套的分解关系。它确定此对象定义是顺序整体/部分分解关系中的一部分。对象实例或类型只能是单个分解的一部分(仅允许分层结构)。

IsNestedBy SET [0:?] OF IfcRelNests FOR RelatingObject

引用作为嵌套的分解关系。它确定此对象定义是顺序整体/部分分解关系中的整体。对象或对象类型可以被多个其他对象(实例或类型)嵌套。

HasContext SET [0:1] OF IfcRelDeclares FOR RelatedDefinitions

引用提供上下文信息的上下文,例如项目单位或表示上下文。它只应断言在最上层的非空间对象上。

IsDecomposedBy SET [0:?] OF IfcRelAggregates FOR RelatingObject

引用作为聚合的分解关系。它确定此对象定义是无序整体/部分分解关系中的整体。对象定义可以被多个其他对象(实例或部分)聚合。

Decomposes SET [0:1] OF IfcRelAggregates FOR RelatedObjects

引用作为聚合的分解关系。它确定此对象定义是无序整体/部分分解关系中的一部分。对象定义只能是单个分解的一部分(仅允许分层结构)。

HasAssociations SET [0:?] OF IfcRelAssociates FOR RelatedObjects

引用将外部资源或资源定义与对象关联的关系对象。例如,与库、文档或分类的关联。

点击显示 11 个隐藏的继承特性 点击隐藏 11 个继承特性
IfcObject (5)
5 ObjectType OPTIONAL IfcLabel

该类型表示指示对象的特定类型。必须在可实例化的子类型的级别上建立用法。特别是,如果特性 PredefinedType 的枚举设置为 USERDEFINED,或者当实例化的具体实体没有 PredefinedType 特性时,它保存用户定义的类型。后者发生在一些特殊的叶子类中,以及直接实例化 IfcBuiltElement 时。

IsDeclaredBy SET [0:1] OF IfcRelDefinesByObject FOR RelatedObjects

链接到指向声明对象的关系对象,该声明对象为此对象实例提供对象定义。声明对象必须是对象类型分解的一部分。关联的 IfcObject 或其子类型包含特定信息(作为类型或样式定义的一部分),该信息对于声明 IfcObject 或其子类型的所有反映实例是通用的。

Declares SET [0:?] OF IfcRelDefinesByObject FOR RelatingObject

链接到指向接收对象定义的反向对象的关系对象。反向对象必须是对象实例分解的一部分。关联的 IfcObject 或其子类型提供特定信息(作为类型或样式定义的一部分),该信息对于声明 IfcObject 或其子类型的所有反向实例是通用的。

IsTypedBy SET [0:1] OF IfcRelDefinesByType FOR RelatedObjects

与对象类型的关系集合,该对象类型为此对象实例提供类型定义。然后,关联的 IfcTypeObject 或其子类型包含特定信息(或类型或样式),该信息对于引用同一类型的所有 IfcObject 或其子类型的实例是通用的。

IsDefinedBy SET [0:?] OF IfcRelDefinesByProperties FOR RelatedObjects

与附加到此对象的属性集定义的集合的关系。这些静态或动态定义的特性包含字母数字信息内容,这些内容进一步定义了对象。

表 5.1.3.6.A

5.1.3.6.4 形式化命题(Formal propositions)

名称(Name) 描述(Description)
UniquePropertySetNames

Every individual IfcPropertySetDefinition assigned to the object using IfcRelDefinesByProperties shall have a unique Name attribute value.

((SIZEOF(IsDefinedBy) = 0) OR IfcUniqueDefinitionNames(IsDefinedBy))
表 5.1.3.6.B

5.1.3.6.5 概念用法(Concept usage)

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

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

Software Identity General

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

IfcObjectDefinition (9)
Classification Association General

任何对象实例或对象类型都可以具有对特定分类引用的引用,即对分类系统中特定方面的引用。

Aggregation General

无可用描述

Approval Association General

无可用描述

Constraint Association General

无可用描述

Document Association General

无可用描述

Library Association General

无可用描述

Material Association General

无可用描述

Material Single General

无可用描述

Nesting General

无可用描述

点击显示 11 个隐藏的继承概念 点击隐藏 11 个继承概念
IfcObject (5)
Object Predefined Type General

无可用描述

Object Typing General

任何对象实例都可以通过被分配给一个使用此概念的通用对象类型来类型化。通过在 IfcObject 的子类型级别覆盖此概念,引入了一个限制可分配的 IfcTypeObject 子类型的特定规则。

此概念可应用于以下资源

Object User Identity General

特性 Name 和可选的 Description 可用于 IfcObject 的所有子类型。对于那些具有对象类型定义的子类型,例如 IfcBeam - IfcBeamType,通用的 Name 和可选的 Description 与对象类型相关联。

Property Sets with Override General

任何对象实例都可以拥有属性集,可以直接在对象实例上作为元素特定的属性集,也可以在对象类型上作为类型属性集。在这种情况下,提供给对象实例的特性是元素特定特性和类型特性的组合。如果在实例和类型特性中都定义了相同的特性(在同一属性集中),则实例特性的特性值将覆盖类型特性的特性值。

Assignment to Group General

无可用描述

表 5.1.3.6.C

5.1.3.6.6 形式化表示(Formal representation)

ENTITY IfcObject
 ABSTRACT SUPERTYPE OF (ONEOF
	(IfcActor
	,IfcControl
	,IfcGroup
	,IfcProcess
	,IfcProduct
	,IfcResource))
 SUBTYPE OF (IfcObjectDefinition);
	ObjectType : OPTIONAL IfcLabel;
 INVERSE
	IsDeclaredBy : SET [0:1] OF IfcRelDefinesByObject FOR RelatedObjects;
	Declares : SET [0:?] OF IfcRelDefinesByObject FOR RelatingObject;
	IsTypedBy : SET [0:1] OF IfcRelDefinesByType FOR RelatedObjects;
	IsDefinedBy : SET [0:?] OF IfcRelDefinesByProperties FOR RelatedObjects;
 WHERE
	UniquePropertySetNames : ((SIZEOF(IsDefinedBy) = 0) OR IfcUniqueDefinitionNames(IsDefinedBy));
END_ENTITY;

5.1.3.6.7 参考(References)