Hello,
I was looking in the RFC 4646 in term of letter case for language-code.
Instead of defining language-code in all lowercase, it should use uppercase for the region part.
Example zh-hans => zh-Hans.
So I start talking in this issue : http://drupal.org/node/1231402#comment-7172196
The idea is to stay consistent, in most of the other third-part they follow the recommendation, so when we want to integrate something, we are not consistent, I think is a best practice to follow those recommendation.
Thanks