5.1.3.46 IfcTypeObject (对象类型)
5.1.3.46.1 语义定义(Semantic definition)
对象类型定义了类型的特定信息,这些信息是该类型所有实例(occurrences)共有的。它引用了“通用-具体-实例”建模范式(generic - specific - occurrence modeling paradigm)的特定层级。IfcTypeObject 通过 IfcRelDefinesByType 关系被分配给各个对象实例(即实例)。
对象类型由一组属性集定义。附加的属性集描述了关于对象类型的可用字母数字信息,并用于定义适用于该类型所有对象实例的所有通用属性。
对象类型可以在尚未分配给对象的情况下进行交换。对象类型可以指示其定义源自哪个库(或目录)。此关联通过继承的 HasAssociations 关系指向 IfcRelAssociatesLibrary 来处理。
IFC2x3变更 _IfcTypeObject_现在从新的超类型_IfcObjectDefinition_子类型化,并且属性_HasPropertySets_已从LIST更改为SET。
IFC4变更 从IFC4开始,实体_IfcTypeObject_不应被实例化。在未来的IFC版本中,它将更改为ABSTRACT超类型。反向属性_Types_已从_ObjectTypeOf_重命名。
5.1.3.46.2 实体继承(Entity inheritance)
5.1.3.46.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 个继承特性 | |||
| IfcTypeObject (3) | |||
| 5 | ApplicableOccurrence | OPTIONAL IfcIdentifier |
此特性可选地定义了实例对象的数据类型,类型对象可以关联到该实例对象。如果不存在,则不对类型对象适用于哪个实例对象给出任何限制。使用以下约定:
|
| 6 | HasPropertySets | OPTIONAL SET [1:?] OF IfcPropertySetDefinition |
与对象类型关联的、并且是引用此对象类型的全部实例对象共有的属性集集合。
|
| Types | SET [0:1] OF IfcRelDefinesByType FOR RelatingType |
指向关系 IfcRelDefinesByType 的引用,从而指向由该类型定义的那些实例对象。 |
|
5.1.3.46.4 形式化命题(Formal propositions)
| 名称(Name) | 描述(Description) |
|---|---|
| NameRequired |
必须提供 Name 特性。名称可以在 IFC 规范中作为属性集协议的一部分进行声明。 |
|
|
| UniquePropertySetNames |
在属性 HasPropertySets 中分配给实例的每个单独的 IfcPropertySetDefinition 都应具有唯一的 Name 特性值。 |
|
|
5.1.3.46.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 个继承概念 | |||
| IfcTypeObject (2) | |||
| Object Type Predefined Type | General |
无可用描述 |
|
| Property Sets for Types | General |
无可用描述 |
|
5.1.3.46.6 形式化表示(Formal representation)
ENTITY IfcTypeObject
SUPERTYPE OF (ONEOF
(IfcTypeProcess
,IfcTypeProduct
,IfcTypeResource))
SUBTYPE OF (IfcObjectDefinition);
ApplicableOccurrence : OPTIONAL IfcIdentifier;
HasPropertySets : OPTIONAL SET [1:?] OF IfcPropertySetDefinition;
INVERSE
Types : SET [0:1] OF IfcRelDefinesByType FOR RelatingType;
WHERE
NameRequired : EXISTS(SELF\IfcRoot.Name);
UniquePropertySetNames : (NOT(EXISTS(HasPropertySets))) OR IfcUniquePropertySetNames(HasPropertySets);
END_ENTITY;