Class Ifc4::IfcIdentifier

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Derived Type

Class Documentation

class Ifc4::IfcIdentifier : public IfcUtil::IfcBaseType

Definition from ISO/CD 10303-41:1992: An identifier is an alphanumeric string which allows an individual thing to be identified. It may not provide natural-language meaning.

Type: STRING of up to 255 characters

NOTE Corresponding STEP name: identifier, please refer to ISO/IS 10303-41 for the final definition of the formal standard.

HISTORY New type in IFC Release 2x. IFC 2x4 CHANGE: Previously recommended size restriction of 255 characters is now mandatory.

As a merely machine-readable string for identification purposes, an identifier is usually machine-generated and locale-independent (in contrast to human-readable labels, IfcLabel).

Per ISO 10303-11, the set of characters that may appear in STRINGs is defined in ISO 10646. The encoding of characters in case of file-based exchange is defined in ISO 10303-21 (STEP physical files) and ISO 10303-28 (XML files). Among else, these specifications define the encoding of 8-bit characters from ISO 8859-1…-16 and of 2-byte Unicode characters.

Note that while IfcIdentifier is restricted to 255 characters, the size in exchange files after encoding may be considerably larger than 255 octets, depending on the particular encoding and on the contents of the identifier.

Subclassed by Ifc4::IfcLanguageId

Public Functions

const IfcParse::type_declaration &declaration() const
IfcIdentifier(IfcEntityInstanceData *e)
IfcIdentifier(std::string v)
operator std::string() const

Public Static Functions

const IfcParse::type_declaration &Class()