IfcReference

Natural language names
Bezug
Reference
Référence
Change log
ItemSPFXMLChangeDescription
4.0.0.0
    IfcReferenceADDED
4.0.1.0
    IfcReference
      ListPositionsMODIFIEDType changed from INTEGER to IfcInteger.
Semantic definitions at the entity
Entity definition

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 definitions
#AttributeTypeCardinalityDescription G
1TypeIdentifierIfcIdentifier? 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
2AttributeIdentifierIfcIdentifier? 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
3InstanceNameIfcLabel? 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
4ListPositionsIfcInteger? 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
5InnerReferenceIfcReference? 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
Inherited definitions from supertypes
Entity inheritance
Attribute inheritance
#AttributeTypeCardinalityDescriptionG
IfcReference
1TypeIdentifierIfcIdentifier? 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
2AttributeIdentifierIfcIdentifier? 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
3InstanceNameIfcLabel? 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
4ListPositionsIfcInteger? 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
5InnerReferenceIfcReference? 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
Formal representations
XML Specification
 <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>
EXPRESS Specification
ENTITY IfcReference;
  TypeIdentifier : OPTIONAL IfcIdentifier;
  AttributeIdentifier : OPTIONAL IfcIdentifier;
  InstanceName : OPTIONAL IfcLabel;
  ListPositions : OPTIONAL LIST [1:?] OF IfcInteger;
  InnerReference : OPTIONAL IfcReference;
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

References  References: IfcMetric IfcReference IfcMetricValueSelect IfcAppliedValueSelect IfcTableColumn

Link to this page  Link to this page