HDF5 Deeply Nested Group Tree — Eight Levels (.h5)
Eight levels of nested groups, each holding a dataset whose values equal its own depth. Any tree walk that caps recursion depth or flattens names silently loses the lower levels, and the depth-valued arrays make that immediately visible.
| Field | Value |
|---|---|
| Depth | 8 nested groups |
| Datasets | one 'value' dataset at every level |
| Deepest path | /level1/level2/level3/level4/level5/level6/level7/level8/value |
| Path length | 62 characters |
| Attribute | each dataset carries its own depth as an attribute |
| Trap | recursion that flattens paths or caps depth loses the deepest values |
Specifications
- Depth
- 8
- Datasets Per Level
- 1
- Total Datasets
- 8
- Deepest Path
- /level1/level2/level3/level4/level5/level6/level7/level8/value
- Path Length
- 62
Testing contract
Expected to pass- Scenario
- Recursively enumerate every dataset and assert its values equal the number of group levels above it.
- Expected result
- Exactly eight datasets are found, the deepest is /level1/level2/level3/level4/level5/level6/level7/level8/value holding four copies of 8.0, and every dataset's depth attribute matches its position in the tree.
What is a .h5 file?
HDF5 (.h5) is a binary container format for large, heterogeneous scientific data. It stores multidimensional arrays (datasets) in a hierarchical group structure with attributes and chunked, compressed storage, and is standard in ML, physics, and geoscience.
How to use this file
Use an example .h5 file to test HDF5 readers (h5py, PyTables), group and dataset traversal, and attribute extraction.
How to use this file for testing
“HDF5 Deeply Nested Group Tree — Eight Levels (.h5)” is a deterministic Novus Examples fixture for Scientific data, Serialization testing. Citation catalogs (BibTeX, RIS), chemistry structures (MDL Molfile, PDB), and gridded binary data (NetCDF, FITS) — for testing reference managers, molecule viewers, and scientific-data loaders.
Documented properties for this file: H5 · 17,824 bytes. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Scientific fixtures are small, valid, and fully synthetic — no real organism, patient, sample, or observation. Point your parser or loader at the file and check it reads the documented records, variables, or headers; binary formats ship a readable twin or metadata listing for comparison.
Related files
- h5HDF5 Chunked + gzip + shuffle Filters (.h5)One array stored twice in the same file: chunked with the shuffle and gzip filters applied, and contiguous with no filters at all. Comparing the two proves a reader ran the HDF5 filter pipeline rather than reading raw chunk bytes.

- h5HDF5 Compound Record dtype — Mixed Field Types (.h5)A compound-dtype dataset mixing an integer key, two float measurements, a fixed-width byte string and a boolean flag in a single record. It is the fixture for readers that must map an HDF5 record type onto a native struct without reordering or repadding the fields.

- h5HDF5 Degenerate Shapes — Scalar, Zero-Length and Null (.h5)Five degenerate but entirely legal datasets — a rank-0 scalar, a zero-length vector, a (0, 5) array, a single-element vector and a NULL dataspace — plus an empty group. None of them is corrupt, and a reader that reports them as errors is the thing being tested.

- h5HDF5 Hard, Soft and Dangling Links (.h5)One array reachable under four names: itself, a hard link sharing its object address, a soft link resolved at access time, and a soft link pointing nowhere. A walker that counts names instead of object addresses reports four arrays and then crashes on the dangling one.

- h5HDF5 Numeric dtype Zoo — Every Width at Its Limits (.h5)Twelve datasets, one per numeric HDF5 type, each holding the extreme values of that type including the uint64 and int64 limits that do not survive a trip through a double. It is the fixture that exposes a reader which widens everything to float64 on the way in.

- h5HDF5 Strings — Fixed, Variable-Length and UTF-8 (.h5)Fixed-width byte strings, variable-length UTF-8 strings and UTF-8 attribute text in one file, including Greek, CJK and combining diacritics. HDF5 hands fixed-width strings back as padded bytes and variable-length ones as decoded text, and conflating the two is where string handling usually breaks.

Generated by generation/scientific.py. Free for any use, no attribution required — license.