HDTree Meta-Format Definition
HDTree is a specific metaformat on top of a HDF5 Group.
The tree has a few HDF5 attributes of its own to help interface.
__size__
: the number of entries in the tree__version__
: the version of the HDTree meta-format__api__
: the API that was used to write the HDTree__api_version__
: the version of that API
Besides these attributes, all child groups of the tree are the branches. Each branch can have an arbitrary number of child branches itself.
Each branch has a two attributes
__type__
: the name of the type of this branch__version__
: the version of the type
A variable-length container is "flattened" into two sub-branches:
__size__
: is a branch storing the successive sizes of the containersdata
: is a branch storing the entries in the containers
Similarly, a variable-length mapping is flattened into three sub-branches:
__size__
: is a branch storing the successive sizes of the mappingskeys
: is a branch storing the keys in the mappingsvals
: is a branch storing the values in the mappings
The recursive process of sub-branching continues until atomic1 data types are reached. Which are the only actual HDF5 DataSets. They are stored in chunked and compressed one dimensional DataSets.
1
booleans, integers, floats, and strings