(** 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). Named [creed], not [credo]: IGMR n. 67's own heading is "Professio fidei" and its body says "Symbolum", never "Credo" (checked directly, igmr.txt:568-577) -- "Credo" is this file's own prose shorthand, kept in comments and test labels, but the exported name matches {!Colitur_kernel.Rite.t.creed}'s own field exactly, the same "interface name matches the kernel field it satisfies" discipline {!Rite_ef.Rubrics_ef.creed} already follows. 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 Creed -- 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 creed : 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]/ [creed], 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