let xml_of_item i =
  Element (item_tag,
           (
            [
              att_title, i.item_title ;
              att_date, Tdl_date.format ~fmt: default_date_format i.item_date;
              att_state, string_of_state i.item_state ;
            ] @
            (match i.item_enddate with
              None -> []
            | Some d ->
                [att_enddate, Tdl_date.format ~fmt: default_date_format d]
            ) @
            (match i.item_id with
              None -> []
            | Some id -> [att_id, string_of_int id]
            )
           ),
           opt_element i.item_desc desc_tag
          )