(* demexp.mli *) type participant_kind = Individual | Delegate type participant = { kind : participant_kind; login : string; password : string; groups : string list; } type response = { r_id : int; r_desc : string; r_author : string; r_links : string list; } type vote = { voter : int; choices : int list; } type question = { q_desc : string; q_author : string; limit_date : string; responses : response list; votes : vote list; elected : int list; } type tag = string ;; type xml_content = { version : string; participants : (int * participant) array; tags : (int * tag) array; questions : (int * question) array; } val load_xml_demexp_participants: string -> (int * participant) array val load_xml_demexp_tags: string -> (int * tag) array val load_xml_demexp_questions: string -> (int * question) array val load_xml_demexp: string -> xml_content