aboutsummaryrefslogtreecommitdiff
path: root/lib/rites/rite_ef/lectionary_ef.ml
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rites/rite_ef/lectionary_ef.ml')
-rw-r--r--lib/rites/rite_ef/lectionary_ef.ml30
1 files changed, 18 insertions, 12 deletions
diff --git a/lib/rites/rite_ef/lectionary_ef.ml b/lib/rites/rite_ef/lectionary_ef.ml
index 1fba3de..b996412 100644
--- a/lib/rites/rite_ef/lectionary_ef.ml
+++ b/lib/rites/rite_ef/lectionary_ef.ml
@@ -260,7 +260,7 @@ let is_bvm_saturday_office (observed : Vocab_ef.rank Celebration.t)
let readings ~lectionary ~commons ~observed ~temporal ~date ~temporal_at =
match observed.Celebration.citations with
| _ :: _ as cs ->
- (Some { Mass_formulary.said = observed.Celebration.slug; via = Mass_formulary.Proper }, cs)
+ (Some { Mass_formulary.said = Some observed.Celebration.slug; via = Mass_formulary.Proper }, cs)
| [] -> (
(* Step 4: a saint who is the day's observed office and has no proper
says his assigned Common. The assignment is explicit, never
@@ -357,7 +357,7 @@ let readings ~lectionary ~commons ~observed ~temporal ~date ~temporal_at =
if sanctoral_office then commons_for ~commons observed.Celebration.slug else None
with
| Some (common_id, cs) ->
- (Some { Mass_formulary.said = common_id; via = Mass_formulary.Common }, cs)
+ (Some { Mass_formulary.said = Some common_id; via = Mass_formulary.Common }, cs)
| None -> (
(* The votive Mass of Our Lady on Saturday (RG 309(a)) runs HERE:
after the proper (step 1) and the Common (step 4), which answer
@@ -407,23 +407,29 @@ let readings ~lectionary ~commons ~observed ~temporal ~date ~temporal_at =
[bvm_saturday_citations]'s own season-keyed SELECTION, not
merely that some BVM Mass was chosen.
- [said] is UNCHANGED by this correction and stays the day's own
- temporal slug: [is_bvm_saturday_office] only ever fires when
- [sanctoral_office] above is false, i.e. the observed celebration
- already IS the day's own temporal office (the office
+ [said] used to be set HERE to the day's own temporal slug
+ (reasoning: [is_bvm_saturday_office] only ever fires when
+ [sanctoral_office] above is false, i.e. the observed
+ celebration already IS the day's own temporal office, which
deliberately reuses the ordinary ferial slug, [Temporal_ef]'s
- own [bvm_saturday_names]) -- only [via] needed correcting, the
- office/Mass split [Votive] exists to name. *)
+ own [bvm_saturday_names]). CORRECTED (whole-branch review fix
+ round): that value is the OFFICE's slug, not the slug whose
+ Mass is actually said -- the five seasonal Masses RG 309(a)
+ names have no slug of their own anywhere in the shipped data,
+ so [said] is [None] here, honestly, rather than silently
+ naming the wrong thing. See {!Colitur_kernel.Mass_formulary.t}'s
+ own [said] citation for the full account; the office itself is
+ not lost, it is still [observed.slug] on the very same
+ {!Colitur_kernel.Liturgical_day.t} this formulary lives on. *)
if is_bvm_saturday_office observed temporal then
- let said = temporal.Temporal.office.Celebration.slug in
- ( Some { Mass_formulary.said; via = Mass_formulary.Votive },
+ ( Some { Mass_formulary.said = None; via = Mass_formulary.Votive },
bvm_saturday_citations temporal.Temporal.season ~month:(Date.month date)
~day:(Date.day date) )
else
match Lectionary.find lectionary temporal.Temporal.office.Celebration.slug with
| Some cs ->
( Some
- { Mass_formulary.said = temporal.Temporal.office.Celebration.slug;
+ { Mass_formulary.said = Some temporal.Temporal.office.Celebration.slug;
via = Mass_formulary.Own_slug },
cs )
| None -> (
@@ -478,5 +484,5 @@ let readings ~lectionary ~commons ~observed ~temporal ~date ~temporal_at =
with
| Some cs ->
let said = sunday_temporal.Temporal.office.Celebration.slug in
- (Some { Mass_formulary.said; via = Mass_formulary.Preceding_sunday }, cs)
+ (Some { Mass_formulary.said = Some said; via = Mass_formulary.Preceding_sunday }, cs)
| None -> (None, []))))