HistoryCal - V0.0.7 Manual
g# Gregorian

Home Development V0.0.7 Manual Cal. Definitions g

Calendar Description

This Gregorian calendar implements the changes made to the Julian calendar by Pope Gregory XIII. There were three changes made, a change to the way leap years are determined, the year number change date (New Year) fixed to 1st January, and the removal of excess days (compared to the solar year) that had built up since AD 325 (the year the First Council of Nicaea was held).

The proleptic Gregorian calendar follows the ISO 8601 standard. The year zero is included, years before year zero are given as negative.

Use Case

The Gregorian calendar was first introduced in Catholic countries in 1582 and has since be adopted by most of the world and has become the most commonly used calendar today.



The Gregorian calendar is based on a solar year of 365.2425 days. Days start at midnight.

The Record consists of three Fields named year, month, and day and the extended Field named wday.

There are two types of years, a common year and a leap year. Years are leap years when the current era year is divisible by 4 but not by 100 unless divisible by 400.

The Epoch is set at


In all other respects, the calendar is the same as the Julian calendar.


Default Script
grammar g { inherit j; format iso { rules iso8601 caldate; } format iso_set { rules iso8601 dateset; } pref dmy; } scheme g { name "Gregorian"; base gregorian; grammar g; }

The grammar "g" inherits from the grammar "j" used by the Julian scheme.

example/iso5.hcs Script
format g:iso_y5 { rules iso8601 caldate year5; } format g:iso_y5set { rules iso8601 dateset year5; }
example/iso6.hcs Script
format g:iso_y6 { rules iso8601 caldate year6; } format g:iso_y6set { rules iso8601 dateset year6; }

Valid XHTML 1.0 Strict

19th January 2014