The datatype message defines the datatype for each element of a dataset or a common datatype for sharing between multiple datasets. A datatype can describe an atomic type like a fixed- or floating-point type or more complex types like a C struct (compound datatype), array (array datatype), or C++ vector (variable-length datatype).
Datatype messages that are part Of a dataset Object Do Not describe how elements are related To one another; the dataspace message Is used For that purpose. Datatype messages that are part Of a committed datatype (formerly named datatype) message describe a common datatype that can be Shared by multiple datasets In the file.