diff --git a/data/grampsxml.dtd b/data/grampsxml.dtd index df8141ef8..b55ef1350 100644 --- a/data/grampsxml.dtd +++ b/data/grampsxml.dtd @@ -379,26 +379,32 @@ SHARED ELEMENTS --> diff --git a/src/plugins/ExportXml.py b/src/plugins/ExportXml.py index d313d486d..319e51562 100644 --- a/src/plugins/ExportXml.py +++ b/src/plugins/ExportXml.py @@ -822,8 +822,9 @@ class GrampsDbXmlWriter(UpdateCallback): d1 = self.get_iso_date(date.get_start_date()) d2 = self.get_iso_date(date.get_stop_date()) if d1 != "" or d2 != "": - self.g.write('%s<%s start="%s" stop="%s"%s%s/>\n' - % (sp,tagname,d1,d2,qual_str,calstr)) + self.g.write('%s<%s start="%s" stop="%s"%s%s%s%s/>\n' + % (sp,tagname,d1,d2,qual_str,calstr, + dualdated_str, newyear_str)) elif mode != gen.lib.Date.MOD_TEXTONLY: date_str = self.get_iso_date(date.get_start_date()) if date_str == "": diff --git a/src/plugins/ImportXml.py b/src/plugins/ImportXml.py index ff698903a..c0a6d3406 100644 --- a/src/plugins/ImportXml.py +++ b/src/plugins/ImportXml.py @@ -1752,9 +1752,20 @@ class GrampsParser(UpdateCallback): else: qual = gen.lib.Date.QUAL_NONE + dualdated = False + if 'dualdated' in attrs: + val = attrs['dualdated'] + if val == "1": + dualdated = True + + newyear = gen.lib.Date.NEWYEAR_JAN1 + if 'newyear' in attrs: + newyear = int(attrs['newyear']) + date_value.set(qual, mode, cal, - (day, month, year, False, rng_day, - rng_month, rng_year, False)) + (day, month, year, dualdated, + rng_day, rng_month, rng_year, dualdated), + newyear=newyear) def start_dateval(self, attrs): if self.source_ref: