The Liturgical Calendar

Published

May 3, 2024

Caution

Incomplete draft content.

The LiturgicalYear type

The liturgical year is modelled by the LiturgicalYear type, a central structure in Lectionary.jl. You can create a LiturgicalYear from a Date object as a single parameter; if you construct a LiturgicalYear with no parameter, the date value defaults to today. You can also construct a LiturgicalYear with an integer value for the calendar year in which the liturgical year begins (i.e., the year of the civil calendar that Advent falls in).

using Lectionary
lityear = LiturgicalYear(2023)
2023-2024

Basic facts you can find out about a liturgical year include:

  • its place in the three-year cycle of the Revised Commmon Lectionary (identified by one of the characters ‘A’, ‘B’ or ‘C’):
lectionary_year(lityear)
'B': ASCII/Unicode U+0042 (category Lu: Letter, uppercase)
  • its sequence in the Episcopal Church’s two-year cycle of Daily Office Readings (identified by an integer value, 1 or 2):
daily_office_year(lityear)
2
  • the range of its dates (from Advent 1 to the end of the liturgical year) in the civil calendar:
date_range(lityear)
Dates.Date("2023-12-03"):Dates.Day(1):Dates.Date("2024-11-30")

The result of the date_range function is a range of Dates (from the Dates package). Of course you can collect them, like any other range value in Julia. Here we can see that the 2023-2024 liturgical year spans 364 days in the civil calendar.

date_range(lityear) |> collect |> length
364
  • a full calendar of dates with assigned readings in the RCL (fasts, feast days and all Sundays):
kalendar(lityear)
69-element Vector{LiturgicalDay}:
 the first Sunday of Advent, December 3, 2023
 the second Sunday of Advent, December 10, 2023
 the third Sunday of Advent, December 17, 2023
 the fourth Sunday of Advent, December 24, 2023
 Christmas Day in 2023
 the first Sunday after Christmas Day, December 31, 2023
 The Holy Name in 2024
 The Epiphany in 2024
 the first Sunday after the Epiphany, January 7, 2024
 the second Sunday after the Epiphany, January 14, 2024
 the third Sunday after the Epiphany, January 21, 2024
 the fourth Sunday after the Epiphany, January 28, 2024
 The Presentation in 2024
 ⋮
 the eighteenth Sunday after Pentecost, September 22, 2024
 the nineteenth Sunday after Pentecost, September 29, 2024
 the twentieth Sunday after Pentecost, October 6, 2024
 the twenty-first Sunday after Pentecost, October 13, 2024
 the twenty-second Sunday after Pentecost, October 20, 2024
 the twenty-third Sunday after Pentecost, October 27, 2024
 All Saints' Day in 2024
 the twenty-fourth Sunday after Pentecost, November 3, 2024
 the twenty-fifth Sunday after Pentecost, November 10, 2024
 the twenty-sixth Sunday after Pentecost, November 17, 2024
 Christ the King, November 24, 2024
 Thanksgiving Day in 2024

The result is a Vector of LiturgicalDays.

The LiturgicalDay type

The LiturgicalDay is an abstract type with concrete implementations:

  • Feast: fasts and feasts of the liturgical year with assigned readings in the RCL, other than Sundays. (Feasts with fixed dates could coincide with a Sunday.)
  • Sunday: the Sundays of the liturgical year
  • OtherDay: days of the year with no assigned reading.

Any date in the civil calendar can be mapped to a LiturgicalDay.

using Dates
liturgical_day(Date(2024,4,1))
April 1, 2024, Monday following Easter Day
Caution

Content TBA

You can find types of days for a liturgical year.

holy_days(lityear)
17-element Vector{Commemoration}:
 Christmas Day in 2023
 The Holy Name in 2024
 The Epiphany in 2024
 The Presentation in 2024
 The Annunciation in 2024
 The Visitation in 2024
 Holy Cross Day in 2024
 All Saints' Day in 2024
 Ascension Day in 2024
 Thanksgiving Day in 2024
 The First Day of Lent or Ash Wednesday in 2024
 Monday of Holy Week in 2024
 Tuesday of Holy Week in 2024
 Wednesday of Holy Week in 2024
 Holy Thursday in 2024
 Good Friday in 2024
 Holy Saturday in 2024

Seasons of the year

Numerous functions let you find the holy days belonging to a season of the liturgical year.

  • advent
  • christmastide
  • epiphany

export liturgical_year, liturgical_day