DBF: dBase / xBase Table
The employee table as a dBase (DBF) file: the venerable xBase table format still emitted by GIS tools and legacy databases. For testing DBF readers and DBF→CSV conversion.
| idint64 | namestring | emailstring | departmentstring | activebool | scoredouble | joineddate |
|---|---|---|---|---|---|---|
| 1001 | Ada Lovelace | ada.lovelace@example.com | Engineering | true | 98.5 | 2021-03-01 |
| 1002 | Alan Turing | alan.turing@example.com | Research | true | 95 | 2020-06-15 |
| 1003 | Grace Hopper | grace.hopper@example.com | Engineering | false | 91.2 | 2019-11-20 |
| 1004 | Katherine Johnson | katherine.johnson@example.com | Operations | true | 96.8 | 2022-01-10 |
| 1005 | Edsger Dijkstra | edsger.dijkstra@example.com | Research | false | 89.4 | 2018-09-05 |
Specifications
- Rows
- 5
- Columns
- 7
- Format
- dBase III (DBF)
- Fields
- 6
Testing contract
Expected to pass- Scenario
- Exercise DBF: dBase / xBase Table in its binary workflow. The employee table as a dBase (DBF) file: the venerable xBase table format still emitted by GIS tools and legacy databases.
- Expected result
- 5 rows of 107 bytes, 6 fields; fields=ID:N, NAME:C, EMAIL:C, DEPT:C, ACTIVE:L, SCORE:N; deleted rows=0. Declared feature checks: columns=7; fields=6.
What is a .dbf file?
A dBASE table (.dbf) is a legacy binary tabular format with a fixed-width header describing columns (name, type, length) followed by fixed-length records. It persists today as the attribute table of GIS shapefiles and in legacy database exchange.
How to use this file
Use an example .dbf file to test dBASE/xBase readers, shapefile attribute parsing, and DBF-to-CSV conversion.
How to use this file for testing
“DBF: dBase / xBase Table” is a deterministic Testaroo fixture for Conversion testing. The same content exported across many formats and linked as a group, so you can convert one and diff against the expected twin.
Documented properties for this file: 5 rows · 6 fields · 7 columns. 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.
Data fixtures document their exact quirks (delimiters, encodings, null handling, schema, and row counts) in the spec table. Point your parser or importer at the file and assert it handles the documented edge cases; clean and deliberately-messy siblings make before/after diffs straightforward.
Generated by generation/data_binary.py. Free for any use, no attribution required, license.
Related files
- avroAvro: Row Binary + SchemaThe same records as Apache Avro: a compact row-based binary format that embeds its own schema, widely used in Kafka pipelines. For testing Avro decoders and schema evolution.

- bsonBSON: Binary JSON (MongoDB)The records as BSON: the binary-JSON encoding MongoDB stores documents in. For testing BSON decoders and JSON↔BSON conversion.

- cborCBOR: Concise Binary ObjectThe records as CBOR: the IETF concise binary object representation used in IoT and COSE/WebAuthn. For testing CBOR decoders and JSON↔CBOR conversion.

- featherFeather: Arrow IPC TableThe same table as Feather (Arrow IPC file): the zero-copy on-disk form of an Apache Arrow table. For testing Arrow readers and fast columnar interchange.

- h5HDF5: Hierarchical Scientific DataA small HDF5 file with a compound 'employees' dataset and a numeric 'readings' grid: the hierarchical format used across science and ML. For testing h5py/HDF5 readers and conversion.

- msgpackMessagePack: Binary JSONThe records as MessagePack: a compact binary serialization that maps onto the JSON data model, common in caches and RPC. For testing MessagePack codecs and JSON↔MessagePack conversion.
