#### 8.8.2.1 IfcGloballyUniqueId

An IfcGloballyUniqueId holds an encoded string identifier that is used to uniquely identify an IFC object. An IfcGloballyUniqueId is a Globally Unique Identifier (GUID) which is an auto-generated 128-bit number. Since this identifier is required for all IFC object instances, it is desirable to compress it to reduce overhead. The encoding of the base 64 character set is shown below:

> 1 2 3 4 5 6
> 0123456789012345678901234567890123456789012345678901234567890123
> "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_$";

The resulting string is a fixed 22 character length string to be exchanged within the IFC exchange file structure.

Refer to the BuildingSMART website (www.buildingsmart-tech.org) for more information and sample encoding algorithms.

> HISTORY New type in IFC1.5.1.

XSD Specification:

<xs:simpleType name="IfcGloballyUniqueId">
<xs:restriction base="xs:normalizedString">
<xs:minLength value="22"/>
<xs:maxLength value="22"/>
</xs:restriction>
</xs:simpleType>
<xs:element name="IfcGloballyUniqueId-wrapper" nillable="true">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="ifc:IfcGloballyUniqueId">
<xs:attributeGroup ref="ifc:instanceAttributes"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>

EXPRESS Specification:

TYPE IfcGloballyUniqueId = STRING (22) FIXED;
END_TYPE;

Link to this page