python-nameparser icon indicating copy to clipboard operation
python-nameparser copied to clipboard

Add a feature to work with Hispanic and Portuguese names (latinos)

Open miguelgfierro opened this issue 5 years ago • 5 comments

The library doesn't work for latino names, in Spanish and Portuguese we have 2 surnames, ie:

Spanish: Rafael Nadal Parera Portuguese: Cristiano Ronaldo dos Santos Aveiro (in this case Cristiano is the first name, Ronaldo de second name and the rest surnames)

Also, we can have several names, they are not called first and middle name, but fist, second, third names...

I guess it not an easy thing to implement, but there are around 700M people on that group :-)

miguelgfierro avatar Feb 04 '20 18:02 miguelgfierro

The current parser logic basically takes the first name it gets and sticks it in the first name list, then sticks all other names into the middle name list until it reaches the last name.

It seems feasible that the logic could be changed to switch from middle names to last names at some other point as it proceeds from beginning to end, but if there can be an arbitrary number of both middle and last names how would the parser know when to switch to last names?

derek73 avatar Feb 05 '20 02:02 derek73

Also if middle names are not really a separate concept like in English, maybe the surnames attribute is what you want:

https://nameparser.readthedocs.io/en/latest/modules.html#nameparser.parser.HumanName.surnames

It's basically all names except the first name or any titles or suffixes, so middle and last concated together.

derek73 avatar Feb 05 '20 02:02 derek73

In the "Cristiano Ronaldo dos Santos Aveiro" example, what would be a useful way to separate out the name parts in Portuguese? You referred to "second" and "surname". I know in Portuguese people can have like 10 names, but I don't know what's a useful way to group them. If more names were added would you want "third" name and then "surname" for the just final name part? Would a numerical index be useful?

Also might want to look at #72 for some related conversation. I think that's when I added the surnames attribute.

derek73 avatar Feb 05 '20 03:02 derek73

I know in Portuguese people can have like 10 names, but I don't know what's a useful way to group them.

yes, same in Spanish. Maybe a good way would be to have a field called names (similar to surnames) that would include all the names, in the case of "Cristiano Ronaldo dos Santos Aveiro" it would be "Cristiano Ronaldo". In Spanish people can also have multiple names, an example:

"Dr. Miguel Ángel González-Fierro Palacios":

  • title: Dr
  • names: Miguel Ángel
  • surnames: González-Fierro Palacios

miguelgfierro avatar Feb 05 '20 06:02 miguelgfierro

Is this ready to use

Kmfernan5 avatar Oct 06 '23 17:10 Kmfernan5