![]()  | Bezug | 
![]()  | Reference | 
![]()  | Référence | 
| Item | SPF | XML | Change | Description | IFC2x3 to IFC4 4.0.0.0 | 
|---|---|---|---|---|
| IfcReference | ADDED | IFC4 Addendum 1 4.0.1.0 | ||
| IfcReference | ||||
| ListPositions | MODIFIED | Type changed from INTEGER to IfcInteger.  | IFC2x3 to IFC4 4.0.0.0 | |
| IfcReference | ADDED | IFC4 Addendum 1 4.0.1.0 | ||
| IfcReference | ||||
| ListPositions | MODIFIED | Type changed from INTEGER to IfcInteger.  | 
This entity is used to refer to a value of an attribute on an instance. It may refer to the value of a scalar attribute or a value within a collection-based attribute. Referenced attributes may be direct values, object references, collections, inverse object references, and inverse collections. References may be chained to form a path of object-attribute references.
| # | Attribute | Type | Cardinality | Description | G | 
|---|---|---|---|---|---|
| 1 | TypeIdentifier | IfcIdentifier | ? | 
Optional identifier of the entity or type such as 'IfcMaterialLayerSet'. For entity, type, or select-based references within a collection, this resolves the reference to such type.
If omitted, the type is assumed to be the same as the declared referencing attribute.
EXAMPLE IfcRelAssociatesMaterial.RelatingMaterial may be resolved to IfcMaterialLayerSet.  | X | 
| 2 | AttributeIdentifier | IfcIdentifier | ? | Optionally identifies a direct or inverse attribute within an entity such as 'MaterialLayers'. If TypeIdentifier is specified and refers to an entity, the attribute must exist within the referenced entity. A null value indicates a reference to the type or entity itself, such as for indicating that the type of a value must match a specified constraint. | X | 
| 3 | InstanceName | IfcLabel | ? | 
Optionally identifies an instance within a collection according to name.  If the instance has an attribute called 'Name', such attribute is used for comparison; otherwise the first STRING-based attribute of the entity is used.
EXAMPLE IfcRoot-based entities such as IfcPropertySet use the Name attribute; IfcRepresentation entities use the RepresentationIdentifier attribute.  | X | 
| 4 | ListPositions | IfcInteger | ? L[1:?] | Optionally identifies an instance within a collection according to position starting at 1. For referencing single-level collections, this attribute contains a single member; for referencing multi-level collections, then this LIST attribute contains multiple members starting from the outer-most index. | X | 
| 5 | InnerReference | IfcReference | ? | 
Optional reference to an inner value for ENTITY, SELECT, SET, or LIST attributes.
A path may be formed by linking IfcReference instances together.
EXAMPLE A material layer thickness may be referenced using several instances: #1=IFCREFERENCE($,'IfcSlab','HasAssociations',#2); #2=IFCREFERENCE($,'IfcMaterialLayerSet','MaterialLayers',#3); #3=IFCREFERENCE('Core','IfcMaterialLayer','LayerThickness',$);  | X | 
| # | Attribute | Type | Cardinality | Description | G | 
|---|---|---|---|---|---|
| IfcReference | |||||
| 1 | TypeIdentifier | IfcIdentifier | ? | 
Optional identifier of the entity or type such as 'IfcMaterialLayerSet'. For entity, type, or select-based references within a collection, this resolves the reference to such type.
If omitted, the type is assumed to be the same as the declared referencing attribute.
EXAMPLE IfcRelAssociatesMaterial.RelatingMaterial may be resolved to IfcMaterialLayerSet.  | X | 
| 2 | AttributeIdentifier | IfcIdentifier | ? | Optionally identifies a direct or inverse attribute within an entity such as 'MaterialLayers'. If TypeIdentifier is specified and refers to an entity, the attribute must exist within the referenced entity. A null value indicates a reference to the type or entity itself, such as for indicating that the type of a value must match a specified constraint. | X | 
| 3 | InstanceName | IfcLabel | ? | 
Optionally identifies an instance within a collection according to name.  If the instance has an attribute called 'Name', such attribute is used for comparison; otherwise the first STRING-based attribute of the entity is used.
EXAMPLE IfcRoot-based entities such as IfcPropertySet use the Name attribute; IfcRepresentation entities use the RepresentationIdentifier attribute.  | X | 
| 4 | ListPositions | IfcInteger | ? L[1:?] | Optionally identifies an instance within a collection according to position starting at 1. For referencing single-level collections, this attribute contains a single member; for referencing multi-level collections, then this LIST attribute contains multiple members starting from the outer-most index. | X | 
| 5 | InnerReference | IfcReference | ? | 
Optional reference to an inner value for ENTITY, SELECT, SET, or LIST attributes.
A path may be formed by linking IfcReference instances together.
EXAMPLE A material layer thickness may be referenced using several instances: #1=IFCREFERENCE($,'IfcSlab','HasAssociations',#2); #2=IFCREFERENCE($,'IfcMaterialLayerSet','MaterialLayers',#3); #3=IFCREFERENCE('Core','IfcMaterialLayer','LayerThickness',$);  | X | 
 <xs:element name="IfcReference" type="ifc:IfcReference" substitutionGroup="ifc:Entity" nillable="true"/>
 <xs:complexType name="IfcReference">
  <xs:complexContent>
   <xs:extension base="ifc:Entity">
    <xs:sequence>
     <xs:element name="InnerReference" type="ifc:IfcReference" nillable="true" minOccurs="0"/>
    </xs:sequence>
    <xs:attribute name="TypeIdentifier" type="ifc:IfcIdentifier" use="optional"/>
    <xs:attribute name="AttributeIdentifier" type="ifc:IfcIdentifier" use="optional"/>
    <xs:attribute name="InstanceName" type="ifc:IfcLabel" use="optional"/>
    <xs:attribute name="ListPositions" use="optional">
     <xs:simpleType>
      <xs:restriction>
       <xs:simpleType>
        <xs:list itemType="ifc:IfcInteger"/>
       </xs:simpleType>
      </xs:restriction>
     </xs:simpleType>
    </xs:attribute>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
ENTITY IfcReference;
  TypeIdentifier : OPTIONAL IfcIdentifier;
  AttributeIdentifier : OPTIONAL IfcIdentifier;
  InstanceName : OPTIONAL IfcLabel;
  ListPositions : OPTIONAL LIST [1:?] OF IfcInteger;
  InnerReference : OPTIONAL IfcReference;
END_ENTITY;
  References: IfcMetric
IfcReference
IfcMetricValueSelect
IfcAppliedValueSelect
IfcTableColumn