Whether it's curse words or porn websites or whatever.
I guess most plain english words would be curse words in other languages. Conversely, many plain words and names in other languages will be incorrectly interpreted as english curse words. There's no way to avoid this. Forbidding english curse words would be extremely offensive to people whose name coincides with those words.
The same discussion will also have to talk about whether Mr. SomepornwebsiteDOTcom or Mrs. Hitlerdidnothingwrong are real people and what to do about it.
The issue is that many developers have an urge to do some 'clever' processing on them when, really, my conclusion is that they should be left alone. Just sanitise them for security purpose and that's it. This is a typical 'less is more' scenario.
The best person to write a specific name as it should be is the person the name belongs to, so just let them do it.
It's inconvenient to have the person you are writing about copyedit all of your writing. How would that even work?
And if you don't allow them to do that, how do you account for the situation here where Mr de Zwart's name is capitalized differently depending on context? I'm not even sure if I have it right here.
Previously I wasn't a big fan of this style, but it has grown on me, and I see it now as similar using "they" instead of he/she for an unspecified person. Why assume anything about the name, when you can reuse it verbatim when needed?
I think at some point you abandon looking for a general solution, and employ an expert editor who can advise you on the right style. If you're writing for a small town newspaper far away from the Netherlands and get this wrong because you don't have that expert editor, that's OK, you tried. But if you're Facebook and you have 10 million Dutch customers and you get this wrong setting the policy for the most prominent few words on the whole site, you can afford to have better standards than that.
Some names change capitalisation when the last name is used by itself vs full name for example.
In some languages a name affect the words around it in a sentence (for a random example, an "o" in Spanish (or) becomes "u" when the next word starts by the "o" sound -> "Carlos o Maria", but "Carlos u Oscar".
In general, for a sufficiently large and well-localised application you will need to modify or parse the name at some point. Not sure that a library can do that properly though.
Meaning, if all programms would use UTF-8, fine. But they don't. But character -encoding is somewhat complicated, because there are a lot of languages out there. Some who even need more than 2 bytes per character, so you get special cases, which break on another system etc.
Sometimes when people think they are using UTF-8, they aren’t. I’m not sure if that’s because they are incompetent or if their tooling lies to them, but I’ve gone through soooooo many weird encodings over the years trying to match what was specified as standard UTF-8.