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-32 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.

To clear a day, month, or year value, use the delete key rather than backspace.

Validating dates

Dates using an invalid combination of day, month, and year parts are underlined with a green squiggle.

Invalid dates   Invalid dates  

Fig 2. Invalid dates.

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 dates before the first era of the calendar, the convention is that the years count down towards zero. For example, in the Gregorian calendar 0002 BCE is followed by 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', 'or' (when an event is known to have happened on one of two possible dates) , 'to', and 'from' (to indicate a state or condition existed on each day from one given date to another).

Interpreting dates in historical documents

Dates in historical documents need careful interpretation, especially if the date of new year or the calendar in use at the time is different to what it is now.

Adoption of the Gregorian calendar

The Gregorian calendar was first introduced in 1582. It uses the same months as the Julian calendar but follows a different rule for leap years. Consequently, the Julian calendar is, as of 2019, offset 13 days from the Gregorian calendar.  Not all countries switched from the Julian to the Gregorian calendar at the same time.  When examining historical documents from 1582 onwards, great care must be taken to establish whether the day, month, and year in the document is referring to the Julian calendar or the Gregorian calendar.

Use the calendar drop down to record whether the date is using the Gregorian or Julian calendar.

The first day of the year

The first day of the year in both the Julian and Gregorian calendars is 1 January.  However, in some historical documents it was common practice to increment the new year on 25 March rather than 1 January (for example, pre-1752 English parish registers).  When examining historical documents in this period, great care must be taken to establish whether year in the document is referring to the year beginning 1 January or 25 March.

When entering years in the Gregorian and Julian calendars, the new year always begins on 1 January.  If the source date includes a dual year, enter the date parts and the year which started on 1 Jan.

If the date satisfies the conditions for dual year dates, and the source document used a dual year, you can check the "Dual year?" option to record this.

An example

Some historical documents record that the execution of Charles I of England took place on 30 Jan 1648.  At the time, England was using the Julian calendar and the new year in England began on 25 March rather than 01 January.  This means that 30 Jan refers to the day and month in the Julian calendar and the year 1648, began 9 months earlier, on 25 March.

To record this without ambiguity, you could use the 'interpreted' date type with which you can retain the original text of '30 Jan 1648' alongside the correct interpretation of this date: 30 Jan 1649 in the Julian calendar.  At a future time, the original text will be available in case the original interpretation was wrong and needs to be changed.

Interpreted date

Fig 3. Store the original text when interpreting ambiguous dates from historical text.

Date display calendar

Normally, a single calendar is used to display all dates throughout the application.  This is especially helpful if you are working with 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.

Date display formats

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 28 calendars covering all 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.

Observational calendars rely on the direct astronomical observations made by officials.  For dates in the future, local viewing conditions may lead to small discrepancies if a new moon falls within a few seconds of midnight.

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.  Dates outside these ranges can be input but will only be approximate.

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 4. Entering a text only date.