The MaRDI File Format

The MaRDI File Format: A FAIR File Format for Mathematical Software

This website has two complementary roles. It documents the file format itself, including terminology, structure, and profile-specific encodings, and it also collects a rosetta stone of worked examples that show how concrete mathematical objects are serialized in practice. See also the orginal paper on the subject and the format specification in the references below.

The format is JSON-based, but its semantics are intentionally tied to explicit namespaces and software versions. That keeps the container format stable while allowing mathematical software systems and their serializations to evolve over time.

This is the format currently used by OSCAR; see also the Oscar.jl repository.

References

  1. Della Vecchia, A., Joswig, M., Lorenz, B.: A FAIR File Format for Mathematical Software. In: Mathematical Software – ICMS 2024, LNCS vol. 14749, Springer (2024). doi:10.1007/978-3-031-64529-7_25 | arXiv:2309.00465

  2. Della Vecchia, A., Joswig, M., Lorenz, B.: The mrdi File Format Specification, v1.0.0. Zenodo (2024). doi:10.5281/zenodo.12723387

The specification Read the file-level rules, terminology, profile/version notes, and type pages. The rosetta stone Browse concrete examples, generation code, and emitted `.mrdi` payloads.

What this site covers

The specification pages fix terminology explicitly. In particular, this site uses data type for the value named by _type, payload for the value under data, and profile for a namespace-specific encoding contract.

Start here