DatesPrint button

Representing dates is an important part of genealogy.  Exact dates, date ranges, approximate dates, partial dates, and text dates are all supported.  By default dates are displayed in Gregorian calendar and in a format best suited to genealogy.

Date entry

To enter a date you must normally select the calendar era and input the day, month, and year in the date entry popup.  Additional fields are shown for some calendars e.g. the lunisolar calendars display a field for indicating leap months.

Single date

Fig 1. Entering a date.

Entering days, months, and years

The day can be any whole number between 1-31 or be left blank.  The month can be any valid month for the selected calendar.  You can type this as a number or by entering the first 3 characters of the start of the month name to use autocomplete.  The year can be any whole 4 digit number from 0001-9999 where this is supported in the current calendar era.

Calendar eras

Most calendars support two eras: the current era (CE) and before current era (BCE).  In general, localised forms are used e.g. the current era is Anno Hegirae (AH) in the Islamic calendar, Anno Domini (AD) in the Gregorian calendar, and Anno Mundi (AM) in the Hebrew calendar.  Users may also choose to use CE/BCE era naming when using the Gregorian, Swedish, Icelandic, or Julian calendars.  When entering BCE dates, the convention is that the years count up so 0002 BCE, 0001 BCE, 0001, 0002 and so on.  There is no 'year zero' in any of the supported calendars.

Input shortcuts

The day, month, and year fields support use of the up and down keys and the mouse wheel to quickly scroll through possible values.  To clear a value, use the delete key.  You can use the tab key to move to the next field.  The default date type and input calendar are 'Exact' and 'Gregorian' respectively - defaults for new dates can be set in the Options dialog.

Types of date

If the day, month and year are all known, an exact date can be entered.  If a date is partially known, it can still be entered using an exact date type - just input the parts which you know.  Alternatively, you can choose from 'approximate' (where not all parts are known), 'range' (to indicate an event happened on a single date between two dates), or 'span', 'to', and 'from' (to indicate a state or condition existed on each day from one given date to another).

Some dates may need to be interpreted from text.  A classic example is a the execution date of Charles I of England which took place on 30 Jan 1649 in the Julian calendar.  At the time, the year in England began on 25 March rather than 01 January so some historical texts would record the year as 1648 instead.  To record this without ambiguity, you could use the 'interpreted' date type with which you can retain the original text '30 Jan 1648' along side the correct interpretation of this date in the Julian calendar '30 Jan 1649'.  At a future time, the original text will be available incase the original interpretation was wrong and needs to be changed.

Interpreted date

Fig 2. Entering an interpreted date.

Unsupported calendars

You can enter a 'text only' representation of a date which cannot be represented in one of the supported calendars.  Invalid or ambiguous dates detected when importing GEDCOM files are also stored as 'text only' dates.

Text only date

Fig 3. Entering a text only date.

Date display calendar and display formats

Normally, a single calendar is used to display all dates throughout the application.  This is especially helpful if you are working source data in multiple calendars.  Dates can be entered in the original calendar but displayed according to your own preferred calendar, removing the need for you to make a conversion.  Of course, if you want to display dates in same calendar they were input, this option is available too.

The date display format for Gregorian dates can also be customised using the format codes in the following table.  Codes are case sensitive. Single quote marks should be used to escape instances of d, M, y, and G which are part of the format string but are not to be interpreted as date parts e.g. dd 'de' MMM 'de' yyyy G.

Format code Use
y Year.
yyyy = numeric year (minimum 4 digits)
M Month.
M = numeric month (minimum 1 digit)
MM = numeric month (minimum 2 digits)
MMM = abbreviated month name
MMMM = full month name
d Day.
d = numeric year (minimum 1 digit)
dd = numeric year (minimum 2 digits)
G Era.
G = full era name

Table 1. Date format codes.

See the Options dialog to change the date and calendar display settings.

Supported calendars

My Family Tree currently supports 23 calendars covering all of the most widely used of the world's calendars.  Except for the calendars listed in Table 2, the range of dates supported by each calendar covers the entire period of real world use of the calendar.

Calendar Type Minimum Maximum
Umm al-Qura Lunar observational 30 Apr 1900 13 May 2077
Chinese lunisolar Lunisolar observational 19 Feb 1901 31 Dec 2100
Japanese lunisolar Lunisolar observational 29 Jan 1873 31 Dec 2050
Korean lunisolar Lunisolar observational 19 Feb 0918 31 Dec 2050
Taiwan lunisolar Lunisolar observational 18 Feb 1912 31 Dec 2100
Vietnamese lunisolar   Lunisolar observational   09 Feb 1891   31 Dec 2100

Table 2. The minimum and maximum Gregorian dates supported by the lunar and lunisolar observational calendars in My Family Tree.