This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: parsing and translating xml:lang attribute
- To: "'xsl-list at mulberrytech dot com'" <xsl-list at mulberrytech dot com>
- Subject: RE: parsing and translating xml:lang attribute
- From: Kay Michael <Michael dot Kay at icl dot com>
- Date: Wed, 25 Oct 2000 10:05:39 +0100
- Reply-To: xsl-list at mulberrytech dot com
> The second issue is that the values for this attribute are
> conforming to
> the two-digit language abbreviations according to ISO 639,
> but my target
> DTD uses three-digit language strings according to ISO 639-2
> (e. g. 'de'
> would be translated into 'ger'). I do have a list of both,
> but I wonder how
> to technically best achieve the mapping using XSL.
Can't help you with your first problem, but for the second, try using a
look-up table in a separate document languages.xml:
<languages>
<language a2="de" a3="ger"/>
etc
</languages>
Then write
<xsl:key name="langkey" match="language" use="@a2">
and
<xsl:for-each select="document('language.xml')">
<xsl:value-of select="key('langkey', $two-letter-code)/@a3"/>
</xsl:for-each>
to get the three letter code.
Mike Kay
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list