type t = { url : string; doi : string option; cito : Cito.t list option; } let create ~url ?doi ?cito () = { url; doi; cito } let url t = t.url let doi t = t.doi let cito t = t.cito let equal a b = String.equal a.url b.url let pp ppf t = let open Format in fprintf ppf "%s" t.url; match t.doi with | Some d -> fprintf ppf " [DOI: %s]" d | None -> ()