IfcReference

Natural language names
deBezug
enReference
frRéférence
Change log
ItemSPFXMLChangeDescription
IFC2x3 to IFC4
    IfcReferenceADDED
IFC4 to IFC4 ADD1
    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 B
1TypeIdentifierIfcIdentifier[0:1] 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[0:1] 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
3InstanceName- This attribute is out of scope for this model view definition and shall not be set.
4ListPositions- This attribute is out of scope for this model view definition and shall not be set.
5InnerReferenceIfcReference[0:1] 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
#AttributeTypeCardinalityDescriptionB
IfcReference
1TypeIdentifierIfcIdentifier[0:1] 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[0:1] 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
3InstanceName- This attribute is out of scope for this model view definition and shall not be set.
4ListPositions- This attribute is out of scope for this model view definition and shall not be set.
5InnerReferenceIfcReference[0:1] 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
XSD 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:extension>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcReference;
  TypeIdentifier : OPTIONAL IfcIdentifier;
  AttributeIdentifier : OPTIONAL IfcIdentifier;
  InstanceName : OPTIONAL IfcStrippedOptional;
  ListPositions : OPTIONAL LIST [1:?] OF IfcStrippedOptional;
  InnerReference : OPTIONAL IfcReference;
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

Link to this page  Link to this page