code: @Nullable
    private static String _unifySinglePart (@Nonnull final String sPart, @Nonnull final Locale aSortLocale)
    {
      // empty name?
      String s = sPart.trim ();
      final int nLength = s.length ();
      if (nLength == 0)
        return null;
  
      // all upper case name?
      if (nLength == 1)
        return s.toUpperCase (aSortLocale);
  
      // uppercase first only
      s = s.substring (0, 1).toUpperCase (aSortLocale) + s.substring (1).toLowerCase (aSortLocale);
  
      // special cases: nobiliary particles ;-)
      if (ArrayHelper.contains (NOBILIARY_PARTICLES, s))
        s = s.toLowerCase (aSortLocale);
  
      return s;
    }
docs: Unify a single name part. Performs the following transformations:
  <ul>
  <li>Remove leading and trailing whitespaces</li>
  <li>If the name is all upper case, down case all except the first character
  </li>
  </ul>
  
  @param sPart
  The string part to be unified
  @param aSortLocale
  The local to use (for case changing)
  @return The unified part