Skip to content

Read a saint particle glued to a name as one name word (rules/T8) - #1309

Merged
derek73 merged 3 commits into
masterfrom
fix/issue-1071-glued-saint
Nov 11, 2026
Merged

derek73 merged 3 commits into
masterfrom
fix/issue-1071-glued-saint

Conversation

@derek73

@derek73 derek73 commented Nov 10, 2026 •

Copy link
Copy Markdown
Owner

Closes #1071.

A saint particle glued to its name was read by its chunks. period_joined_vocab's any-title rule read St.John Price as title St.John with no given name. rules/S3's dotted shape read Mark Jhon Sta.Ana as an unlisted credential, suffix Sta.Ana. #1304 (rules/T8) deliberately left this shape out of its division, and this PR settles it.

The rule: rules/T8, a saint particle glued to a name

A saint particle glued to a capitalized name is one name word: neither a title, nor a credential by its dotted shape. It divides at its stop only when all of these hold:

  • it is the last name word of the part;
  • the word right before it is a name, meaning no title of any kind and no connective, with no connective earlier in the part;
  • the family ends the part: before a family comma under every order, or otherwise under a given-first order.

Then rules/P10's saint run opens the surname, as it does when written apart. str() keeps the word as written.

Input 3.0.1 this PR
St.John Price title St.John, no given name given St.John
Mark Jhon Sta.Ana suffix Sta.Ana middle Jhon, family Sta.Ana
Juan dela Cruz Sta.Maria suffix Sta.Maria middle dela Cruz, family Sta.Maria (as Sta. Maria)
CRAWFORD, ST.ELMO title ST.ELMO given ST.ELMO
Jeremy St.John Middleton middle St.John unchanged
Mr. St.Clair family St.Clair unchanged

Why not divide everywhere, as T8's other division does: written apart, Jeremy St. John Middleton reads family St. John Middleton. That would move 16 British names where St John is a middle name into the family name; the glued writing reads them right today.

Why divide as the last word: in the Filipino writing, dela Cruz before the surname is the mother's surname, and it reads as the middle name only when the particle opens the surname.

A maiden clause of one word or two (née, z domu) now ends a part's own words, both for this division and for T8's end-of-name report.

Measured against master 3744aa0

  • Population: 79 glued saint words in the 13 local corpora. Before a comma: 37 family parts alone, 20 last words, 16 middle words, 2 behind titles only and 2 first words. After a comma: 2.
  • Moves (snapshot.py --local <corpus> --base <master>):
    • psc-individuals 14, including 9 initials-only moves matching the spaced writing (St.Hill → K. C. H.);
    • orcid-researchers 8;
    • fec-individuals 2;
    • patentsview-inventors 2;
    • ctgov-officials, tse-donors and ukec-individuals none.
  • Committed snapshot: no corpus name moves.
  • Accepted costs (recorded in decisions/T8):
    • Juan Sta.Maria Reyes reads middle Sta.Maria, where Juan Sta. Maria Reyes reads family Sta. Maria Reyes. That's the price of keeping the British middle names whole.
    • A name written wholly in lower case keeps its chunks' readings (st.john price).

Review

A design-docs review of code and docs found the first build dividing in two places P10 doesn't read:

  • behind a title only: Mr. St.Clair became title Mr. St., family Clair;
  • under the family-first orders: Price Mark St.John got two initials where Price, Mark St.John has one.

It also found a suffix word after the stop splitting (St.MD), the two-word maiden marker missed, and a population count that didn't add up. All are fixed, each with a test row.

A focused review of those fixes then found three more, all fixed with test rows:

  • a title phrase's words (Mr and Mrs, The Hon., Dean of Students) passed as a name before the word;
  • the order gate applied before a family comma;
  • a maiden marker ending the text counted as a clause.

The branch merged master after #1307 landed (one conflict in decisions/T8's Standing block, both lines kept). The full suite, mypy and ruff pass, and the corpus figures hold against the new master.

🤖 Generated with Claude Code

`St.John Price` read title 'St.John' with no given name, and `Mark Jhon
Sta.Ana` suffix 'Sta.Ana', rules/S3 reading the glued word as an
unlisted dotted credential. A saint particle glued to a capitalized
name is now one name word, neither a title nor a credential by its
shape. As the last name word of a part, behind a word that is no
title, under an order that ends the name with the family, it divides
at its stop, so rules/P10's saint run opens the surname as written
apart (`Juan dela Cruz Sta.Maria` reads middle 'dela Cruz'). The
British middle name `Jeremy St.John Middleton` keeps its reading. A
maiden clause, of one word or two, ends a part's own words for this
and for T8's end-of-name report.

Closes #1071.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@derek73 derek73 added this to the 3.1 milestone Nov 10, 2026
@derek73 derek73 added bug titles Titles and honorifics (rules/H) particles Particles and surname prefixes (rules/P) labels Nov 10, 2026
@derek73 derek73 self-assigned this Nov 10, 2026
derek73 and others added 2 commits November 10, 2026 15:38
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

# Conflicts:
#	docs/design/decisions/T8-word-glued-to-the-next-at-its-full-stop.md
The saint division asks that the word right before it be a name, no
title of any kind nor a connective, and that no connective stand
earlier in the part, so a title phrase keeps the word whole ('Mr and
Mrs St.Clair', 'Dean of Students St.Clair'); before a family comma it
divides under every order, the comma naming the surname; a maiden
marker counts as a clause only with a word after it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug particles Particles and surname prefixes (rules/P) titles Titles and honorifics (rules/H)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Should Mark Jhon Sta.Ana read family Sta.Ana, the saint particle glued to its surname?

1 participant