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

20252453-T-424 项目

8.16.3.13 IfcPropertyTableValue(属性表值)

8.16.3.13.1 语义定义(Semantic definition)

IfcPropertyTableValue 是一种属性,其值范围由具有两个(数值或描述性)值列表的属性对象定义。这些值指定了一个包含两列的表格。定义值提供第一列并为定义值(第二列)建立范围。可选的 Expression 属性可以给出用于推导范围值的方程,但这仅用于提供信息。

IfcPropertyTableValue 定义了一个定义/被定义属性值组合,其中给出了属性名称、包含定义值和被定义值的表格及其度量类型(以及可选的用于定义值和被定义值的单位)。

单位由 DefiningUnitDefinedUnit 属性处理,参见表 8.16.3.13.A 中的表格值属性示例:

  • 如果未给出 DefiningUnitDefinedUnit 属性,则单位已由 IfcMeasureValueIfcDerivedMeasureValue 的类型隐含。关联的单位可以在项目级别全局定义的 IfcUnitAssignment 中找到(IfcProject.UnitsInContext)。
  • 如果给出了 DefiningUnitDefinedUnit 属性,则单位属性所分配的单位将覆盖全局分配的单位。

IfcPropertyTableValue 允许为属性描述指定一个定义值/被定义值对的表格。可选属性 CurveInterpolation 允许确定两个给定值之间的区间插值方式。

名称 定义值 定义值类型(通过 IfcValue 被定义值 被定义值类型(通过 IfcValue 定义单位 被定义单位
声音传输损失 100 IfcFrequencyMeasure 20 IfcNumericMeasure - dB
200 IfcFrequencyMeasure 42 IfcNumericMeasure
400 IfcFrequencyMeasure 46 IfcNumericMeasure
800 IfcFrequencyMeasure 56 IfcNumericMeasure
1600 IfcFrequencyMeasure 60 IfcNumericMeasure
3200 IfcFrequencyMeasure 65 IfcNumericMeasure
表 8.16.3.13.A — 包含值、度量类型和单位的表格值属性

非正式命题

  1. DefinedValues 列表和 DefiningValues 列表是对应的列表。

8.16.3.13.2 实体继承(Entity inheritance)

8.16.3.13.3 特性(Attributes)

# 特性(Attributes) 类型(Type) 描述(Description)
IfcPropertyAbstraction (1)
HasExternalReferences SET [0:?] OF IfcExternalReferenceRelationship FOR RelatedResourceObjects

引用与属性定义相关联的外部引用,例如库、分类或文档信息。

IfcProperty (8)
1 Name IfcIdentifier

此属性的名称。该标签是定义属性语义含义的重要名称字符串。

2 Specification OPTIONAL IfcText

指向具有语义定义或解释性文本位置的URI引用,用于说明该属性。

PartOfPset SET [0:?] OF IfcPropertySet FOR HasProperties

通过该属性被引用的_IfcPropertySet_的引用。

PropertyForDependance SET [0:?] OF IfcPropertyDependencyRelationship FOR DependingProperty

其他属性的值所依赖的属性。

PropertyDependsOn SET [0:?] OF IfcPropertyDependencyRelationship FOR DependantProperty

该属性的值所依赖的相关属性。

PartOfComplex SET [0:?] OF IfcComplexProperty FOR HasProperties

包含该_IfcProperty_的_IfcComplexProperty_的引用。

HasConstraints SET [0:?] OF IfcResourceConstraintRelationship FOR RelatedResourceObjects

用户定义的属性约束。

HasApprovals SET [0:?] OF IfcResourceApprovalRelationship FOR RelatedResourceObjects

用户定义的属性审批。

点击显示 9 个隐藏的继承特性 点击隐藏 9 个继承特性
IfcPropertyTableValue (6)
3 DefiningValues OPTIONAL LIST [1:?] OF UNIQUE IfcValue

List of defining values, which determine the defined values. This list shall have unique values only.

4 DefinedValues OPTIONAL LIST [1:?] OF IfcValue

适用于由定义值定义的范围的被定义值。

5 Expression OPTIONAL IfcText

用于从定义值推导被定义值的表达式,该表达式仅用于提供信息,即不能期望从该表达式进行自动处理。

6 DefiningUnit OPTIONAL IfcUnit

定义值的单位,如果未给出,则使用度量类型(由定义值的 TYPE 给出)的默认值,该默认值由 IfcProject 处的全局单位分配定义。

7 DefinedUnit OPTIONAL IfcUnit

被定义值的单位,如果未给出,则使用度量类型(由被定义值的 TYPE 给出)的默认值,该默认值由 IfcProject 处的全局单位分配定义。

8 CurveInterpolation OPTIONAL IfcCurveInterpolationEnum

提供的两个定义值和被定义值之间的曲线插值方式。如果未提供,则假定为线性插值。

表 8.16.3.13.B

8.16.3.13.4 形式化命题(Formal propositions)

名称(Name) 描述(Description)
WR21

无可用描述

(NOT(EXISTS(DefiningValues)) AND NOT(EXISTS(DefinedValues)))
OR (SIZEOF(DefiningValues) = SIZEOF(DefinedValues))
WR22

如果提供了 DefiningValues,则 DefiningValues 列表中的所有值应具有相同的度量类型。

NOT(EXISTS(DefiningValues)) OR 
(SIZEOF(QUERY(temp <* SELF.DefiningValues | TYPEOF(temp) <> TYPEOF(SELF.DefiningValues[1])
)) = 0)
WR23

如果提供了 DefinedValues,则 DefinedValues 列表中的所有值应具有相同的度量类型。

NOT(EXISTS(DefinedValues)) OR 
(SIZEOF(QUERY(temp <* SELF.DefinedValues | TYPEOF(temp) <> TYPEOF(SELF.DefinedValues[1])
)) = 0)
表 8.16.3.13.C

8.16.3.13.5 形式化表示(Formal representation)

ENTITY IfcPropertyTableValue
 SUBTYPE OF (IfcSimpleProperty);
	DefiningValues : OPTIONAL LIST [1:?] OF UNIQUE IfcValue;
	DefinedValues : OPTIONAL LIST [1:?] OF IfcValue;
	Expression : OPTIONAL IfcText;
	DefiningUnit : OPTIONAL IfcUnit;
	DefinedUnit : OPTIONAL IfcUnit;
	CurveInterpolation : OPTIONAL IfcCurveInterpolationEnum;
 WHERE
	WR21 : (NOT(EXISTS(DefiningValues)) AND NOT(EXISTS(DefinedValues)))
OR (SIZEOF(DefiningValues) = SIZEOF(DefinedValues));
	WR22 : NOT(EXISTS(DefiningValues)) OR 
(SIZEOF(QUERY(temp <* SELF.DefiningValues | TYPEOF(temp) <> TYPEOF(SELF.DefiningValues[1])
)) = 0);
	WR23 : NOT(EXISTS(DefinedValues)) OR 
(SIZEOF(QUERY(temp <* SELF.DefinedValues | TYPEOF(temp) <> TYPEOF(SELF.DefinedValues[1])
)) = 0);
END_ENTITY;

8.16.3.13.6 参考(References)