Template talk:Portuguese name

Handle Filho suffix
This is a proposal to extend the template to handle the Filho suffix, in a way that makes it clear to non-Portuguese speakers that this is not (or at least, may not be) the surname. Example: Paulo Machado de Carvalho Filho (b. 1924) is the son of Paulo Machado de Carvalho (b. 1901). He is not "Mister Filho", any more than Martin Luther King, Jr. is "Mr. Junior".

Portuguese names sometimes also use the suffix Júnior, but that is less problematic for English speakers. Maybe it should also be included in the template anyway, as en-wiki attracts a lot of non-native speakers who may not be familiar with that term either. Some thought should be given to the fact that sometimes "Filho" really is the surname, e.g., Jardel Filho; but mostly it just means "Junior", and is not the surname.

We should add a new, optional param 3 called, with an optional string value. (This value would usually be  or  .)  If present, then it would act like this: This name uses Portuguese naming customs: the first or maternal family name is Alves and the second or paternal family name is Silva. Filho is a generational suffix meaning son, and is used for someone whose name is the same as their father.

If the param is present with no value,, then it should default to "Filho".

Thanks, Mathglot (talk) 03:28, 8 December 2019 (UTC)
 * Listed at WT:BRAZIL (on 8 December).
 * Listed at WT:PORTUGAL (on 8 December). Mathglot (talk) 01:59, 20 December 2019 (UTC)
 * Note: Other suffixes are Neto (or Netto), and Sobrinho. (And not sure about 'Pai'.) I am currently working on a draft of a (backwards-compatible) upgrade in my sandbox. Mathglot (talk) 08:02, 20 December 2019 (UTC)

Template transclusions with possibly confused usage of Filho
There are 2,292 transclusions to date; random spot-checking turned up a mistaken "Filho" interpretation after four tries. Not going to go through them all, but if anyone notices pages falsely marked "..and the paternal name is Filho" (which are also likely to falsely mark the actual paternal name as maternal), please add them here.

Add whatever information is useful, but at least the article name, and full name if known:
 * Saulo Ribeiro – full name: Saulo Mendonça Ribeiro Filho; marked maternal=Ribeiro, paternal=Filho.
 * Marcelo – Marcelo Antônio Guedes Filho; marked maternal=Guedes, paternal=Filho.
 * Careca – Antônio de Oliveira Filho; marked maternal=Oliveira, paternal=Filho.
 * João Gonçalves Filho – João Gonçalves Filho; marked maternal=Gonçalves, paternal=Filho.
 * Francisco Filho (martial artist) – Francisco Alves Filho; marked maternal=Alves, paternal=Filho.
 * Mário Filho – Mário Leite Rodrigues Filho; marked maternal=Rodrigues, paternal=Filho.

New version supports suffix
✅ I've modified the code to permit the use of an optional, third parameter, suffix, which can handle Filho and other suffixes. See the expanded documentation for usage.

Note that this is completely backward compatible, but it doesn't fix errors not related to the suffix, that were already broken in the previous version. Notably, the case of passing only one family name to the template, as in the examples at Francisco Filho and Mário Filho. They both previously misidentified the paternal name as the maternal name, and named 'Filho' as the paternal name. The Mário article now uses the suffix param, and correctly identifies the paternal name as Rodrigues, and Filho as a suffix. But it also now spits out an ugly string that should be suppressed by the code and isn't (and wasn't), namely: "the first or maternal family name is ..."; this is not due to the new code, and is a bug in the old version which occurs for any invocation that fails to specify both maternal and paternal name args. (The 'Francisco' article has been left unchanged as a comparison; but it should be updated as well.)

For the time being, the doc states that both names are required, but in reality, it should allow the template to be invoked with just one family name, and then it should do the right thing and suppress emitting a useless string corresponding to an arg that was not passed. Mathglot (talk) 11:46, 25 December 2019 (UTC)

Template parameters are self-contradictory
The documentation for the Template parameters is self-contradictory. For the first parameter, the value for  is "Family or maternal name", but the value for   is "The person's paternal family name". The second parameter is also self-contradictory, in the inverse sense.

Assuming that the usage note at the top is correct (maternal name first, then paternal name) then I know how to fix it. But then again, at Template:Spanish name, it has paternal name first, then maternal name. Are Spanish and Portuguese names really reversed like that? Mathglot (talk) 04:08, 20 December 2019 (UTC)
 * From a reading of the (long, complicated) Portuguese name, it seems clear that the maternal name comes first (usually!) so that my assumption was apparently correct. I will change the TemplateData documentation accordingly. Mathglot (talk) 05:30, 20 December 2019 (UTC)
 * ✅ Mathglot (talk) 06:12, 20 December 2019 (UTC)

Bug when invoked with only one family name
In the documentation for the Template parameters, the second parameter, 'paternal family name' is marked "suggested", rather than "required". There are very few cases of Portuguese names that use a maternal family name only, and no paternal family name, but they exist. However, in those rare cases, when there is only one surname in the list, the template wouldn't be necessary, as there aren't two names which could be confused in the first place, therefore nothing to explain by the template. Marking the second parameter as 'required' restricts the template to those cases where it is necessary, and avoids confusing readers even more. Mathglot (talk) 08:23, 20 December 2019 (UTC)
 * If you invoke the Template with only one name via positional param, e.g., it gives this:
 * This name uses Portuguese naming customs: the first or maternal family name is Johnson and the second or paternal family name is . 
 * If you invoke via named param 2, e.g.,, it gives this:
 * This name uses Portuguese naming customs: the first or maternal family name is and the second or paternal family name is Anderson.
 * so either the Template code needs updating to allow a maternal-only (and/or paternal-only) usage, or the doc needs to change to state that a single argument is invalid (and in that case, the code should be updated anyway, to generate a big red error string). Since it's easier to update the doc than the template and get it right, I'm going to go ahead and update the doc TemplateData and Usage sections, to state that both arguments are required, to at least try to slow down future invocations that will generate broken-looking hatnotes on article pages with tokens like &apos;   &apos; in them. A better solution, would be to overhaul the code. Mathglot (talk) 21:42, 20 December 2019 (UTC)
 * I've altered the doc page to describe both args as 'required', clarified the Usage section, and added an Examples section. Mathglot (talk) 22:24, 20 December 2019 (UTC)
 * Clarification: this is only a change to the doc page; the preexisting bug about passing only one family name to the template still remains as before, in the new version which supports the suffix param. Mathglot (talk) 12:02, 25 December 2019 (UTC)

That the template ought to handle the case of just one family name passed to it, is illustrated by several articles, including the two mentioned in the previous section, as well as by the case of Adonias Filho. His real name was Adonias Aguiar Filho, son of Adonias Aguiar and Rachel Bastos de Aguiar. In theory, if maternal and paternal names were included, that would make him "Adonias de Aguiar Aguiar Filho", but typically they don't double up on a name when the same name is inherited from both sides, which is why he is "Adonias Aguiar Filho", instead; without a maternal name included. To be handled by the template properly, since his maternal name is no longer part of his full name, the template needs to be able to handle paternal-name only, plus suffix, in an invocation like this:

which should generate this hatnote text:
 * This name uses Portuguese naming customs: the second or paternal family name is Aguiar. 'Filho' is a generational suffix meaning "son", and is used for someone whose name is the same as their father.

but in reality, it generates this one, instead:
 * This name uses Portuguese naming customs: the first or maternal family name is  and the second or paternal family name is Aguiar. 'Filho' is a generational suffix meaning "son", and is used for someone whose name is the same as their father.

That's the pre-existing bug, that still needs fixing. The clause abot the maternal name should not appear, because it wasn't passed. Mathglot (talk) 12:14, 25 December 2019 (UTC)


 * User:Jonesey95, thanks for your recent edits to the template for italics and param 3. You seem like you're a more experienced template editor (I'd rate myself as advanced beginner, or maybe intermediate by now). Can you take a look at the bug I describe in this section? It predates my changes, which were transparent to it, so the bug remains. Partly because of this bug, I made a change to the doc page to change the Template Params to 'required' for first and second (formerly was like this–which was poor design, possibly a cut-paste from Spanish names). I could probably fix this myself, but you may do it better/faster, so if you can have a look, that would be great. If you don't have time for a full fix, if you could just take a quick look and note if you think there's any trickiness to it, any tips you could offer might help. If you think it's straightforward, I'll probably just do it (at some point). Thanks again for your earlier fixes. Mathglot (talk) 22:56, 17 January 2020 (UTC)
 * I started out implementing the above request, but found that this template needed multiple improvements. I hope I have not broken anything. I added a whole bunch of test cases while making changes. Here's the edit summary I just used when I updated the live template, in bullet form:
 * Trim white space around parameters.
 * Make each parameter optional, but emit a maintenance category when none are present.
 * Emit maint cat for unsupported suffix.
 * Fix "Segundo" display (text was not displaying).
 * Make quote marks consistent.
 * Copy edit suffix descriptions.
 * Use regular spaces instead of nbsp.
 * The maintenance category is . Can someone please update the documentation to reflect these changes? I have to run, but I'll be back later. – Jonesey95 (talk) 02:16, 18 January 2020 (UTC)
 * Nice, thanks. I know about maint cats, but not whether there's some kind of standard nomenclature for them. To me, Category:Portuguese name template needing maintenance sounds like an alert that there's something wrong with the template, rather than the invocation of it. Is this a standard or conventional way to name these cats? If so, then fine. The boilerplate at the Category page itself makes it pretty clear.  Thanks for use of some char templates (sp, etc) to make the code nicer, and in particular, for making the args optional. I updated the TemplateData doc to reflect the optional params; was there anything else?  Your fixes worked, at least for this bug; the #Examples section in the doc are live invocations, and used to show broken results when this bug was still live, but all the examples look good, now.
 * This template is much more accurate and useful now, than it was only a short while ago. Thanks for all your help. Mathglot (talk) 08:07, 18 January 2020 (UTC)
 * I don't think that there is a standard for naming maintenance categories. This one should work fine, and the text on the category page tells editors what to do. I get your meaning, though. Since there are no articles in the category, I am not going to worry about it unless it becomes a problem. The documentation looks good. – Jonesey95 (talk) 15:30, 18 January 2020 (UTC)

Tfd?
This discussion deleted most templates similar to this, but not this one. Was this one left out on purpose? It does have the generational suffix thing in the params, which the others don't, and which maybe would require additional handling at the combined template at Template:Family name hatnote, so maybe that's why, because it would introduce some complexity that the others don't need. But it does seem like a desirable goal to merge, if someone cares to do it. I just don't want to see this one nuked, with the existing functionality removed, before it can be properly merged. , this was your nomination; what's your view, should this one be merged eventually as well? Also pinging who has been active here. Mathglot (talk) 01:48, 9 April 2021 (UTC)
 * Pinging, who has done most of the grunt work on the merged template. I think this one was among the more complex family name hatnotes that were not easily supported by the initial umbrella template. – Jonesey95 (talk) 02:19, 9 April 2021 (UTC)
 * I'm not nearly as experienced a template editor as Primefac, but I'm a lot better than I was, and if they have had about enough of that template, I could make a go of it. Or, we could collaborate: I'd do sandbox and testcases, and then hand it off to them. Or leave it in their hands; whatever works. Mathglot (talk) 03:15, 9 April 2021 (UTC)
 * Couple of reasons why this wasn't included in either of the past discussions. First, it was pretty clear in the first discussion that if I wasn't 100% true to the original hatnotes I would be crucified (hence dropping a few from the nomination). When it came time for the second merge group, I wanted to focus entirely on one "type" so that it was clear that a) the sandbox worked as intended, and b) we weren't discussing half-paternal, half-maternal, half-patronymic (etc). I stopped working on things mostly because I had other things take priority, but the eventual plan is to have a single family name hatnote. Always happy for assistance in the sandbox and further discussion at the talk page. Primefac (talk) 10:36, 9 April 2021 (UTC)

Wording of the explanation concerning main surname
The article Rúben Dias, for example, shows this:
 * This name uses Portuguese naming customs: the first or maternal family name is dos Santos Gato Alves and the second or paternal family name is Dias.

While it is correct to sday that that a Portuguese name such as "Rúben dos Santos Gato Alves Dias" is typically abbreviated to "Rúben Dias", the given explanation is needlessly complicated and misleading: Very likely it is "Santos Gato" that comes from his mom, while "Alves Dias" comes from the dad — and in turn each of these pairs have the first surname coming from their own mothers and the last one from their fathers (meaing that the template is likely wrong about Alves), so Dias is the surname of the male lineage — which is the historical reasoning behind this practice.

But of course the order and origin of anyone’s individual names words will often deviate from this “ideal” pattern of
 * One-given-name Another-given-name Mom's-granny's-surname Mom's-grampa's-surname Dad's-granny's-surname Dad's-grampa's-surname

(see the fairly complete even though confuse and ill-structured article “Portuguese name”) and nobody cares about how anynone’s parents and grandparents were named — in practice what matters is which is the last surname and that is typically used for all collation, abbreviation, and addressing needs… and that’s what this template should say simply, instead of trying to climb up and down one’s family tree.

I would suggest instead a much simpler and accurate explanation:
 * This name uses Portuguese naming customs: the secondary surname(s) is/are dos Santos Gato Alves and the main surname is Dias. 

…and leave detailed explnations for the body of the biographic article (if any) and/or for the linked ethno-onomastics article. Tuvalkin (talk) 11:37, 22 June 2021 (UTC)


 * I think you meant,
 * One-given-name / Another-given-name (optional) / Mom's-mom's-surname / Mom's-dad's-surname Dad's-mom's-surname Dad's-dad's-surname
 * but that isn't necessarily parsable in reverse because of the possibility of double names. Other than that, there are many variations as not all names in common usage include all the elements you listed. So it's just not that simple. Mathglot (talk) 07:56, 2 August 2021 (UTC)

Traditionally, a person's first family name belongs to his/her mother, but nowadays it's not a strict rule. Nevermind, this was already corrected. SLBedit (talk) 15:30, 2 August 2021 (UTC)