Repository navigation
Read Graf, Gräfin, Fürst and Prinz as rank particles, as Freiherr is (#709) - #1064
Merged
Merged
Conversation
…709) Since 1919 a German noble rank is part of the legal surname, written before the particle. Each of the four now carries freiherr's shape, a rank particle reading beside its title reading, so `Otto Graf Lambsdorff` gives family 'Graf Lambsdorff' where it gave middle 'Graf'; opening a name each is still a title (`Graf Zeppelin`). Herzog and Ritter, common plain surnames, are refused the reading, with the counts recorded on each word. rules/H6's Accepted clause and its example move: `Graf Lambsdorff, Otto` keeps family 'Graf Lambsdorff'. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…nts (#709) The design-docs review found rules/H1's graf-class clause saying a name word behind `graf` before a family comma makes it the title (it now stays in the family), five copies of `TITLES ∩ particles_ambiguous` as {freiherr, st} (vocabulary-collisions, vocabulary-exclusions, both nameparser AGENTS.md files, a _group.py comment), decisions/H6 still listing #709 as open, the `Graf Lambsdorff, Otto` row in H6's Accepted fence where it is the particle stop's case, and an Accepted bullet saying no corpus name moved by the comma attachment where one did. The Herzog/Ritter counts came from a five-word prototype nobody can re-run; they are re-measured with a stored recipe (63 of 879 names move: 5 attachments, 5 titles kept in the family, 53 double surnames) and the prototype's figures withdrawn. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ures (#709) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…an-ranks # Conflicts: # docs/design/decisions/H6-title-before-a-family-comma.md # docs/release_log.rst # nameparser/vocab/README.md
derek73
added a commit
that referenced
this pull request
Nov 5, 2026
…) (#1075) * Write saint and rank particles with their capital in case repair (#1069) Case repair's particle arm lowercased every particle without a mask, so JOHN ST CLAIR repaired to 'John st Clair' and, once #1064 made the German ranks particles, OTTO GRAF LAMBSDORFF to 'Otto graf Lambsdorff' where 2.8.0 gave 'Otto Graf Lambsdorff'. The saint and rank kinds now compile into CAPITALIZED_PARTICLES, which the arm skips, so a word a file or a caller adds of either kind is written with its capital too; sta's and sto's masks, which #725 added for this, are dropped for the one mechanism. Suzuki-san under a family-first order with force repairs to 'Suzuki-San', the accepted cost (rules/R4, decisions/R4). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Mark #725's sta/sto masks superseded; file CAPITALIZED_PARTICLES under case masks (#1069) Review fixes: decisions/H6's #725 entry still described the masks this change drops, the release bullet's Suzuki-San cost left out force=True, and AGENTS.md listed the set among the given-name sets. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Record the capitalized sweep's negative control; state the kind exclusion in _lowers_as_particle (#1069) Code-review fixes: the helper's docstring still said every working particle is lowercased, and the guard sweep had no recorded control. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
German noble ranks are part of the legal surname since 1919, written before the particle. Four more ranks now read as part of the surname, as
freiherralready did.Otto Graf LambsdorffGraf, familyLambsdorffGraf LambsdorffMarion Gräfin DönhoffGräfinGräfin DönhoffGeorg Friedrich Prinz von PreußenFriedrich PrinzPrinz von PreußenGraf Lambsdorff, OttoGrafGraf Lambsdorff(rules/H6's particle stop)Graf Zeppelin,Prinz CharlesWerner Herzog,John RitterThe change.
graf,gräfin,fürstandprinzinde.tomleach gain arankparticle reading and the particle'sgivenreading, freiherr's shape. Each stays in TITLES, so a name opening with one still reads it as the title.Refused, for now:
herzogandritter. Both are common plain surnames (US Census 11,146 and 33,252) and carryexcluded = { rank = … }. The cost the refusal was decided on came from a five-word prototype, and it did not reproduce. With a stored recipe (decisions/vocabulary-collisions' #709 entry), giving them the same readings moves 63 of the 879 corpus names holding either word:BABINGTON, BETHANY HERZOG→ familyHERZOG BABINGTONHERZOG DIAL, MICHELE→ familyHERZOG DIALANA PAULA RITTER ASCENCO→ familyRITTER ASCENCOWhether they should join the four is reopened in review.
fürstinandprinzessinare in no vocabulary file, so they are left for their own vetting.Measured
On 2026-11-04, against
origin/masterc620754. The recipe is in decisions/vocabulary-collisions' #709 entry.Rodrigo Graf Fernandez). Two news-text fragments read worse.local_agreement.py --base:The regressions are mostly Austrian and Swiss filers who typed the word as a given name.
Graf Lambsdorff, Otto. CLDR is unchanged.Accepted: rules/P6's attachment after a family comma takes a trailing rank into the family (
Smith, Steffi Graf→ familyGraf Smith), as it already does forfreiherr. No corpus name moved this way.Interaction with #670/#828's PR: these words join
TITLES ∩ particles, so under a family-first order that PR's cut reaches them too (Graf von Berg Otto→ familyvon Berg, givenOtto).Closes #709
🤖 Generated with Claude Code