Skip to content

State what family and the patronymic view hold where a convention has no family name (#1253, #1203) - #1367

Open
derek73 wants to merge 3 commits into
masterfrom
docs/issue-1253-family-and-fathers-names
Open

derek73 wants to merge 3 commits into
masterfrom
docs/issue-1253-family-and-fathers-names

Conversation

@derek73

@derek73 derek73 commented Nov 12, 2026 •

Copy link
Copy Markdown
Owner

Closes #1203. Refs #1253.

This records #1253's decision in the rules, and settles #1203 (Ethiopian names) as the decision says: no default reading changes. It touches only docs; no library code changes.

What it adds

Measured (2026-11-12, master 2b39f23)

  • House of Peoples' Representatives (et_hopr, from the opensanctions-parliaments fetch of 2026-11-12, 23 datasets):
  • ORCID (config_diff.py score default 'default@middle_as_family=1' --group ET --group ER):
    • Ethiopia: 91.95% by default against 70.43% with middle_as_family (18,794 records).
    • Eritrea: 92.24% against 72.41% (232 records).
  • The matching table in the decision comment reproduces cell for cell. Under the fold, a swapped father and grandfather are consistent (Abiy Ahmed Ali / Abiy Ali Ahmed), where the default matcher keeps them apart. Under either matcher, a two-word name whose second word is the other name's grandfather is consistent too. The recipe says both.

Not re-taken: #1203's ORCID box splits and its Wikidata P734 count. The decisions entry quotes them as the issue's 2026-11-08 figures.

Found while writing it

Checks

  • uv run pytest: 46,001 passed. Python 3.15 in its own environment: 45,969 passed.
  • uv run pytest -n0 -m serial: 35 passed.
  • mypy and ruff: clean.
  • sphinx-build -b doctest docs (835 tests, 0 failures) and -W -b html: clean.
  • python -m doctest README.rst: clean.
  • Snapshot: no reading moves. The rules corpus gains the two O4 examples, read by default.
  • No release-log bullet: a docs-only change like this has none in recent releases.

Reviews

Round Review Found Done
1 (974e17f) design-docs-reviewer The Background said the Kyrgyz and Mongolian readings are "what position gives", which is false on master and contradicts rules/O2. The decisions file pointed at entries that exist only on the unmerged leaf branches. Its "by position today" was false for three of four examples (Burma's San). The Open line contradicted its Log on #1165. R9 narrowed "overlap". All fixed in a2a5c36.
1 comment-analyzer The recipe's "different father" example was really a different grandfather, and its caveat missed the swapped-order false positive. The heading said "no family name" where the decision says these names have one. "Abroad" lacked its two-word qualifier. The recipe gave no reason for keeping the default parser. It used invented relatives of a public figure. folded clashed with the outcome of the same name. All fixed: invented names, the full caveat with doctests, and a measured reason.
1 code-reviewer The same unmerged-pointer and Background problems. Closes #1203 and Refs #1253 confirmed; no release-log bullet needed. Fixed as above.
2 (a2a5c36) design-docs-reviewer Three fresh errors in the corrections. San inside a Burmese name joins the family forward (rules/P2), not by P1's fold. The Background implied a Kyrgyz marker setting a caller can turn on today, which no shipped setting gives. The order-blind comparison is the matcher's, not the fold's. Everything else re-verified: the 21.5 points, the matching table, both builds. Fixed in 0043e81.

🤖 Generated with Claude Code

derek73 and others added 2 commits November 12, 2026 12:42
… no family name (#1253, #1203)

rules/O's Background states #1253's first statement, that family is the
name a convention files a person under, and rules/R9 its second, that
the patronymic view may overlap the family. rules/O4 records the
Ethiopian name as an accepted consequence. decisions gains a key for
the decision, with #1203's measurements re-taken where the cache allows.
docs/usage.rst says what family holds for such a name, and
docs/matching.rst gives the matcher for an Ethiopian list.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
From review: the Background and the decisions entry said the Mongolian
and Kyrgyz readings are what position gives, which holds only once
#1237's pack and #1187's reading land, and pointed at their unmerged
entries; Burma's `Aung San Suu Kyi` loses `San` to the particle fold.
The matching recipe uses invented names, says the fold compares family
words regardless of order (a swapped father and grandfather match),
gives the measured reason to keep the default parser for the fields,
and its heading says "inherited". R9 keeps the decision's "overlap";
the Open line restates no issue.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@derek73 derek73 added this to the 3.1 milestone Nov 12, 2026
@derek73 derek73 added docs Documentation fixes and updates design Changes what the model can express (a shape decision) matching Name matching: Parser.matching(), check() and keys() patronymics Father's names and the patronymic view (rules/R9) labels Nov 12, 2026
@derek73 derek73 self-assigned this Nov 12, 2026
…ition

From the round-2 review: San inside a name joins the family forward
(rules/P2), not P1's fold; the Background says the Mongolian and Kyrgyz
readings need the caller's declaration, without claiming a setting the
tree lacks; the matcher, not the fold, compares a several-word family
regardless of order.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

design Changes what the model can express (a shape decision) docs Documentation fixes and updates matching Name matching: Parser.matching(), check() and keys() patronymics Father's names and the patronymic view (rules/R9)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Where should an Ethiopian father's name go when there is no family name? (Abiy Ahmed Ali gives middle Ahmed; Abiy Ahmed gives family Ahmed)

1 participant