How end dates are calculated

Internally, Aeon Timeline records events Start Dates and Duration, with the End Date calculated from those two values. This allows an event to retain the same duration as it is dragged around the timeline.

If you enter an end date, Aeon Timeline will calculate the necessary duration for the event to stretch from the start date to your entered end date, and will then store this value internally.

Subsequently changing the start date will cause the end date to be recalculated.

Event precision

Some events may be precise to a given year only, while others specify a date and time down to the exact second. There are several reasons you may want to do this:

  • An event may be a historic event where the exact date or time is unknown, only an approximate value such as a year.
  • An event may take place over an entire day, week, month, or year, so specifying more precise time doesn’t make sense.
  • A fiction writer may not need precision down to exact dates/times, in which case making up these values is an unnecessary distraction and clutters up the timeline with unnecessary information.

Aeon Timeline allows you to specify varying levels of precision for each event, so you can mix and match events that are specified to the second with events that only contain a year.

How event precision is calculated

The precision for an event will be determined by the maximum precision of the start date and duration that you enter.

For instance, if you enter a start date of 2012 and a duration of 3 years, Aeon Timeline will only display year information on the timeline (i.e. 2012-2014).

Conversely, if you enter 2012 and 2 months, the event precision is now months, and a date value of January – February 2012 will be shown instead.

How imprecise events are displayed

Although more precise date information is not displayed on the timeline, the event still must be positioned on the timeline relative to other events. Aeon Timeline uses the following rules to determine where an event should be displayed:

Start Dates

  • If time is not specified, default to the beginning of the specified day (represented as 00:00:00).
  • If the day of the month is not specified, default to the beginning of the month.
  • If the month is not specified, default to the beginning of the year.

End Dates

  • If the time is not specified, default to the end of the day (represented as 24:00:00, see below)
  • If the day of the month is not specified, default to the end of the month.
  • If the month is not specified, default to the end of the year.

Representing end dates and midnight

There is an ambiguity in the way we naturally talk about dates, and a precise mathematical representation of the dates themselves.

A brief example

Let’s assume we have an event that starts in January and lasts for 3 months.

Mathematically, this would mean a start date of “2016-01-01 00:00:00” and an end date of “2016-04-01 00:00:00”.

But for most people, a natural interpretation of this would be January – March 2014 (i.e. it lasts for 3 months, and those 3 months are January, February, and March). This is because we typically refer to end dates inclusively, at least for precisions of days or larger.

How Aeon Timeline represents end dates

Aeon Timeline mirrors this natural approach when talking about dates – the end date is always considered to be inclusive.

So an event that starts in April and lasts a year goes from April 2016 – March 2017 and not April 2016 – April 2017.

To ensure consistency and avoid confusion throughout the application, we extend this policy for all precisions throughout our interface. Thus, the same example at varying precisions would be:

  • 2015 – 2016
  • January 2015 – December 2016
  • 1 January 2015 – 31 December 2016
  • 1 January 2015 00:00:00 – 31 December 2016 24:00:00

As can be seen, we represent the end time as 24:00:00 instead of the mathematically identical 1 January 2017 00:00:00.

The use of 24:00:00 is a less common but legal representation of a date, and is necessary to deliver consistent handling of dates at all precisions.

Absolute and Relative Timeline Styles

Most timelines will use absolute dates, meaning that you specify an exact date or year for each event on your timeline.

However, Aeon Timeline supports several other timeline “styles” that allow you to specify times relative to a theoretical “zero”. Uses for such relative timelines include:

  • Planning a fiction story without needing to think about specific dates and times
  • Planning a project or development schedule based on weeks before you know a definite kick off date.
  • Planning a seminar or training workshop that you will repeat many different times.
  • Planning screen or stage time in a movie, where you want to map out scene times over a period of several hours.

Setting the Timeline Style

The timeline style is set in the Range -> Date section of Timeline Settings, and can be set to the following values:

Regular Dates: Dates are represented in the normal way as absolute values (a specific day/month/year)

Weekly: Weeks count forward from zero, i.e. Week 0, Week 1, Week 2. Events can be specified as occurring on a specific day or time during that week – e.g. “10:00 Monday Week 6”.

Daily: Days count forward from zero, i.e. Day 0, Day 1, Day 2. Events can be specified as occurring at a specific time during that day – e.g. “10:00 Day 3”.

Time: Time counting forwards or backwards from zero, e.g. 02:32:34 or -12:45:00.

Setting the “Zero Date”

When changing from regular dates to any of the weekly formats, or vice versa, you will be asked to specify the date to be used as “zero” in your conversion. All existing dates in your timeline will be converted based on their relative offset from this zero date.

For instance, if you convert from Regular Dates to Daily using a zero date of “1 Jan 2016”, existing dates would be converted as follows:

  • 1 Jan 2016 becomes “Day 0”.
  • 3 Jan 2016 becomes “Day 2”.
  • 5 Jan 2016 12:00pm becomes “Day 4, 12:00pm”
  • 3-7 Jan 2016 becomes Day 2-6.

Discuss

Bug reports? Suggestions? Feeling lost? Leave your questions or comments below…