According to Apple's API Reference site, we should use
localizedUppercaseString() instead of
uppercaseString() to avoid problems with length of some words like straße in German.
On my French system the result is exactly the same for both cases:
set aString to "straße"
set asocString to current application's NSString's stringWithString:aString
(asocString's localizedUppercaseString()) as text
(asocString's uppercaseString()) as text
As my scripts will never run on another language than French or English, is it safe to use non localized versions of upper, lower and capitalized case?