IFC 4.3.2.20251031 (IFC4X3_ADD2) under development

5.1.3.3 IfcContext(上下文)

RV ⓘ
AbV ⓘ

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

5.1.3.3.1 语义定义(Semantic definition)

IfcContext 是项目上下文的泛化,其中定义了对象、类型对象、属性集和特性。作为 IfcContext 子类型的 IfcProject 为建筑项目的所有信息提供上下文,它可以包含一个或多个作为 IfcContext 子类型的 IfcProjectLibrary,用于注册项目中包含的库。被引用的产品库在 IfcProjectLibrary 中声明,作为该库的上下文。

上下文定义可以使用继承的 Name 特性来命名,该特性应该是用户可识别的上下文键或编号。LongName 可以添加完整名称。可以使用继承的 Description 特性提供对上下文的进一步解释。

上下文通过关系对象 IfcRelDeclares 声明,该对象引用上下文中相应的对象。更具体的关系在子类型级别引入。

5.1.3.3.2 实体继承(Entity inheritance)

5.1.3.3.3 特性(Attributes)

# 特性(Attributes) 类型 描述
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 个继承特性
IfcContext (7)
5 ObjectType OPTIONAL IfcLabel

对象类型表示指示对象的特定类型。必须在可实例化的子类型级别建立用法。

6 LongName OPTIONAL IfcLabel

上下文中用于参考目的的长名称。

7 Phase OPTIONAL IfcLabel

当前项目阶段,或此项目的生命周期阶段。适用的值必须由视图定义或实施者协议约定。

8 RepresentationContexts OPTIONAL SET [1:?] OF IfcRepresentationContext

上下文中使用的表示的上下文。当上下文是一个项目并且它包括其组件的形状表示时,需要包括一个或多个几何表示上下文,这些上下文定义例如世界坐标系、坐标空间维度和/或精度因子。 {}

9 UnitsInContext OPTIONAL IfcUnitAssignment

全局分配给上下文中使用的测量类型的单位。 {}

IsDefinedBy SET [0:?] OF IfcRelDefinesByProperties FOR RelatedObjects

与附加到此上下文的属性集定义的关联关系集合。这些静态或动态定义的属性包含进一步定义上下文的字母数字信息内容。 {}

Declares SET [0:?] OF IfcRelDeclares FOR RelatingContext

引用 IfcRelDeclares 关系,该关系将包含的层次结构的最顶层实体分配给此上下文实例。

表 5.1.3.3.A

5.1.3.3.4 概念用法(Concept usage)

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

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

Software Identity General

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

IfcObjectDefinition (11)
Classification Association General

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

Aggregation General

聚合表示整体结构(称为“复合体”)与从属组件(称为“部分”)之间的内部无序部分组成关系。聚合的概念有多种用法。例如:

  • 聚合用于建筑构件,以指示墙体内的龙骨等部分;
  • 聚合用于空间元素,以指示空间结构,例如建筑物内的楼层;
  • 聚合用于系统,以指示子系统,例如分支电路。

聚合是一种双向关系,从复合体到其部分的这种关系称为分解(Decomposition),从部分到其复合体的这种关系称为组合(Composition)。

concept {
    IfcObjectDefinition:IsDecomposedBy -> IfcRelAggregates:RelatingObject
}
Approval Association General

概念 批准关联 描述了对象或对象类型如何关联批准,指示谁需要批准数据、是否已批准的状态以及批准的日期/时间。批准可能需要多个方扮演各种角色。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesApproval:RelatedObjects
    IfcRelAssociatesApproval:RelatingApproval -> IfcApproval
    IfcApproval:Name -> IfcLabel_0
    IfcApproval:TimeOfApproval -> IfcDateTime
    IfcApproval:Status -> IfcLabel_1
}
Constraint Association General

概念 约束关联 描述了对象或对象类型如何关联约束,指示需要满足的定性目标或定量指标。

基于指标的约束是可衡量的,使得指标有效的状态是计算机可解释的。指标约束基于简单的条件逻辑,例如大于特定值或包含在指定列表或表中。约束可以使用布尔逻辑(如 AND、OR、XOR 或 NOT)组合多个指标。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesConstraint:RelatedObjects
    IfcRelAssociatesConstraint:RelatingConstraint -> IfcObjective
    IfcObjective:BenchmarkValues -> IfcMetric
    IfcObjective:ObjectiveQualifier -> IfcObjectiveEnum
    IfcObjective:LogicalAggregator -> IfcLogicalOperatorEnum
    IfcMetric:DataValue -> IfcMetricValueSelect
    IfcMetric:DataValue -> IfcAppliedValue_0
    IfcMetric:DataValue -> IfcTable
    IfcMetric:Benchmark -> IfcBenchmarkEnum
    IfcMetric:ReferencePath -> IfcReference_1
    IfcMetric:Name -> IfcLabel_1
    IfcMetric:Description -> IfcText_1
    IfcAppliedValue_0:ArithmeticOperator -> IfcArithmeticOperatorEnum
    IfcAppliedValue_0:Components -> IfcAppliedValue_1
    IfcAppliedValue_0:AppliedValue -> IfcLengthMeasure
    IfcAppliedValue_0:AppliedValue -> IfcReal
    IfcTable:Rows -> IfcTableRow
    IfcTable:Columns -> IfcTableColumn
    IfcTableColumn:Identifier -> IfcIdentifier
    IfcTableColumn:Name -> IfcLabel_0
    IfcTableColumn:Description -> IfcText_0
    IfcTableColumn:ReferencePath -> IfcReference_0
    IfcMetric:DataValue[binding="DataValue"]
    IfcReference_1:AttributeIdentifier[binding="Attribute1"]
}
Document Association General

概念 文档关联 描述了对象或对象类型如何关联文档,指示外部文件。文档可以整体引用,例如用于捕获产品手册、数据表、多媒体内容或缩略图。文档中的内容可以从任何对象引用,并可用于同步其他文件中的信息,例如项目管理应用程序的项目计划。

文档的典型元数据,如发布日期、编辑者等,可以与关联一起捕获,但文档内容仍保留在外部文件中。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesDocument:RelatedObjects
    IfcRelAssociatesDocument:Name -> IfcLabel_0
    IfcRelAssociatesDocument:RelatingDocument -> IfcDocumentReference
    IfcDocumentReference:Location -> IfcURIReference
    IfcDocumentReference:Identification -> IfcIdentifier
    IfcDocumentReference:Name -> IfcLabel_1
    IfcDocumentReference:Description -> IfcText
    IfcRelAssociatesDocument:Name[binding="Name"]
}
Library Association General

概念 库关联 描述了对象和对象类型如何关联库实体,指示另一个数据源,例如来自模型服务器、产品库或外部数据库或系统,这些数据源用更多详细信息丰富数据。库可以整体从项目或项目库中引用,指示数据的源和版本。库中的内容可以从项目或项目库中的任何对象、类型对象、属性和某些资源模式实体中引用。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesLibrary:RelatedObjects
    IfcRelAssociatesLibrary:RelatingLibrary -> IfcLibraryReference
    IfcLibraryReference:Location -> IfcURIReference
    IfcLibraryReference:Identification -> IfcIdentifier
    IfcLibraryReference:Name -> IfcLabel
    IfcLibraryReference:Description -> IfcText
    IfcLibraryReference:Language -> IfcLanguageId
    IfcLibraryReference:ReferencedLibrary -> IfcLibraryInformation
    IfcRelAssociatesLibrary:RelatingLibrary[binding="RelatingLibrary"]
}
Material Association General

任何产品或产品类型都可以关联材料,以指示对象的物理组成。

材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
}
Material Single General

材料直接与产品和产品类型关联,以表示整个对象的均匀材料。

材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObjectIfcObject 上进行关联,则直接分配给 IfcObject 的材料具有优先权。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
    IfcRelAssociatesMaterial:RelatingMaterial -> IfcMaterial
    IfcMaterial -> Material
}
Nesting General

嵌套表示主体结构(称为“主机”)与附加组件(称为“被托管元素”)之间的外部有序部分组成关系。嵌套的概念有多种用法。例如:

  • 嵌套用于产品构件,以指示外部可连接部件,例如安装在水槽上的水龙头或安装在接线盒内的开关。
  • 嵌套用于控制对象,以指示规范层次结构。
  • 嵌套用于过程对象,以指示可能并行或串行发生的从属过程。
  • 嵌套用于资源对象,以指示可能并行或串行发生的从属资源分配。

嵌套是一种双向关系,从主机结构到其附加组件的关系称为嵌套(Nesting),从组件到其包含结构的关系称为托管(Hosting)。

concept {
    IfcObjectDefinition:IsNestedBy -> IfcRelNests:RelatingObject
}
Revision Control General

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

Software Identity General

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

点击显示 13 个隐藏的继承概念 点击隐藏 13 个继承概念
IfcContext (18)
Aggregation General

聚合表示整体结构(称为“复合体”)与从属组件(称为“部分”)之间的内部无序部分组成关系。聚合的概念有多种用法。例如:

  • 聚合用于建筑构件,以指示墙体内的龙骨等部分;
  • 聚合用于空间元素,以指示空间结构,例如建筑物内的楼层;
  • 聚合用于系统,以指示子系统,例如分支电路。

聚合是一种双向关系,从复合体到其部分的这种关系称为分解(Decomposition),从部分到其复合体的这种关系称为组合(Composition)。

concept {
    IfcObjectDefinition:IsDecomposedBy -> IfcRelAggregates:RelatingObject
}
Approval Association General

概念 批准关联 描述了对象或对象类型如何关联批准,指示谁需要批准数据、是否已批准的状态以及批准的日期/时间。批准可能需要多个方扮演各种角色。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesApproval:RelatedObjects
    IfcRelAssociatesApproval:RelatingApproval -> IfcApproval
    IfcApproval:Name -> IfcLabel_0
    IfcApproval:TimeOfApproval -> IfcDateTime
    IfcApproval:Status -> IfcLabel_1
}
Classification Association General

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

Constraint Association General

概念 约束关联 描述了对象或对象类型如何关联约束,指示需要满足的定性目标或定量指标。

基于指标的约束是可衡量的,使得指标有效的状态是计算机可解释的。指标约束基于简单的条件逻辑,例如大于特定值或包含在指定列表或表中。约束可以使用布尔逻辑(如 AND、OR、XOR 或 NOT)组合多个指标。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesConstraint:RelatedObjects
    IfcRelAssociatesConstraint:RelatingConstraint -> IfcObjective
    IfcObjective:BenchmarkValues -> IfcMetric
    IfcObjective:ObjectiveQualifier -> IfcObjectiveEnum
    IfcObjective:LogicalAggregator -> IfcLogicalOperatorEnum
    IfcMetric:DataValue -> IfcMetricValueSelect
    IfcMetric:DataValue -> IfcAppliedValue_0
    IfcMetric:DataValue -> IfcTable
    IfcMetric:Benchmark -> IfcBenchmarkEnum
    IfcMetric:ReferencePath -> IfcReference_1
    IfcMetric:Name -> IfcLabel_1
    IfcMetric:Description -> IfcText_1
    IfcAppliedValue_0:ArithmeticOperator -> IfcArithmeticOperatorEnum
    IfcAppliedValue_0:Components -> IfcAppliedValue_1
    IfcAppliedValue_0:AppliedValue -> IfcLengthMeasure
    IfcAppliedValue_0:AppliedValue -> IfcReal
    IfcTable:Rows -> IfcTableRow
    IfcTable:Columns -> IfcTableColumn
    IfcTableColumn:Identifier -> IfcIdentifier
    IfcTableColumn:Name -> IfcLabel_0
    IfcTableColumn:Description -> IfcText_0
    IfcTableColumn:ReferencePath -> IfcReference_0
    IfcMetric:DataValue[binding="DataValue"]
    IfcReference_1:AttributeIdentifier[binding="Attribute1"]
}
Document Association General

概念 文档关联 描述了对象或对象类型如何关联文档,指示外部文件。文档可以整体引用,例如用于捕获产品手册、数据表、多媒体内容或缩略图。文档中的内容可以从任何对象引用,并可用于同步其他文件中的信息,例如项目管理应用程序的项目计划。

文档的典型元数据,如发布日期、编辑者等,可以与关联一起捕获,但文档内容仍保留在外部文件中。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesDocument:RelatedObjects
    IfcRelAssociatesDocument:Name -> IfcLabel_0
    IfcRelAssociatesDocument:RelatingDocument -> IfcDocumentReference
    IfcDocumentReference:Location -> IfcURIReference
    IfcDocumentReference:Identification -> IfcIdentifier
    IfcDocumentReference:Name -> IfcLabel_1
    IfcDocumentReference:Description -> IfcText
    IfcRelAssociatesDocument:Name[binding="Name"]
}
Library Association General

概念 库关联 描述了对象和对象类型如何关联库实体,指示另一个数据源,例如来自模型服务器、产品库或外部数据库或系统,这些数据源用更多详细信息丰富数据。库可以整体从项目或项目库中引用,指示数据的源和版本。库中的内容可以从项目或项目库中的任何对象、类型对象、属性和某些资源模式实体中引用。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesLibrary:RelatedObjects
    IfcRelAssociatesLibrary:RelatingLibrary -> IfcLibraryReference
    IfcLibraryReference:Location -> IfcURIReference
    IfcLibraryReference:Identification -> IfcIdentifier
    IfcLibraryReference:Name -> IfcLabel
    IfcLibraryReference:Description -> IfcText
    IfcLibraryReference:Language -> IfcLanguageId
    IfcLibraryReference:ReferencedLibrary -> IfcLibraryInformation
    IfcRelAssociatesLibrary:RelatingLibrary[binding="RelatingLibrary"]
}
Material Association General

任何产品或产品类型都可以关联材料,以指示对象的物理组成。

材料可以具有用于表面样式的表示,指示 3D 渲染的颜色、纹理和光反射率。材料可以具有用于填充样式的表示,指示 2D 渲染的颜色、图案和阴影线。材料可以具有密度、弹性、热阻等属性,如本规范中所定义。材料也可以根据引用的行业标准进行分类。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
}
Material Single General

材料直接与产品和产品类型关联,以表示整个对象的均匀材料。

材料也可以与 IfcTypeObject 关联,为该类型的实例定义材料。如果材料同时在 IfcTypeObjectIfcObject 上进行关联,则直接分配给 IfcObject 的材料具有优先权。

concept {
    IfcObjectDefinition:HasAssociations -> IfcRelAssociatesMaterial:RelatedObjects
    IfcRelAssociatesMaterial:RelatingMaterial -> IfcMaterial
    IfcMaterial -> Material
}
Nesting General

嵌套表示主体结构(称为“主机”)与附加组件(称为“被托管元素”)之间的外部有序部分组成关系。嵌套的概念有多种用法。例如:

  • 嵌套用于产品构件,以指示外部可连接部件,例如安装在水槽上的水龙头或安装在接线盒内的开关。
  • 嵌套用于控制对象,以指示规范层次结构。
  • 嵌套用于过程对象,以指示可能并行或串行发生的从属过程。
  • 嵌套用于资源对象,以指示可能并行或串行发生的从属资源分配。

嵌套是一种双向关系,从主机结构到其附加组件的关系称为嵌套(Nesting),从组件到其包含结构的关系称为托管(Hosting)。

concept {
    IfcObjectDefinition:IsNestedBy -> IfcRelNests:RelatingObject
}
Project Classification Information General

项目可以定义分类结构,这些结构可用于对同一项目内或引用项目(包含当前项目作为 IfcProjectLibrary)的对象进行分类。

分类信息可以提供为外部分类引用,仅引用一个 IfcClassification(包含分类名称、版本和资源位置),或者引用一个 IfcClassification,其中包含 IfcClassificationReference 作为分类符号,从而允许在交换结构中包含分类系统结构。

concept {
    IfcContext:HasAssociations -> IfcRelAssociatesClassification:RelatedObjects
    IfcContext:Phase -> IfcLabel_3
    IfcContext:ObjectType -> IfcLabel_4
    IfcContext:LongName -> IfcLabel_5
    IfcRelAssociatesClassification:RelatingClassification -> IfcClassification
    IfcClassification:Source -> IfcLabel_0
    IfcClassification:Name -> IfcLabel_1
    IfcClassification:ReferenceTokens -> IfcIdentifier_0
    IfcClassification:HasReferences -> IfcClassificationReference_0:ReferencedSource
    IfcClassificationReference_0:HasReferences -> IfcClassificationReference_1:ReferencedSource
    IfcClassificationReference_0:Identification -> IfcIdentifier_1
    IfcClassificationReference_0:Name -> IfcLabel_2
    IfcClassificationReference_0:Description -> IfcText
    IfcClassificationReference_0:Sort -> IfcIdentifier_2
    IfcClassification:Source[binding="ClassificationSource"]
    IfcClassification:Name[binding="ClassificationName"]
    IfcClassification:ReferenceTokens[binding="ReferenceTokens"]
}
Project Context General

所有项目数据集都应包含一个 IfcProject 实例,指示总体上下文和其中包含的对象目录。上下文定义可能包括:

  • 默认单位
  • 形状表示的几何表示上下文
  • 项目坐标系统的全局定位
  • 对使用的分类系统或其他外部信息源的引用
  • 项目上下文中使用的对象类型和属性模板的注册表
concept {
    IfcContext:LongName -> IfcLabel_0
    IfcContext:ObjectType -> IfcLabel_1
    IfcContext:Phase -> IfcLabel_2
}
Project Document Information General

项目可以定义外部文档,这些文档可用于将任意信息附加到同一项目或引用项目中的对象。

concept {
    IfcContext:HasAssociations -> IfcRelAssociatesDocument:RelatedObjects
    IfcContext:Phase -> IfcLabel_1
    IfcContext:ObjectType -> IfcLabel_2
    IfcContext:LongName -> IfcLabel_3
    IfcRelAssociatesDocument:RelatingDocument -> IfcDocumentInformation
    IfcRelAssociatesDocument:RelatingDocument -> IfcDocumentReference
    IfcDocumentInformation:Location -> IfcURIReference
    IfcDocumentInformation:ElectronicFormat -> IfcIdentifier
    IfcDocumentInformation:Identification -> IfcIdentifier
    IfcDocumentInformation:Name -> IfcLabel_0
    IfcDocumentInformation:Description -> IfcText
}
Project Library Information General

项目可以定义包含项目修订版的库,例如模型服务器或数据库。可以引用多个库来指示多个修订版、多个分支和/或多个服务器。

如果提供了 IfcLibraryInformation,则必须可以使用以下值检索项目(前提是用户具有访问权限):

IfcLibraryInformation HTTP Header 描述
Location / 用于检索(或更新)内容类型中指定项目的完整限定URL
Version ETag 用于限定特定版本的版本戳,格式为服务器特定格式,可以按顺序排序进行比较
VersionDate Last-Modified 服务器上记录的文件UTC日期和时间
Publisher (username) 提交项目修订版的帐户句柄由 IfcPersonIdentification 标识
表 5.1.3.3.C

在检索或更新此类数据(在获得访问权限的情况下)时,服务器可能支持以下标准HTTP操作(除了任何扩展操作):

HTTP 描述
OPTIONS 确定可用的HTTP操作。
HEAD 在不下载项目的情况下确定项目的最新版本。
GET 下载项目的最新版本(或提供ETag的特定版本)。
PUT 替换项目,清除任何版本历史记录。服务器可能会拒绝或以其他方式修改提交的内容。
POST 上传项目的新版本,附加到版本历史记录。服务器可能会拒绝、合并或以其他方式修改提交的内容。
DELETE 删除项目。
表 5.1.3.3.D

服务器可能支持以下标准MIME类型(除了专有格式)用于上传和下载数据,用于HTTP Accept头:

MIME Type Format
application/xml IFC-XML
application/step IFC-SPF
表 5.1.3.3.E
concept {
    IfcContext:HasAssociations -> IfcRelAssociatesLibrary:RelatedObjects
    IfcContext:Phase -> IfcLabel_2
    IfcContext:ObjectType -> IfcLabel_3
    IfcContext:LongName -> IfcLabel_4
    IfcRelAssociatesLibrary:RelatingLibrary -> IfcLibraryInformation
    IfcLibraryInformation:Version -> IfcLabel_0
    IfcLibraryInformation:Publisher -> IfcPersonAndOrganization
    IfcLibraryInformation:VersionDate -> IfcDateTime
    IfcLibraryInformation:Location -> IfcURIReference
    IfcLibraryInformation:Description -> IfcText
    IfcLibraryInformation:Name -> IfcLabel_1
    IfcPersonAndOrganization:ThePerson -> IfcPerson
    IfcPerson:Identification -> IfcIdentifier
}
Project Representation Context 3D General

为3D表示创建的主要几何表示上下文,可以使用几何表示子上下文进一步细化以适应特定的3D上下文。

concept {
    IfcContext:RepresentationContexts -> IfcGeometricRepresentationContext
    IfcContext:Phase -> IfcLabel_5
    IfcContext:ObjectType -> IfcLabel_6
    IfcContext:LongName -> IfcLabel_7
    IfcGeometricRepresentationContext:ContextIdentifier -> IfcLabel_0
    IfcGeometricRepresentationContext:ContextType -> IfcLabel_1
    IfcGeometricRepresentationContext:CoordinateSpaceDimension -> IfcDimensionCount
    IfcGeometricRepresentationContext:WorldCoordinateSystem -> IfcAxis2Placement3D
    IfcGeometricRepresentationContext:TrueNorth -> IfcDirection_2
    IfcGeometricRepresentationContext:HasSubContexts -> IfcGeometricRepresentationSubContext_0:ParentContext
    IfcGeometricRepresentationContext:HasSubContexts -> IfcGeometricRepresentationSubContext_1:ParentContext
    IfcDimensionCount -> constraint_0
    constraint_0[label="=3"]
    IfcAxis2Placement3D:Location -> IfcCartesianPoint
    IfcAxis2Placement3D:Axis -> IfcDirection_0
    IfcAxis2Placement3D:RefDirection -> IfcDirection_1
    IfcGeometricRepresentationSubContext_0:TargetScale -> IfcPositiveRatioMeasure
    IfcGeometricRepresentationSubContext_0:TargetView -> IfcGeometricProjectionEnum
    IfcGeometricRepresentationSubContext_0:UserDefinedTargetView -> IfcLabel_2
    IfcGeometricRepresentationSubContext_0:ContextIdentifier -> IfcLabel_3
    IfcGeometricRepresentationSubContext_0:ContextType -> IfcLabel_4
    IfcGeometricRepresentationContext:ContextIdentifier[binding="ContextIdentifier"]
    IfcGeometricRepresentationContext:ContextType[binding="ContextType"]
    IfcGeometricRepresentationSubContext_0:ContextIdentifier[binding="SubContextIdentifier"]
    IfcGeometricRepresentationSubContext_0:ContextType[binding="SubContextType"]
}
Project Template Definitions General

属性集模板的声明,包括用作属性定义的属性模板。此类模板定义了适用的属性、它们的名称、描述、度量类型和属性类型(单个、枚举、有界列表或表值)。

concept {
    IfcContext:Declares -> IfcRelDeclares:RelatingContext
    IfcContext:Phase -> IfcLabel_4
    IfcContext:ObjectType -> IfcLabel_5
    IfcContext:LongName -> IfcLabel_6
    IfcRelDeclares:RelatedDefinitions -> IfcPropertySetTemplate
    IfcPropertySetTemplate:TemplateType -> IfcPropertySetTemplateTypeEnum
    IfcPropertySetTemplate:ApplicableEntity -> IfcIdentifier
    IfcPropertySetTemplate:HasPropertyTemplates -> IfcSimplePropertyTemplate
    IfcSimplePropertyTemplate:TemplateType -> IfcSimplePropertyTemplateTypeEnum
    IfcSimplePropertyTemplate:PrimaryMeasureType -> IfcLabel_0
    IfcSimplePropertyTemplate:SecondaryMeasureType -> IfcLabel_1
    IfcSimplePropertyTemplate:Enumerators -> IfcPropertyEnumeration
    IfcSimplePropertyTemplate:AccessState -> IfcStateEnum
    IfcSimplePropertyTemplate:PrimaryUnit -> IfcUnit_0
    IfcSimplePropertyTemplate:SecondaryUnit -> IfcUnit_1
    IfcSimplePropertyTemplate:Expression -> IfcLabel_3
    IfcPropertyEnumeration:Name -> IfcLabel_2
    IfcPropertyEnumeration:EnumerationValues -> IfcValue
    IfcRelDeclares:RelatedDefinitions[binding="Type"]
}
Project Type Definitions General

在项目上下文中,声明了对象类型,例如此项目中由实例使用的构件类型。它提供了所有对象类型的目录,无论它们在哪里被实例使用。

concept {
    IfcContext:Declares -> IfcRelDeclares:RelatingContext
    IfcContext:Phase -> IfcLabel_0
    IfcContext:ObjectType -> IfcLabel_1
    IfcContext:LongName -> IfcLabel_2
    IfcRelDeclares:RelatedDefinitions -> IfcTypeObject
    IfcRelDeclares:RelatedDefinitions[binding="RelatedTypes"]
}
Revision Control General

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

Software Identity General

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

表 5.1.3.3.B

5.1.3.3.5 形式化表示(Formal representation)

ENTITY IfcContext
 ABSTRACT SUPERTYPE OF (ONEOF
	(IfcProject
	,IfcProjectLibrary))
 SUBTYPE OF (IfcObjectDefinition);
	ObjectType : OPTIONAL IfcLabel;
	LongName : OPTIONAL IfcLabel;
	Phase : OPTIONAL IfcLabel;
	RepresentationContexts : OPTIONAL SET [1:?] OF IfcRepresentationContext;
	UnitsInContext : OPTIONAL IfcUnitAssignment;
 INVERSE
	IsDefinedBy : SET [0:?] OF IfcRelDefinesByProperties FOR RelatedObjects;
	Declares : SET [0:?] OF IfcRelDeclares FOR RelatingContext;
END_ENTITY;

5.1.3.3.6 参考文献