Halfive Document Specification (The encoding format of H5T and H5NET)

Copyright Nomagno 2021-2023

Copying and distribution of this work, with or without modification, are permitted in any medium without royalty, provided the copyright notice and this notice are preserved. This work is offered as-is, without any warranty.

It is recommended to use the “.h5doc” extension for H5DOC documents (where applicable). H5DOC is identified by the MIME type text/x-h5doc

H5DOC is a simple storage format for slightly nested data


The relationships between data are determined by three bytes:

The types of elements are determined by these rules:


Example:

_SUPER_SECTION
    first_key 1 6 !k
    _SUB_SECTION
        second_key
_SECOND_SUPER_SECTION

Same document, but encoded with newline marked as '\n' and horizontal tab marked as '\t':

_SUPER_SECTION\n\tfirst_key 1 6 !k\n\t_SUB_SECTION\n\t\tsecond_key\n_SECOND_SUPER_SECTION

’_SUPER_SECTION’ is a section that contains a key ‘first_key’, (with values ‘1’, ‘2’ and ‘!k’) and another section ’_SUB_SECTION’, which contains a key without values ‘second_key’. After ’_SUPER_SECTION’, there is ’_SECOND_SUPER_SECTION’, an empty section