# KJV–RV1909 Life Situations Dataset v0.1 — Methodology

Release date: 2026-07-22
Canonical landing page: https://bibleverse-generator.org/datasets/life-situations

## Scope and unit of analysis

This release contains 10 life-situation topics, each with three ordered subtopics and six canonical Bible references per subtopic. Its unit is a **membership × locale record**, not a globally unique verse. The 180 memberships contain 163 unique canonical references; repeated references remain separate because they serve different topics or subtopics. English and Spanish are paired for every membership, producing 360 records.

## Frozen inputs

- Topic memberships and localized subtopic labels: `data/situations.ts` at release time.
- English Scripture: the local `public/kjv-map.json` corpus, edition KJV, source ID `eng-kjv2006`.
- Spanish Scripture: the local `public/rv1909-map.json` corpus, edition RV1909, source ID `spaRV1909`.
- Anxiety annotations: `data/situation-content.ts` at release time.

The release pins these input SHA-256 values and refuses to overwrite v0.1 when any input changes:

- `data/situations.ts`: `e929f90d4a0c96396f834074555de201812f7e219aa80466e067a633f0a2e590`
- `data/situation-content.ts`: `85041c7596388309dbcc2258a35db2a9601314ccc8b0f46679d36c13502e1d99`
- `public/kjv-map.json`: `db2a5cfd08bf8c4d750c7d8a8127e2f8601acce5a619e712bc0ba4da1d1c2da3`
- `public/rv1909-map.json`: `9917f2327e82d3a44a671ab5a43cc8985981ddb65441540ad560d9f3f745aee7`

The build performs no network requests. Scripture text is copied exactly from the declared local corpus at `sourceReference`. Canonical and source references retain the English canonical book key for cross-language joins; they are not reverse-translated from localized display text.

## Annotation status

Only the anxiety topic has explanatory `whyIncluded` and `contextNote` values in v0.1. Every one is exported with `annotationStatus=provisional`, a null reviewer, and a null review date. These notes have **not** been represented as pastoral, theological, or named-person review. Topics without annotations use explicit nulls rather than generated filler.

## Stable ordering and timestamp

Records are ordered by source topic order, subtopic order, reference order, then locale (`en`, `es`). `generatedAt` is the fixed release timestamp `2026-07-22T00:00:00.000Z`; it is not the runtime clock. `subtopic` uses the stable keys `section-1` through `section-3`, while `subtopicLabel` preserves localized editorial copy.

## Reproduction and verification

The build requires Node.js 22.18 or newer because it reads the frozen TypeScript inputs with stable native type stripping. From the repository root, with existing project dependencies installed:

`npm run dataset:build`

The command regenerates JSON, CSV, JSON Schema, documentation, and the SHA-256 manifest. Two consecutive executions must be byte-for-byte identical. The checksum manifest contains one sorted line per distributed artifact and excludes itself.

In the CSV representation, an empty field in any nullable annotation column represents JSON `null`; non-null values are preserved as quoted UTF-8 text. The JSON release remains the canonical typed representation.

## Limitations

The collection is curated and is not an exhaustive classification of Scripture. Topic membership and provisional explanatory notes are editorial judgments. This dataset is not medical advice, a treatment promise, or a substitute for reading passages in chapter context. License boundaries are documented separately.
