H5s must render the dataset descriptor must across the full range of complexity of the HDF5 dataset—everything from a null dataset to a simple scalar to one that utilizes the full dimensionalities of the HDF5 datatypes, dataspaces, and data storage specifications.
Putting It All Together
Using the datatype and dataspace glyphs, we can now compose a fully-qualified dataset, one where the dataspace,3 datatype,4 and data storage5 each have non-zero rank.
The Dataset Descriptor Visual Vocabulary
Visual indicator denoting the depth of the dataset in the HDF5 group hierarchy. When looking at the dataset in the context of the full graph view, the depth markers allow easy recognition of sibling data objects in a group.
When the dataset is a hard link, the hard link indicator goes here. We don't use a hard-link in our fully-qualified example, but here is how it is represented.
Composite portion of the dataset descriptor that shows the dataset glyph, the rank of its dataspace, and the dimensions of the dataspace.
Composite portion of the dataset descriptor that shows the datatype, its rank and its dimensions.
Composite showing the storage layout of the dataset, and if chunked storage is used, the rank and dimensions of the chunk, and the length of the filter pipeline if one is applied to the chunk. The dimensions of the chunk are appended as a suffix to the dataspace dimensions, as chunk storage cannot be determined independently of the dataspace dimensions.
Any named data object in HDF may have a comment associated with it. If so, we indicate it here with a comment bubble. HDF5 is a self-describing datastore, but a little human help is good too.
The size of the dataset as measured in size of data elements summed over the dataspace and the datatype. The size does not include data elements from nested composites.