ADR-0021: Divine Principle resource class
Status: Accepted Date: 2026-05-21
Context
Exposition of the Divine Principle (1996 English edition, HSA-UWC; source PDF resources-raw/DivinePrinciple/dp96.pdf, 324 pages) is the canonical doctrinal text of the Unification Church and the primary citation target for vault atomics on creation, fall, and restoration. CONTEXT.md’s citation grammar table has carried a placeholder DP row ([[DP/2-1-Fall-of-Man#32|3.2]]) since the schema was drafted, but no DP file existed in /resources/DP/ and the row’s per-chapter granularity assumption never got pressure-tested.
Stage-1 extraction is complete: scripts/ingest_pdf.py --split-level 4 produced 59 section-granularity markdown files under resources-raw/DivinePrinciple/extracted/part-{1,2}/{NN-chapter-slug}/section-{N}-{slug}.md. The PDF’s bookmark hierarchy is Part (L2) → Chapter (L3) → Section (L4) → Sub-subsection (L5). Front matter (Preface, Introduction — both L2 with no sub-bookmarks) was not captured by --split-level 4 and is deferred to a follow-on extraction.
Structural notes from the extract:
- 7 chapters per part × 2 parts = 14 chapters. Sections per chapter range 4–6.
- A single chapter’s worth of section files totals ~70–100 KB; an individual section is ~5–30 KB.
- DP sections are themselves doctrinally coherent units (e.g. “The Root of Sin”, “The Four Position Foundation”) — citation targets in the wild typically point at a section, not a sub-subsection.
- Marker emits chaotic heading depth (
## **Section N Title**H2,#### **N.M Subtitle**H4, mixed bold) and orphan inline footnote refs (e.g.John 8:44.23where23is a stranded footnote number with no definition emitted anywhere in the extract). Tier-2/3 cleanup territory.
Decision
-
Class code:
DP -
Path:
/resources/DP/ -
File granularity: one file per section (per-section carve-out from ADR-0004’s chapter default — see ADR-0004 update). DP sections are coherent doctrinal units typically 3–15 paragraphs long, which is the natural citation anchor and a comfortable reader/AI context size.
-
Folder structure:
/resources/DP/Part{N}/Chapter{NN}-{chapter-slug}/dp-{section}-{section-slug}.md. Mirrors ADR-0020 WorldScripture’s 3-level pattern: Part folder (single-digitPart1/Part2), Chapter folder (zero-paddedChapter01–Chapter07+ chapter slug for navigability), section file (single-digitdp-N-prefix + section slug). Section ordinals 1–6 stay single-digit since no chapter exceeds 6 sections. -
Filename:
dp-{section}-{section-slug}.md. WS-style — section ordinal lives in the filename so alphabetical sort matches print order; Part/Chapter live in folder path only (nodp-1-1-1-triple repetition). -
Citation form:
- Section (file-level):
[[resources/DP/Part{N}/Chapter{NN}-{chapter-slug}/dp-{section}-{section-slug}]]- Example:
[[resources/DP/Part1/Chapter02-the-human-fall/dp-1-the-root-of-sin]]
- Example:
- Subsection (H2 anchor):
[[resources/DP/Part{N}/Chapter{NN}-{chapter-slug}/dp-{section}-{section-slug}#nm-heading-text|N.M Heading Text]]- Example:
[[resources/DP/Part1/Chapter02-the-human-fall/dp-1-the-root-of-sin#13-the-fall-of-the-angel-and-the-fall-of-human-beings|1.3 The Fall of the Angel and the Fall of Human Beings]](anchor is verbatim heading text; see ADR-0024)
- Example:
- Section (file-level):
-
Frontmatter shape:
--- type: resource class: DP part: {1-2} chapter: {1-7} chapter-title: "{Chapter title}" section: {1-6} section-title: "{Section title}" book: "Exposition of the Divine Principle" publisher: "HSA-UWC" year: 1996 ---Section title carries via frontmatter only (Obsidian/Quartz render frontmatter title as page H1). No
# Section N. Titlebody heading — would duplicate the frontmatter. Subsections begin at## N.M. Title(H2), sub-subsections at### N.M.K. Title(H3). Matches CSG body convention shifted up one level since the section is the file rather than a heading within it. -
Heading-depth normalization (stage-2, AI in chat):
- Drop the
## Chapter N+## {Chapter title}block at the top of each chapter’s first section file (chapter context lives in folder name + frontmatterchapter-title:). - Drop the section-title heading entirely (
## **Section N Title**) — replaced by frontmattersection-title:. - Strip bold markup from subsection headings (
#### **1.1 Foo**→## 1.1. Foo). - Normalize subsection heading depth to H2 regardless of Marker’s emitted depth (H2 / H4 mix in the extract).
- Sub-subsection headings → H3 with trailing period (
### N.M.K. Title).
- Drop the
-
Bible-reference reshape (stage-2, AI in chat): Marker emits in-prose Bible attributions as headings (
## - Jude 6-7) when they follow a block quotation. Convert to em-dash attribution lines (> …\n> — Jude 6-7) inside the preceding blockquote. Not scriptable —## -is ambiguous against true headings; needs interpretive context. -
Footnote handling (stage-2, AI in chat): Marker lost footnote definitions entirely (none emitted anywhere in the 59-file extract). Orphan inline refs surface as digits glued to preceding tokens (e.g.
Genesis 3:6.16). Stage-2 strips the trailing-digit orphan where context is unambiguous, and leaves a TODO comment otherwise. Recovery of definitions deferred to a future re-extraction pass or manual transcription from the PDF — out of scope for this ADR. -
Class category: Primary doctrinal source (UC core canon), same bucket as CSG. Cited by reference-class atomics throughout the vault.
-
Quartz hierarchical filter tree (per ADR-0018):
DP: { pathPattern: /DP\/(Part\d+)\/(Chapter\d+-[\w-]+)\/(dp-\d+-[\w-]+)/, levelNames: ["Part", "Chapter", "Section"], } -
Front/back matter: deferred. Preface and Introduction (the only front matter; no back matter) are L2 PDF bookmarks with no sub-bookmarks, so
--split-level 4skipped them. A follow-oningest_pdf.pyinvocation with a different split level or explicit page ranges will route them toDP/00-front-matter/dp-preface.mdandDP/00-front-matter/dp-introduction.mdvia the existing front-matter classifier.
Alternatives considered
- Per-chapter granularity (matching the original CONTEXT.md placeholder and CSG/BR pattern). Rejected. Three reasons:
- Stage-1 extracted at section-level naturally (Marker bookmark depth 4); merging back to per-chapter would discard structural signal already present.
- A typical DP chapter aggregated would run 70–100 KB / ~3000–5000 words — past the comfortable read/AI-context window, comparable to the WorldScripture chapter pilot that drove ADR-0020’s per-sub-theme flip.
- Citation in the wild points at sections more often than at chapters; per-section files make those citations zero-anchor (file-level link, no
#sectionfragment), reducing brittleness when subsection numbering shifts.
- Flat layout at
/resources/DP/(no Part/Chapter folders,dp-1-2-1-the-root-of-sin.mdstyle). Rejected — 59 files in a flat folder loses navigability; Part/Chapter folders makelsreveal reading order. Part{N}/only, no Chapter folder (dp-1-2-1-the-root-of-sin.mdflat under Part1). Rejected — 7 chapters × ~5 sections = ~35 files per Part directory, alphabetized away from print order. Chapter folder restores reading-order grouping (matches ADR-0020 WS precedent).- CSG-style filename repetition (
dp-1-2-1-the-root-of-sin.md). Rejected — folder path already carries Part and Chapter; repeating in filename adds noise without disambiguation benefit. WS precedent prefers folder-as-hierarchy. - Keep “DP” as a placeholder citation row in CONTEXT.md (defer ADR until first atomic cites DP). Rejected — the placeholder example (
[[DP/2-1-Fall-of-Man#32|3.2]]) doesn’t match the extracted PDF’s chapter numbering (Fall is Part 1 Ch 2, not Part 2 Ch 1) and would mislead any agent referencing it. Settling the grammar now prevents downstream rework.
Consequences
- (+) DP becomes citable. The 14 chapters × ~5 sections = ~70 leaf files materialize under
/resources/DP/, indexable by the Quartz hierarchical filter and reachable via wikilink. - (+) Per-section granularity matches typical citation precision — atomics rarely need sub-subsection anchors for DP material, and when they do, the H2 anchor inside the section file suffices.
- (+) Folder hierarchy is consistent across the three multi-level classes (CSG: Book/Chapter, WS: Part/Chapter/Sub-theme, DP: Part/Chapter/Section). Quartz hierarchical filter entries follow the same shape.
- (+) Tier-1 staging is fully scripted (per ADR-0019 update):
uv run scripts/stage_resources.py DPproduces 59 staged files with frontmatter, page-anchor strip, smart-quote normalization. Tier-2 (heading-depth + Bible-ref reshape) and tier-3 (footnote orphan cleanup, OCR fixes) stay AI-in-chat. - (−) Footnote definitions are lost from the extract. Atomics needing precise footnote-resolved Bible citations will have to recover them from the PDF directly. Acceptable since DP’s prose typically inlines Bible references already (
-Rom. 1:20,-Matt. 7:1-2), and the orphan digits are mostly redundant superscript numerals. - (−) Front matter (Preface, Introduction) requires a follow-on extraction run. Tracked separately; not blocking the chapter ingest.
- (−) The placeholder CONTEXT.md example citation form (
[[DP/2-1-Fall-of-Man#32|3.2]]) becomes obsolete and any past plan that referenced it needs translation to the new grammar. No vault files currently use it (DP folder was empty), so impact is documentation-only.