Melange JSON could provide 2 features that I haven’t seen in other OCaml serialization libraries:
[@skip_serialize_if Option.is_none]
{ … extra: (string * Json.t) list } (type TBD) that contains a grab bag of the remaining fields we didn’t parse
These are present in Rust’s serde and allow a lot more use cases to be expressed.