HDF5 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.
| Dataset | dtype | Extreme value it carries |
|---|---|---|
| int8 | int8 | -128 and 127 |
| uint64 | uint64 | 18446744073709551615 (loses precision as a double) |
| int64 | int64 | -9223372036854775808 |
| float16 | float16 | ±65504, the half-precision maximum |
| float64 | float64 | ±1.7976931348623157e308 |
| complex128 | complex128 | 3.5 - 2.25j |
Specifications
- Datasets
- 12
- Dtypes
- int8..int64, uint8..uint64, float16/32/64, bool, complex128
- Values Each
- 5
- Includes Type Extremes
- true
- Uint64 Max
- 18446744073709551615
- Int64 Min
- -9223372036854775808
Testing contract
Expected to pass- Scenario
- Read every dataset and compare both the reported dtype and the exact extreme values against the declared type limits.
- Expected result
- uint64 returns 18446744073709551615 exactly and int64 returns -9223372036854775808 exactly; a reader that routes integers through a double returns 18446744073709551616 and fails here.
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 Numeric dtype Zoo — Every Width at Its Limits (.h5)” is a deterministic Novus Examples fixture for Scientific data, Serialization testing, Error handling. 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 · 11,264 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 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.

- binDICOM-Shaped Stream — No Preamble, No DICM Magic (.bin)The identical element stream with the 128-byte preamble and the DICM magic stripped, which is how DICOM often arrives out of a network transfer or a database blob column. It is not a conformant Part 10 file and its content is entirely recoverable, so a reader should fall back rather than reject.

- fitsFITS BLANK — Undefined Integer Pixels (.fits)Integer FITS images mark undefined pixels with the BLANK keyword, and BLANK is compared against the stored value before BZERO and BSCALE are applied. Scale first and the four undefined pixels turn into a perfectly plausible zero, which is the ordering bug this file exists to expose.

- fitsFITS Header-Only — Valid File With No Pixels (.fits)A completely valid FITS file consisting of one 2880-byte header block and no data unit, which the standard permits whenever NAXIS is 0. It separates readers that model the data array as optional from readers that treat 'no pixels' as corruption.

- fitsFITS Image — float32 with NaN and Inf Pixels (.fits)Single-precision FITS pixels including two NaNs, which is the only way the standard marks undefined data for floating BITPIX, plus one +Inf. Statistics computed without NaN-aware reductions come back as NaN for the entire frame.

- ncNetCDF _FillValue, missing_value and NaN Together (.nc)One variable that hides absent data three different ways at once: two _FillValue cells, one legacy missing_value cell and one raw NaN, with valid_min and valid_max also declared. Averaging the raw array without honouring all three gives roughly -60 K instead of a real mean.

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