aboutsummaryrefslogtreecommitdiff
path: root/lib/rites/rite_of/rubrics_of.mli
diff options
context:
space:
mode:
Diffstat (limited to 'lib/rites/rite_of/rubrics_of.mli')
-rw-r--r--lib/rites/rite_of/rubrics_of.mli78
1 files changed, 78 insertions, 0 deletions
diff --git a/lib/rites/rite_of/rubrics_of.mli b/lib/rites/rite_of/rubrics_of.mli
new file mode 100644
index 0000000..5325f12
--- /dev/null
+++ b/lib/rites/rite_of/rubrics_of.mli
@@ -0,0 +1,78 @@
+(** IGMR n. 53 (Gloria), n. 67-68 (Symbolum/Credo), n. 364-365 and the
+ Missale Romanum editio typica tertia (2002)'s own printed "INDEX
+ PRAEFATIONUM" (preface choice) -- see the .ml's own header for every
+ paragraph quoted in full and every branch's own citation. The OF
+ counterpart of {!Rite_ef.Rubrics_ef}; same shape, same three functions,
+ same [Rite.t] signatures -- but see [preface]'s own citation for why
+ this file's verdict on {!Colitur_kernel.Preface.t} differs sharply from
+ what {!Rite_ef.Rubrics_ef.preface} was able to build. *)
+
+open Colitur_kernel
+
+(** The one Requiem-shaped entity the shipped OF calendar can ever construct
+ as [observed] (All Souls, 2 November) -- see the .ml's own header for
+ why colour cannot serve as the Requiem proxy here the way
+ {!Colour.Black} does for {!Rite_ef.Rubrics_ef} (OF permits, but never
+ requires, black vestments for the dead -- IGMR n. 346 e -- and the
+ shipped data uses violet), so a closed slug list, checked against
+ [data/of/calendar-2002.sexp] directly, is the only signal available.
+ Exposed so the test suite can assert this population stays exactly
+ what it was measured to be, the same discipline
+ {!Rite_ef.Rubrics_ef.creed_apostle_slugs} already establishes. *)
+val requiem_slugs : string list
+
+(** Whether the Gloria in excelsis is said at this day's Mass (IGMR n. 53).
+ [temporal] is read for exactly one fact -- n. 53's own "diebus dominicis
+ EXTRA TEMPUS ADVENTUS ET QUADRAGESIMAE": {!Rite_of.Temporal_of.temporal}
+ tags every Sunday of Advent/Lent/Easter [Sollemnitas] (the same rank a
+ genuine solemnity carries), so testing [observed.rank] alone would
+ wrongly grant an Advent or Lent Sunday the Gloria n. 53 explicitly
+ denies it -- the identical "read temporal, not observed, for a day-of-
+ week/season fact" discipline {!Rite_ef.Rubrics_ef.creed}'s own RG 475(a)
+ citation already establishes. [date] is read once, against the rite's
+ own (Gregorian) Easter, for the two Missale-Romanum-own-rubric
+ exceptions (Holy Thursday evening Mass, the Easter Vigil Mass) -- see
+ the .ml's own citation for the primary text, found in the Missal's
+ Proper of Time rather than the IGMR itself. [observed]'s [slug] is
+ checked once against {!requiem_slugs} -- see that value's own citation
+ for why this is an INFERENCE, not an IGMR paragraph, and exactly how
+ narrowly it is applied. *)
+val gloria :
+ temporal:(Vocab_of.season, Vocab_of.rank) Temporal.t ->
+ observed:Vocab_of.rank Celebration.t ->
+ date:Date.t ->
+ bool
+
+(** Whether the Symbolum (Credo) is said, post-homily, at this day's Mass
+ (IGMR n. 67-68). Reads [temporal] for the identical reason [gloria]
+ does -- n. 68's own "diebus dominicis" is a plain, weekday-only fact,
+ unlike n. 53's Advent/Lent carve-out, so every Sunday qualifies
+ (Advent/Lent Sundays INCLUDED, unlike [gloria]) -- and [observed]'s
+ [rank] for n. 68's own "in sollemnitatibus", and [slug] against
+ {!requiem_slugs} for the identical reason [gloria] checks it. Narrower
+ than [gloria] on purpose: n. 68 has no "et festis" clause at all, so a
+ [Festum]-rank day (an ordinary feast) does NOT get the Credo -- the one
+ place this function's shape most visibly parts from EF's own RG
+ 475(b)/(c). [date] is accepted, for signature symmetry with [gloria]/
+ [preface] and {!Rite.t}'s own shared shape, but genuinely unread: n.
+ 67-68 carries no Easter-relative window of its own, unlike RG 475(d)'s
+ three EF octaves -- checked, not assumed (see the .ml's own citation). *)
+val credo :
+ temporal:(Vocab_of.season, Vocab_of.rank) Temporal.t ->
+ observed:Vocab_of.rank Celebration.t ->
+ date:Date.t ->
+ bool
+
+(** Which preface is said at this day's Mass (IGMR n. 364-365; the Missale's
+ own "INDEX PRAEFATIONUM"). ALWAYS [None] -- not a stub, a measured
+ verdict: see the .ml's own header for the full census of the 2002
+ Missal's preface collection (over 50 individual texts across ~30 named
+ occasions) against {!Preface.t}'s 15 EF-cited constructors, and why
+ none of them is safe to reuse. Same three parameters as [gloria]/
+ [credo], all three genuinely unread -- kept only for {!Rite.t}'s shared
+ shape. *)
+val preface :
+ temporal:(Vocab_of.season, Vocab_of.rank) Temporal.t ->
+ observed:Vocab_of.rank Celebration.t ->
+ date:Date.t ->
+ Preface.t option