Name, family-name, surname autocompletion

In the MDN page about the “autocomplete” attribute, standard name segments have been defined. However, the options and definitions are not optimal for internationalization. Google x-attributetype offers a good option, namely “surname”, which has no equivalent in the MDN list. I suggest its inclusion and here is why.

Not in all societies, all family members share a name. Naming conventions vary significantly in the world.

In German and English speaking countries, there are family names. A woman often changes her family name when she marries a man and every member of the new family, including children, will share the same family name.

In Spanish and Portuguese speaking countries, this is not the case. Children have one or more given names and two clan names, one from each parent. A woman can change one of her two clan names when marrying, but this is often not done. Given names and clan names are separate sets and recognized as such. Rather than grouping family members, clan names are inherited indirectly from two grand fathers and they are somewhat useful for separating the cousins into two groups, each child usually having two sets of cousins.

In Icelandic, there are no family names like in English and German and no clan names like in Portuguese and Spanish. At birth, a new name is constructed from a parent’s given name: for instance, “Maria’s son” or “Maria’s daughter” if the baby’s mother is called “Maria”. The name of either parent can be used for creating such a segment.


In Javanese (Indonesia), people have no family names, no clan names, no genitive name, and there is a trend towards inherit one name from the father. However, people’s names are better understood as a series of given names since there is no obligation that any name segment be the same as a name of either parent.


Given that scenario, when Spanish/Portuguese speakers, Icelanders, and Indonesians are in German or English-speaking countries, a good compromise between the naming systems is to ask people to split their names in half. The given name is the proper name of that person (proper name) and the surname is a name “above” that one, common to a group of people (common name). The group sharing a name can be “Maria’s children” as in Icelandic, they can be two clans as in “Martín Morales” for Ricky Martin, or a family as in “the Bidens” for Joe Biden. When traveling abroad, Javanese-speaking people can just present their whole name as a given name (proper name) or split their name in half as they find fit if the surname field cannot be left empty.

Hello @Daniel.Couto-Vale and welcome to the community :wave:

Thank you for the detailed explanation. MDN Web Docs basically documents the different specifications about web technologies and enriches them with examples to make them more understandable. Therefore this list comes from the autofill field names | HTML Living Standard.
MDN recommends using the general “name” value for the reasons you have given above:

The field expects the value to be a person’s full name. Using “name” rather than breaking the name down into its components is generally preferred because it avoids dealing with the wide diversity of human names and how they are structured;

A similar recommendation can be found at the link I posted above (in the green box).
I have never heard of “Google x-attributetype”. Do you have a link about it?

I hope this gives some insights. Dealing with names in IT is unfortunately very hard.

As you are interested in this topic you may already know this article: Falsehoods Programmers Believe About Names – With Examples

Have a nice day!

Hi Michael,

thank you for your answer. Yes, you are right. Among the labels that are proposed, the only usable one is “name”. This is exactly the problem that I am referring to.

Societies and their governments will not give up their control over how humans get officially named and we, developers, must support our societies and governments as long as they are not infringing human rights and our constitutions. We as developers cannot just impose that human names must work like human identifiers because this would be useful for us.

In Germany, the government must separate two segments of people’s names because these segments serve different purposes in society. If a family lives in an apartment, their shared name must be placed at the street door bell, the apartment door bell, and the postal box. Visitors of any kind and correspondents are not informed an apartment number. They only know a building number and a family name. Visitors include friends, police officers, paramedics, firefighters, workers, risk evaluators, energy counters and whoever comes physically to an apartment. No one can find my apartment if they do not know the “name of my family”. However, in fact, I do not have one.

In this context, surnames are a compromise between different naming systems. I am Brazilian and I must use my surname as if it were a family name on all those shields. If my parents had moved with me to Germany, our shields would have three surnames as in “Coutinho-Couto, Castro-Vale, Couto-Vale”. Otherwise, some of us would be unreachable.

This is how it works. And this is a result of a compromise between naming systems throughout the years. Internationally, surnames are the standard. On my pass, my clan names are presented not as two separate clan names but as a single surname (“sobrenome”). On my partner’s pass, who is German, his family name is also presented as a surname (“Nachname”).

I could enter into more detail how Germans are registered, how laws for family name work now, and how foreigners are registered here, in other countries, and so on, but the fact is that name segments are still relevant and an international compromise already exists. It is called “surname”, not “family-name”. This international compromise is missing in the standard. (Note: “family-name” is also relevant in Germany and it is missing in “x-autocompletetype” by Google)

A comparison between autocomplete values and the x-autocompletetype values adopted by Google are here:

1 Like

that very interesting topic thanks for both of you for sharing that

not sure if emailing w3c about that would help or not as i see from this discussion that there a lot of standardization here

from i am from men and woman name be like that first name then father first name then grandfather first name then the forth could be the father of the grandfather or family name (could be any name like grand of grandfather and so on)

name does not change for marriage or divorce

of course person can change his/her first name but it require a lot of government paper work to make sure that person is not trying to change name for illegal cause

Thanks for the insight, @Daniel.Couto-Vale!
If I understand you correctly you ask "surname" to be added to the specified list of autocomplete values as an internationally more fitting alternative to family-name, correct? If this is the case the best place to put this request would probably be the issue tracker of the WHATWG, where the HTML standard is maintained and developed.

I hope that helps!

1 Like