Skip to content

Recognize maiden-name markers like "née" and "geb." (Jane Smith née Jones) #274

Description

@derek73

The maiden attribute is currently populated only by delimiter routing (e.g. moving parenthesis into maiden_delimiters for the "Jane Smith (Jones)" convention). But the dominant convention across languages — including English-language biographical text — is a marker word before the former surname, which the parser currently mangles into the middle name (v1.3.0):

>>> hn = HumanName('Jane Smith née Jones')
>>> hn.middle, hn.last, hn.maiden
('Smith née', 'Jones', '')      # want: middle='', last='Smith', maiden='Jones'
>>> HumanName('Anna Müller geb. Schmidt').middle
'Müller geb.'

Proposal: a maiden_markers constants set. When a marker is found, it consumes itself plus the following name piece(s) into maiden_list — structurally similar to how prefixes join forward. Candidates:

Needs vetting before inclusion: Scandinavian f. (født/född) — indistinguishable from the initial "F.", so it likely can't be a default. Out of scope: Hungarian -né (morphological suffix on the husband's name, Kovácsné = "wife of Kovács" — would need ending-detection like the patronymic regexes, not a marker word) and Spanish/Portuguese conventions (surnames aren't replaced at marriage; no marker exists).

Design questions: how many pieces after the marker belong to maiden (probably all remaining non-suffix pieces, mirroring prefix-join behavior); and whether nee without the accent is safe as a default (it's also a rare surname). Related: #269.

Activity

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

Metadata

Metadata

Assignees

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions