Should zh be Simplified or Traditional Chinese?
According to W3C (and the IANA subtag registry) zh
is a "macrolanguage". As such it has no default writing system and a more specific variant should be used. However, it gives an example of common usage as follows:
When zh is used on its own, it is usually used to mean the predominant
language in the encompassed range, although this is not explicitly
specified in BCP 47. For example, conventionally zh is considered to
represent the predominant, Mandarin form of Chinese.
source: https://www.w3.org/International/articles/language-tags/
It seems that zh might be used in legacy applications to mean Mandarin. Although the language tag cmn has no default writing system either, so that still doesn't answer the question as to which script it should be written in.
I note that my iPhone (iOS 11) allows me to set the system language to zh-Hans, zh-Hant and zh-Hant-HK only, but has no Mandarin option.
Disclamer: I'm neither an iOS developer nor do I understand Chinese. I'm just a language tag nerd.