Skip to content

Commit 6d7270e

Browse files
derek73claude
andcommitted
Amend the RFC to match what shipped in 2.0.0rc1
Two reconciliations before merging the RFC as the standing design record. The design did not drift -- it grew after this doc froze on 2026-07-11 -- so nothing here contradicted the release; it was missing a field and carried an illustrative string that never matched output. - Add the `maiden` field (#274), decided after the RFC was written: a birth surname introduced by a marker like née/geb. that v1 folded into middle/last. It is the one user-facing 2.0 field the document omitted. - Fix the ambiguity example's detail text to the actual shipped string ("leading 'Van' may be a family-name particle; read as a given name"). Detail text is not stable API, but an example that does not reproduce is a wart in a standing record. Verified every other code example in the RFC runs verbatim against 2.0.0rc1 -- replace(), the Token repr, the FAMILY_FIRST example, the RU locale, and the "not in 2.0" claim for parse_all()/explain(). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
1 parent 98a19d2 commit 6d7270e

1 file changed

Lines changed: 4 additions & 2 deletions

File tree

docs/design/nameparser-2.0-rfc.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,8 @@ the standards world already uses (HTML autocomplete
131131
- `title` and `suffix` **stay** — they have ecosystem gravity, and the
132132
positional taxonomy ("pre-nominal"/"post-nominal") is documented
133133
rather than spelled into identifiers.
134+
- `maiden` is a **new** field — a birth surname introduced by a marker
135+
like `née` or `geb.`, which v1 folded into `middle`/`last` (#274).
134136

135137
`HumanName` keeps every v1 spelling, including `string_format` keys, so
136138
existing code is unaffected; only new-API adopters see the new names.
@@ -176,8 +178,8 @@ reading **and says so**:
176178

177179
```python
178180
parse("Van Johnson").ambiguities
179-
# (Ambiguity(PARTICLE_OR_GIVEN, "leading 'van' can be a particle or a
180-
# given name; chose given", tokens=(...)),)
181+
# (Ambiguity(PARTICLE_OR_GIVEN, "leading 'Van' may be a family-name
182+
# particle; read as a given name", tokens=(...)),)
181183
```
182184

183185
`Ambiguity.kind` values are stable API you can filter on. This is also

0 commit comments

Comments
 (0)