If a two-letter ISO code is available, this will be the one in the registry.Otherwise the registry will contain one three-letter code. When RFC 5646 was published, over 7,000 new ISO 639-3 three-letter codes were added to the Subtag Registry.
The entries in the registry follow certain conventions with regard to upper and lower letter-casing.Because RFC 3066 didn't provide a list of valid subtags and just referred users to ISO 639, there was sometimes confusion about how to tag languages when the ISO code lists contained both two-letter and three-letter codes (and sometimes more than one three-letter code).Now all valid subtags are listed in a single IANA registry, which adopts only one value from the ISO lists per language.The subtags come from, and are kept up to date with, the list of ISO 15924 script codes.Only one script subtag can appear in a language tag, and it must immediately follow the language or any extlang subtag. You should only use script tags if they are necessary to make a distinction you need.XHTML/HTML coders (using editors or scripting), script developers (PHP, JSP, etc.), schema developers (DTDs, XML Schema, Relax NG, etc.), XSLT developers, Web project managers, standards implementers, and anyone who needs an overview of how language tags are constructed using BCP47. Unfortunately, it is not possible to tell, when reading RFC 1766 or RFC 3066 that these specifications have been obsoleted and replaced by other specifications.attribute for XML In both cases, language information is inherited by elements inside the one where the declaration was made, unless one of those elements declares a different language (in the same way). Most language tags consist of a two- or three-letter language subtag.As RFC 4646 co-author, Addison Phillips, writes, "For virtually any content that does not use a script tag today, it remains the best practice not to use one in the future".If you specifically want to indicate that content is not written, there is a subtag for that.Often this is followed by a two-letter or three-digit region subtag.RFC 5646 also allows for a number of additional subtags, where needed.