The LanguageCode Attribute Type is a data type defined by XHTML Modularisation 1.1, declared in the DTD as XML 1.0 type CDATA.
Reference: *W3C - XHTML Modularisation 1.1 - Attribute Types
An RFC3066 language code, e.g. "en" (Generic English), "en-GB" (British English), "en-US" (US English), "fr" (French), "he" (Hebrew)
Ref: *RFC3066
The language code consists of a primary subtag (e.g. "en" for English) followed by zero or more optional subtags. The subtags are separated by hyphens.
See the *W3C article on Language Tags in HTML and XML for more information.
Also available is a comprehensive list of *Codes for the Representation of Names of Languages. This list gives primary subtag codes only. (Note: if a two-letter code exists it should be used in preference to the three-letter code - see *RFC3066, section 2.3, point 2)
Note: the RFC3066 language tag specification has been superseded by *RFC4646 and *RFC4647. All related subtags may be found at the *IANA Language Subtag Registry.