Yep. Then there are the second level codes such as en-us (American English) not to mention whatever you write to denote the differences between Chinese in various dialects written in simplified or traditional characters or the various non-Chinese languages in China that may be written using Chinese characters or with some other characters such as Roman or Cyrillic.
Thus the system is obscure to the layman but for the pro or serious amateur you find the standard is not well defined at all.