Skip to main content
2 of 4
add a first pass at a popup
Makyen
  • 798
  • 1
  • 7
  • 10

Users enter information in upper case either intentionally, or unintentionally (e.g. they happen to have CAPSLOCK activated). Several other answers mention a variety of reasons for why the user may be doing so intentionally. If it is unintentional, then the user probably wants to know about it, and correct it.

As others have mentioned, designing an algorithm that 100% accurately converts from upper case to proper case is effectively impossible. It is impossible because the proper case of a name with exactly the same spelling can vary depending on various factors including national origin, culture, the cultural history of the person's family, personal preference, etc. In other words, the same name can be capitalized in multiple ways. This is particularly true for nobility particles, etc.

However, you can, algorithmically, determine a limited set of possible common ways that a name will be capitalized.

What to do when you get a name: Offer a pop-up with choices from which the user can select:

In the situation that you describe where your system uses the name in ways that make it better to have the user enter a version that is in proper case, I would either always, or only when detecting that the name was not in proper case (e.g. that is 50% uppercase, or 100% lower case) pop-up a selection for the user to choose the name from a selection of possible capitalizations, or edit the name to what they desire.

For example:

User entered: JOHN VON DOE

Then a pop-up like:

Example pop-up

Have the text in the usage example change based on the selection the user has made so they get immediate feedback as to what it will look like.

By presenting a pop-up you get the user to provide you with the proper capitalization of the name at the time of entry and inform them of the desire to have names entered in that manner. Having the immediate feedback to the user that the format they used is not desirable in this system will result in them learning to enter the names in proper case for your system. Having the option of keeping the name exactly the way the user entered it permits them to override what the system thinks might be desired with what they entered. Having the textbox populated with the entry that is closest to what may be the correct capitalization should result in the user having to put the least effort into any addition editing.

Makyen
  • 798
  • 1
  • 7
  • 10