diff --git a/src/data/calendar/saints/chair-of-st-peter-at-rome.yml b/src/data/calendar/saints/chair-of-st-peter-at-rome.yml new file mode 100644 index 0000000..7c9a0e7 --- /dev/null +++ b/src/data/calendar/saints/chair-of-st-peter-at-rome.yml @@ -0,0 +1,13 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-18, no Sunday collision) -- winner outright, Duplex majus. +# About St. Peter the apostle's office, not a feast of the Lord -- kept in the +# sanctoral store like the rest, distinct from the second Chair-of-Peter feast +# at Antioch (Feb 22, not yet pulled). Own proper collect and antiphon -- +# the antiphon is a cross-reference in the source +# (web/www/horas/Latin/Sancti/01-18.txt's [Ant 1] points at Sancti/02-22.txt, +# since both Chair feasts share it). +id: chair-of-st-peter-at-rome +name: "The Chair of St. Peter at Rome" +rank: duplex-majus +common: common-of-an-apostle +propers: "chair-of-st-peter-at-rome" diff --git a/src/data/calendar/saints/conversion-of-st-paul.yml b/src/data/calendar/saints/conversion-of-st-paul.yml new file mode 100644 index 0000000..8b4453d --- /dev/null +++ b/src/data/calendar/saints/conversion-of-st-paul.yml @@ -0,0 +1,8 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-25, no Sunday collision) -- winner outright, Duplex majus. Own +# proper collect and antiphon. +id: conversion-of-st-paul +name: "The Conversion of St. Paul, Apostle" +rank: duplex-majus +common: common-of-an-apostle +propers: "conversion-of-st-paul" diff --git a/src/data/calendar/saints/ss-fabian-and-sebastian.yml b/src/data/calendar/saints/ss-fabian-and-sebastian.yml new file mode 100644 index 0000000..5a213d2 --- /dev/null +++ b/src/data/calendar/saints/ss-fabian-and-sebastian.yml @@ -0,0 +1,8 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-20, no Sunday collision) -- winner outright, Duplex. One feast +# shared by two martyrs. Own proper collect, no unique antiphon of their own. +id: ss-fabian-and-sebastian +name: "Ss. Fabian and Sebastian, Martyrs" +rank: duplex +common: common-of-several-martyrs +propers: "ss-fabian-and-sebastian" diff --git a/src/data/calendar/saints/ss-marius-martha-audifax-and-abachum.yml b/src/data/calendar/saints/ss-marius-martha-audifax-and-abachum.yml new file mode 100644 index 0000000..c5bb9ad --- /dev/null +++ b/src/data/calendar/saints/ss-marius-martha-audifax-and-abachum.yml @@ -0,0 +1,12 @@ +# Secondary commemoration on 01-19 (loses the day to St. Paul the First Hermit), pulled from +# Divinum Officium's kalendar headline (Monastic Tridentinum 1617, 2029-01-19). +# That query doesn't expose a secondary entry's rank, only its name -- simplex +# here is an unverified placeholder (the safest default, not a real reading), +# expected to need hand correction like the rest of this first-pass pull. No +# text pulled at all yet, matching the "first pass, detect but don't fully +# author" scope for merely-commemorated saints. +id: ss-marius-martha-audifax-and-abachum +name: "Ss. Marius, Martha, Audifax, and Abachum, Martyrs" +rank: simplex +common: common-of-several-martyrs +propers: null diff --git a/src/data/calendar/saints/ss-vincent-and-anastasius.yml b/src/data/calendar/saints/ss-vincent-and-anastasius.yml new file mode 100644 index 0000000..c2372e4 --- /dev/null +++ b/src/data/calendar/saints/ss-vincent-and-anastasius.yml @@ -0,0 +1,8 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-22, no Sunday collision) -- winner outright, Semiduplex. Own +# proper collect, no unique antiphon of their own. +id: ss-vincent-and-anastasius +name: "Ss. Vincent and Anastasius, Martyrs" +rank: semiduplex +common: common-of-several-martyrs +propers: "ss-vincent-and-anastasius" diff --git a/src/data/calendar/saints/st-agnes-secunda.yml b/src/data/calendar/saints/st-agnes-secunda.yml new file mode 100644 index 0000000..ffc43f6 --- /dev/null +++ b/src/data/calendar/saints/st-agnes-secunda.yml @@ -0,0 +1,12 @@ +# Secondary commemoration on 01-28 (loses the day to the Sunday in Septuagesima), pulled from +# Divinum Officium's kalendar headline (Monastic Tridentinum 1617, 2029-01-28). +# That query doesn't expose a secondary entry's rank, only its name -- simplex +# here is an unverified placeholder (the safest default, not a real reading), +# expected to need hand correction like the rest of this first-pass pull. No +# text pulled at all yet, matching the "first pass, detect but don't fully +# author" scope for merely-commemorated saints. +id: st-agnes-secunda +name: "St. Agnes, Virgin and Martyr, Second Feast" +rank: simplex +common: common-of-a-virgin-martyr +propers: null diff --git a/src/data/calendar/saints/st-agnes.yml b/src/data/calendar/saints/st-agnes.yml new file mode 100644 index 0000000..85dd991 --- /dev/null +++ b/src/data/calendar/saints/st-agnes.yml @@ -0,0 +1,9 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-21, no Sunday collision) -- winner outright, Duplex. Own +# proper collect and antiphon. Her second feast (Jan 28) is a separate record +# -- see st-agnes-secunda.yml. +id: st-agnes +name: "St. Agnes, Virgin and Martyr" +rank: duplex +common: common-of-a-virgin-martyr +propers: "st-agnes" diff --git a/src/data/calendar/saints/st-anthony-abbot.yml b/src/data/calendar/saints/st-anthony-abbot.yml new file mode 100644 index 0000000..91663cf --- /dev/null +++ b/src/data/calendar/saints/st-anthony-abbot.yml @@ -0,0 +1,12 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617, +# web/www/horas/Latin/Sancti/01-17.txt's untagged/default [Rank] block -- +# Duplex;;3 -- ignoring its own "(sed rubrica cisterciensis)" alternate, same +# convention as every other saint file in this set). No unique Oratio/Antiphon +# in the source -- Common of an Abbot only. This is the same St. Anthony whose +# real occurrence-engine behavior was used earlier to calibrate the Duplex-vs- +# ordinary-Sunday precedence rule (calendar/commemorations.ts). +id: st-anthony-abbot +name: "St. Anthony, Abbot" +rank: duplex +common: common-of-an-abbot +propers: null diff --git a/src/data/calendar/saints/st-emerentiana.yml b/src/data/calendar/saints/st-emerentiana.yml new file mode 100644 index 0000000..192ef5c --- /dev/null +++ b/src/data/calendar/saints/st-emerentiana.yml @@ -0,0 +1,12 @@ +# Secondary commemoration on 01-23 (loses the day to St. Hilary of Poitiers), pulled from +# Divinum Officium's kalendar headline (Monastic Tridentinum 1617, 2029-01-23). +# That query doesn't expose a secondary entry's rank, only its name -- simplex +# here is an unverified placeholder (the safest default, not a real reading), +# expected to need hand correction like the rest of this first-pass pull. No +# text pulled at all yet, matching the "first pass, detect but don't fully +# author" scope for merely-commemorated saints. +id: st-emerentiana +name: "St. Emerentiana, Virgin and Martyr" +rank: simplex +common: common-of-a-virgin-martyr +propers: null diff --git a/src/data/calendar/saints/st-felix-presbyter.yml b/src/data/calendar/saints/st-felix-presbyter.yml new file mode 100644 index 0000000..5dec4e0 --- /dev/null +++ b/src/data/calendar/saints/st-felix-presbyter.yml @@ -0,0 +1,12 @@ +# Secondary commemoration on 01-14 (loses the day to the Second Sunday after Epiphany), pulled from +# Divinum Officium's kalendar headline (Monastic Tridentinum 1617, 2029-01-14). +# That query doesn't expose a secondary entry's rank, only its name -- simplex +# here is an unverified placeholder (the safest default, not a real reading), +# expected to need hand correction like the rest of this first-pass pull. No +# text pulled at all yet, matching the "first pass, detect but don't fully +# author" scope for merely-commemorated saints. +id: st-felix-presbyter +name: "St. Felix, Priest and Martyr" +rank: simplex +common: common-of-a-martyr +propers: null diff --git a/src/data/calendar/saints/st-hilary-of-poitiers.yml b/src/data/calendar/saints/st-hilary-of-poitiers.yml new file mode 100644 index 0000000..c383775 --- /dev/null +++ b/src/data/calendar/saints/st-hilary-of-poitiers.yml @@ -0,0 +1,11 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-23, no Sunday collision) -- winner outright, Semiduplex. Own +# proper collect, no unique antiphon of his own. (Picked 2029 deliberately -- +# 2027's Jan 23 turned out to already be governed by that week's temporal day +# instead, a reminder that a fixed fest's *rank* is year-independent but +# whether it actually wins isn't.) +id: st-hilary-of-poitiers +name: "St. Hilary of Poitiers, Bishop, Confessor and Doctor of the Church" +rank: semiduplex +common: common-of-a-confessor-bishop +propers: "st-hilary-of-poitiers" diff --git a/src/data/calendar/saints/st-hyginus.yml b/src/data/calendar/saints/st-hyginus.yml new file mode 100644 index 0000000..717f86f --- /dev/null +++ b/src/data/calendar/saints/st-hyginus.yml @@ -0,0 +1,12 @@ +# Secondary commemoration on 01-11 (loses the day to the Epiphany octave's fifth day), pulled from +# Divinum Officium's kalendar headline (Monastic Tridentinum 1617, 2029-01-11). +# That query doesn't expose a secondary entry's rank, only its name -- simplex +# here is an unverified placeholder (the safest default, not a real reading), +# expected to need hand correction like the rest of this first-pass pull. No +# text pulled at all yet, matching the "first pass, detect but don't fully +# author" scope for merely-commemorated saints. +id: st-hyginus +name: "St. Hyginus, Pope and Martyr" +rank: simplex +common: common-of-a-martyr-bishop +propers: null diff --git a/src/data/calendar/saints/st-john-chrysostom.yml b/src/data/calendar/saints/st-john-chrysostom.yml new file mode 100644 index 0000000..457d57b --- /dev/null +++ b/src/data/calendar/saints/st-john-chrysostom.yml @@ -0,0 +1,8 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-27, no Sunday collision) -- winner outright, Duplex. Own +# proper collect, no unique antiphon of his own. +id: st-john-chrysostom +name: "St. John Chrysostom, Bishop, Confessor and Doctor of the Church" +rank: duplex +common: common-of-a-confessor-bishop +propers: "st-john-chrysostom" diff --git a/src/data/calendar/saints/st-marcellus-i.yml b/src/data/calendar/saints/st-marcellus-i.yml new file mode 100644 index 0000000..e6bd3fd --- /dev/null +++ b/src/data/calendar/saints/st-marcellus-i.yml @@ -0,0 +1,10 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-16, no Sunday collision) -- winner outright, Semiduplex. Own +# proper collect (web/www/horas/Latin/Sancti/01-16.txt's [Oratio]) -- see +# propers/common/st-marcellus-i-collect.yml -- but no unique antiphon of his +# own (Terce/Sext/None's antiphon there is the generic Common one). +id: st-marcellus-i +name: "St. Marcellus I, Pope and Martyr" +rank: semiduplex +common: common-of-a-martyr-bishop +propers: "st-marcellus-i" diff --git a/src/data/calendar/saints/st-maurus-abbot.yml b/src/data/calendar/saints/st-maurus-abbot.yml new file mode 100644 index 0000000..d8c833f --- /dev/null +++ b/src/data/calendar/saints/st-maurus-abbot.yml @@ -0,0 +1,11 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-15, no Sunday collision) -- winner outright, Duplex II. classis, +# a monastic-calendar-specific elevation (the base 1570 Tridentine calendar has +# him as a lesser commemoration on this date instead -- see M1617.txt's delta). +# No unique Oratio/Antiphon in the source (web/www/horas/Latin/Sancti/01-15.txt +# has only Lectio blocks) -- he uses the Common of an Abbot for everything. +id: st-maurus-abbot +name: "St. Maurus, Abbot" +rank: duplex-2-classis +common: common-of-an-abbot +propers: null diff --git a/src/data/calendar/saints/st-paul-the-hermit.yml b/src/data/calendar/saints/st-paul-the-hermit.yml new file mode 100644 index 0000000..86e1d50 --- /dev/null +++ b/src/data/calendar/saints/st-paul-the-hermit.yml @@ -0,0 +1,8 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-19, no Sunday collision) -- winner outright, Semiduplex. Own +# proper collect, no unique antiphon of his own. +id: st-paul-the-hermit +name: "St. Paul the First Hermit, Confessor" +rank: semiduplex +common: common-of-a-confessor +propers: "st-paul-the-hermit" diff --git a/src/data/calendar/saints/st-polycarp.yml b/src/data/calendar/saints/st-polycarp.yml new file mode 100644 index 0000000..f8c9a2d --- /dev/null +++ b/src/data/calendar/saints/st-polycarp.yml @@ -0,0 +1,9 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-26, no Sunday collision) -- winner outright, Semiduplex. +# web/www/horas/Latin/Sancti/01-26.txt has no [Oratio]/[Ant] blocks -- Common +# of a Martyr Bishop only. +id: st-polycarp +name: "St. Polycarp, Bishop and Martyr" +rank: semiduplex +common: common-of-a-martyr-bishop +propers: null diff --git a/src/data/calendar/saints/st-prisca.yml b/src/data/calendar/saints/st-prisca.yml new file mode 100644 index 0000000..ad6eb5b --- /dev/null +++ b/src/data/calendar/saints/st-prisca.yml @@ -0,0 +1,12 @@ +# Secondary commemoration on 01-18 (loses the day to the Chair of St. Peter at Rome), pulled from +# Divinum Officium's kalendar headline (Monastic Tridentinum 1617, 2029-01-18). +# That query doesn't expose a secondary entry's rank, only its name -- simplex +# here is an unverified placeholder (the safest default, not a real reading), +# expected to need hand correction like the rest of this first-pass pull. No +# text pulled at all yet, matching the "first pass, detect but don't fully +# author" scope for merely-commemorated saints. +id: st-prisca +name: "St. Prisca, Virgin and Martyr" +rank: simplex +common: common-of-a-virgin-martyr +propers: null diff --git a/src/data/calendar/saints/st-telesphorus.yml b/src/data/calendar/saints/st-telesphorus.yml new file mode 100644 index 0000000..3820b6f --- /dev/null +++ b/src/data/calendar/saints/st-telesphorus.yml @@ -0,0 +1,12 @@ +# Secondary commemoration on 01-05 (loses the day to the Vigil of the Epiphany), pulled from +# Divinum Officium's kalendar headline (Monastic Tridentinum 1617, 2029-01-05). +# That query doesn't expose a secondary entry's rank, only its name -- simplex +# here is an unverified placeholder (the safest default, not a real reading), +# expected to need hand correction like the rest of this first-pass pull. No +# text pulled at all yet, matching the "first pass, detect but don't fully +# author" scope for merely-commemorated saints. +id: st-telesphorus +name: "St. Telesphorus, Pope and Martyr" +rank: simplex +common: common-of-a-martyr-bishop +propers: null diff --git a/src/data/calendar/saints/st-timothy.yml b/src/data/calendar/saints/st-timothy.yml new file mode 100644 index 0000000..6c11eb5 --- /dev/null +++ b/src/data/calendar/saints/st-timothy.yml @@ -0,0 +1,9 @@ +# Verified against Divinum Officium (Monastic Tridentinum 1617), live kalendar +# check (2029-01-24, no Sunday collision) -- winner outright, Semiduplex. +# web/www/horas/Latin/Sancti/01-24.txt has no [Oratio]/[Ant] blocks -- Common +# of a Martyr Bishop only. +id: st-timothy +name: "St. Timothy, Bishop and Martyr" +rank: semiduplex +common: common-of-a-martyr-bishop +propers: null diff --git a/src/data/calendar/sanctoral-calendar.yml b/src/data/calendar/sanctoral-calendar.yml index 6bf44ff..22feefc 100644 --- a/src/data/calendar/sanctoral-calendar.yml +++ b/src/data/calendar/sanctoral-calendar.yml @@ -12,6 +12,30 @@ # privileged-day lists. `example-confessor` is deliberately NOT mapped to # any day here — it's fictional, kept only to document the record shape. days: + # January — first month of the pre-1955 pull (see the saint files' own + # comments for source/verification detail per entry). Deliberately + # excludes: pure octave-continuation days (In Octava S. Stephani, the + # several "die infra Octavam Epiphaniae" days, etc. — not sanctoral, + # out of scope per the Non-goals discussion) and fixed-date feasts of + # the Lord/BMV (Circumcision Jan 1, Epiphany Jan 6 — temporal, not + # sanctoral, and not modeled by this app at all yet, a separate gap). + "01-05": [st-telesphorus] + "01-11": [st-hyginus] + "01-14": [st-felix-presbyter] + "01-15": [st-maurus-abbot] + "01-16": [st-marcellus-i] + "01-17": [st-anthony-abbot] + "01-18": [chair-of-st-peter-at-rome, st-prisca] + "01-19": [st-paul-the-hermit, ss-marius-martha-audifax-and-abachum] + "01-20": [ss-fabian-and-sebastian] + "01-21": [st-agnes] + "01-22": [ss-vincent-and-anastasius] + "01-23": [st-hilary-of-poitiers, st-emerentiana] + "01-24": [st-timothy] + "01-25": [conversion-of-st-paul] + "01-26": [st-polycarp] + "01-27": [st-john-chrysostom] + "01-28": [st-agnes-secunda] "08-09": [vigil-of-st-lawrence] "08-10": [st-lawrence] "08-15": [assumption]