The workshop
Master-citation backfill
Offline data engineering (direct-line plan §3.0 items 1, 2 and 7; the compiler's rule that the index holds every record cited for any study person). Stopped early on the study's instruction (usage limit). Nothing in data/, people/ or edits/ was changed. python tools/check.py: 0 errors, 5 warnings (the known H0074/H0112/H0113 parent warnings), the 119 FamilySearch ARKs as INFO — the same as before.
Done
the study's tools (new, read-only module). It pulls record identifiers out of master citations (
text,url,ancestry_url) and normalizes them. The kinds are:- FamilySearch persona ARK and FamilySearch image ARK;
- Ancestry record (
discoveryuiandsearch/collectionsare one form), Ancestry image, and member-tree media; - Newspapers.com page and clipping;
- Find a Grave memorial (URL or "memorial N");
- Washington Digital Archives record and Missouri death certificate;
- StABE signature, page and entry number;
- Chronicling America, Fold3, the NPS soldiers database, Internet Archive, and online obituaries.
Background sources have no identifier. The module also has:
names_person(), which decides from the citation text whether the master's person is in the record:- it returns
named,unsureorabsent; - it checks for relative annotations ("[his father]"), namesakes (by lifespan or age), same-named relatives (settled by suffix, age or the spouse named nearby), a wife named by her husband, and household lists;
- it returns
fs_personas(), which labels each FamilySearch ARK (the principal, "father's entry", "also", and so on) so that a row is linked only to the person's own entry;load_review()for hand decisions in the study's data. That file is not yet created.
- the study's tools (new). It runs dry by default;
--report FILEwrites the full list and--applywrites. Its behaviour is in the docstring:- each row gets its natural key through
occ_ids.assign(key_override=…):fs:,fag:andmo:for the record's own person,fag:<id>|<H-ID>ormo:<file>|<H-ID>for another person named in it, and<site>:<H-ID>|<kind>:<id>for the rest; - an existing unlinked row of the same record is linked through
edits/<date>-backfill-links.json; - an entry already linked to someone else is reported as a conflict;
- masters are never touched, because only checks that the
occ:IDs it finds exist and ignores them.
- each row gets its natural key through
Dry run (latest; nothing applied)
| Item | Count |
|---|---|
| Citations already indexed for their person | 785 |
| Rows that would be added | 630: ancestry 458, findagrave 76, wa-digitalarchives 42, familysearch 27, mo-deathcert 11, staatsarchiv-bern 10, fold3 2, nps-soldiers 1, familysearch-fulltext 1, web 1, newspapers.com 1 |
| Masters affected | 174 |
| Person named, but only someone else's FamilySearch entry is cited | 154 (own entry must be harvested; nothing linked) |
Still to review (unsure) | 268 |
| Context only (the person is not named) | 589, of which 271 records are indexed for nobody |
| Conflicts to report | 4 |
The 4 conflicts:
- O03168 (Marie A Hegnauer) is linked to H0152, not H0023/H0069;
- O03362 (the father's entry, Leonard D.) is linked to H0027, not H0026;
- O03146 (Mary Lee Hegnauer) is linked to H0027, not H0230;
- O04348 is linked to H1474, but H1462 cites it.
Review of the add list (about 400 of 630 rows read) found no false links after these fixes:
- the Mrs./Mr. title against the person's sex;
- a wife's mention dated before her marriage;
- the subject of the memorial or certificate against a secondary person;
- namesake children (a baptism date used as the birth year).
Remaining (in order)
- Fix before applying.
- The "full given names" rule must ignore initials and honour "Mrs." (H0375
obitidxwrongly matched "Mrs. Richard W. Yeo"). - Year-only lifespans should give the death year for burials.
- The "full given names" rule must ignore initials and honour "Mrs." (H0375
- Create the study's data.
- Apply. Run
python tools/backfill_citations.py --report …(dry), then--apply. - Extend the study's tools (task 2, not started). Using
cited_records, add:- a WARN for a citation whose record identifiers match no occurrence;
- a WARN for a citation that names the person with no occurrence linked to them (the review file suppresses these).
- Link grades (task 3, not started): the study's edit files via the study's tools.
- Run
python tools/check.pyand record the counts here.
People in this article
- Alice Kineard b. bef. 1887
- Marie A. Hegnauer 1900–bef. 1957
- Keith Donnell Hegnauer 1945–2014
- Leonard Donnell Hegnauer 1919–1950
- Mary Lee Hayles 1943–2022
- Brosshans Hegnauer bef. 1541–aft. 1573
- Hans Hegnauer bef. 1535–aft. 1555
- Richard W. Yeo b. bef. 1915
- Clara Edith Baker 1877–1951
- Emil Hegnauer c. 1870–bef. 1880
- Susanna Katharina Hirschi 1846–1918
- Jakob Hegnauer 1783–1858
- Robert Lucius Hegnauer 1887–1969