void save(Archive & ar, const posix_time::ptime& pt, unsigned int /*version*/) { // from_iso_string does not include fractional seconds // therefore date and time_duration are used typename posix_time::ptime::date_type d = pt.date(); ar & make_nvp("ptime_date", d); if(!pt.is_special()) { typename posix_time::ptime::time_duration_type td = pt.time_of_day(); ar & make_nvp("ptime_time_duration", td); } }