The lang
function determines whether the context node matches the given language and returns boolean true or false.
Syntax
lang( string )
Arguments
string
- The language code or localization (language and country) code to be matched.
Returns
true
if the context node matches the given languages. Otherwise, false
.
Notes
- A node's language is determined by its
xml:lang
attribute. If the current node does not have anxml:lang
attribute, then the value of thexml:lang
attribute of the nearest ancestor that has anxml:lang
attribute will determine the current node's language. If the language cannot be determined (no ancestor has anxml:lang
attribute), this function will return false.
- If the given
string
does not specify a country code, this function will match nodes of that language with any country code. The converse is not true.
Given this fragment of XML:
<p xml:lang="en">I went up a floor.</p> <p xml:lang="en-GB">I took the lift.</p> <p xml:lang="en-US">I rode the elevator.</p>
And this part of an XSL template:
<xsl:value-of select="count(//p[lang('en')])" /> <xsl:value-of select="count(//p[lang('en-GB')])" /> <xsl:value-of select="count(//p[lang('en-US')])" /> <xsl:value-of select="count(//p[lang('de')])" />
The output might be:
3 1 1 0
Defined
Gecko support
Supported.