Fixture corpus
The data-driven conformance corpus. Each case shows its HAMON surface, the expected semantics, a realized score (music21 → Verovio) where the harmony is engravable, and the same label in every source encoding.
How to read this page. The loss is measured against each format's native capability —
what it can legitimately encode — not by smuggling the HAMON string into a text field.
In Native mode a format carries only its own constructs, so the analytical layer it can't
express (applied dominants, chord-scales, key context…) is genuinely lost. In Native + HAMON
mode we add a clearly-labelled out-of-band HAMON annotation (a comment, an MEI
<annot>, a sidecar field) that carries the full surface — so the loss drops to
zero, except in formats that have no such slot (Harte .lab, iReal), which
stay lossy. All of this is text, from the Python reference hamonpy + the
capability model in hamonpy/capability.py. The engraved score is illustrative only
(music21 → Verovio, CDN); when it can't render it is omitted — a display limitation,
not a HAMON loss.