swami, guru and baba ship in TITLES but not in FIRST_NAME_TITLES, so a title plus one name resolves that name to last:
>>> from nameparser import parse
>>> n = parse("Swami Vivekananda")
>>> n.title, n.given, n.family
('Swami', '', 'Vivekananda')
Vivekananda is not a family name. He was born Narendranath Datta and took the monastic name on renunciation — as a monk he has no surname at all. The same holds for Guru Nanak and Baba Ramdev.
Structurally this is the Sister Mary class, classed the opposite way:
Sister Mary -> title='Sister' given='Mary' family='' ✅
Swami Vivekananda -> title='Swami' given='' family='Vivekananda' ❌
FIRST_NAME_TITLES already holds sister, brother, father, mother, pope, sir, king, master — titles addressed to a personal name rather than a family name. Renunciate honorifics belong there on the same reasoning, and with a stronger justification than most: renunciation does not merely make the personal name the polite form of address, it abolishes the family name outright, so family='' is the correct output rather than a degraded one.
Proposal
Add to FIRST_NAME_TITLES (all already in TITLES):
| entry |
example |
why |
swami |
Swami Vivekananda |
monastic name replaces the birth name |
guru |
Guru Nanak |
Nanak is the personal name |
baba |
Baba Ramdev |
monastic name |
lama |
Lama Zopa |
Tibetan Buddhist religious name |
venerable |
Venerable Ananda |
Buddhist monastic name |
lama and venerable are the same class and I am reasonably but not equally confident in them — worth a second opinion before they go in. The first three are the clear cases.
Deliberately not included
rabbi and imam are in TITLES and not in FIRST_NAME_TITLES, which is correct and should stay: rabbis and imams have surnames, and Rabbi Cohen / Imam Khomeini resolve to family today, which is right. The distinction is not "religious title" — it is whether the tradition retains a family name.
Verified at 2.1.0
| input |
today |
with proposal |
Swami Vivekananda |
family=Vivekananda ❌ |
given=Vivekananda, family='' ✅ |
Guru Nanak |
family=Nanak ❌ |
given=Nanak ✅ |
Baba Ramdev |
family=Ramdev ❌ |
given=Ramdev ✅ |
Lama Zopa |
family=Zopa ❌ |
given=Zopa ✅ |
Venerable Ananda |
family=Ananda ❌ |
given=Ananda ✅ |
Rabbi Cohen |
family=Cohen ✅ |
unchanged ✅ |
Imam Khomeini |
family=Khomeini ✅ |
unchanged ✅ |
Swami Vivekananda Saraswati |
given=Vivekananda, family=Saraswati ✅ |
unchanged ✅ |
Guru Gobind Singh |
given=Gobind, family=Singh ✅ |
unchanged ✅ |
The rule fires only on title plus ONE name (_post_rules rule 1), so multi-token names are untouched.
Note on scope
This is a classification call about vocabulary that already ships, not a claim about a script the parser never covered — unlike #343 and #344. It is filed as a bug on that basis, but relabel if the current behavior reads as an acceptable default rather than a defect.
Related: #344 proposes the Devanagari spellings स्वामी/गुरु/बाबा in the same class, and #343 defers the Bengali গুরু/বাবা to #344 so the class is decided once. Whatever is settled here should match.
swami,guruandbabaship inTITLESbut not inFIRST_NAME_TITLES, so a title plus one name resolves that name tolast:Vivekananda is not a family name. He was born Narendranath Datta and took the monastic name on renunciation — as a monk he has no surname at all. The same holds for
Guru NanakandBaba Ramdev.Structurally this is the
Sister Maryclass, classed the opposite way:FIRST_NAME_TITLESalready holdssister,brother,father,mother,pope,sir,king,master— titles addressed to a personal name rather than a family name. Renunciate honorifics belong there on the same reasoning, and with a stronger justification than most: renunciation does not merely make the personal name the polite form of address, it abolishes the family name outright, sofamily=''is the correct output rather than a degraded one.Proposal
Add to
FIRST_NAME_TITLES(all already inTITLES):swamigurubabalamavenerablelamaandvenerableare the same class and I am reasonably but not equally confident in them — worth a second opinion before they go in. The first three are the clear cases.Deliberately not included
rabbiandimamare inTITLESand not inFIRST_NAME_TITLES, which is correct and should stay: rabbis and imams have surnames, andRabbi Cohen/Imam Khomeiniresolve tofamilytoday, which is right. The distinction is not "religious title" — it is whether the tradition retains a family name.Verified at 2.1.0
Swami VivekanandaVivekananda❌Vivekananda, family=''✅Guru NanakNanak❌Nanak✅Baba RamdevRamdev❌Ramdev✅Lama ZopaZopa❌Zopa✅Venerable AnandaAnanda❌Ananda✅Rabbi CohenCohen✅Imam KhomeiniKhomeini✅Swami Vivekananda SaraswatiVivekananda, family=Saraswati✅Guru Gobind SinghGobind, family=Singh✅The rule fires only on title plus ONE name (
_post_rulesrule 1), so multi-token names are untouched.Note on scope
This is a classification call about vocabulary that already ships, not a claim about a script the parser never covered — unlike #343 and #344. It is filed as a bug on that basis, but relabel if the current behavior reads as an acceptable default rather than a defect.
Related: #344 proposes the Devanagari spellings
स्वामी/गुरु/बाबाin the same class, and #343 defers the Bengaliগুরু/বাবাto #344 so the class is decided once. Whatever is settled here should match.