@ericf The format of Language tags are defined by [RFC5646](http://tools.ietf.org/html/rfc5646). These are different depending on languages, regions, and son. Some language tags composed of several subtags. Order of the subtags that are described are defined as `[language]-[script]-[region]-[variant]-[extension]-[private]`, but all subtags not required. Also single language tag format like `[language]` is valid. Therefore, the language tag called `en` is valid as `[language]` format, the language tag called `en-US` is valid as `[language]-[region]` format. `zh-Hans` and `zh-Hant` are comparable to `[language]-[script]` format, `zh-Hans-CN` and `zh-Hans-HK` are comparable to `[language]-[script]-[region]` format.

So I think these language tags are valid because they are registered in [IANA Language Subtag Registry](http://www.iana.org/assignments/language-subtag-registry/language-subtag-registry).