We currently make normalization changes to name attributes (first, middle, last) due to age of existing sub-systems and limitations in the current Identity environment. We hope to introduce additional support for more complete character sets in the future.
Current Name normalization rules:
-
strip leading and trailing spaces
-
remove all numbers from names
-
remove all underscores from names
-
replace diacritics with their non-diacritic versions (upper & lower case)
-
replace German ß with ss
-
a name component like mcdonald should be McDonald
-
a name component like "de" or "del" or "la" or "los" should be all lowercase
-
a name component like "ii" or "iii" should all be uppercase
-
contains exactly TWO spaces. in this case convert to a hyphen
-
the name component contains space dash space. convert it to a regular dash
-
capitalize the first letter of each hyphenated part
-
contains apostrophe(s). capitalize the first letter of each apostrophe part
-
convert "a." -> "A." (capitalize letter followed by period (if it is 1,2, or 3 letters interleaved w/ periods))
-
capitalize within parentheses
-
remove extraneous multi-whitespace