HTML-spesikaation lang
-määritettä koskeva kohta
sanoo, että tämä määrite ilmoittaa
elementin sisällön ja määritteiden kielen.
XML-spesifikaation kuvaus xml:lang
-määritteestä
esittää samanlaisen periaatteen hiukan toisin sanoin.
Tätä lienee tulkittava
niin, että se vaikuttaa myös määritelistassa taaksepäin, joten esimerkiksi
<a href="foo.html" title="Hello world" lang="en">
ilmoittaa, että myös teksti "Hello world" on
englantia. Aika näyttää, tulevatko selaimet ja muut ohjelmat toimimaan
tämän mukaan. Ei ole vaikeaa kuvitella, että huolimattoman
ohjelmoinnin takia tapahtuu toisin.
Tästä seuraa ongelma: Entäs jos meillä on esimerkiksi linkki, jonka
linkkiteksti on suomea mutta title
-määrite englantia, koska
linkki viittaa englanninkieliseen dokumenttiin? Tilanne ei ole mitenkään
keinotekoinen, vaan usein on hyödyllistä antaa
title
-määritteellä vihje siitä, mihin linkki viittaa,
ja vihjeen englanninkielisyys on lisävihje. Mutta jos kirjoitamme
suomenkieliseen dokumenttiin esimerkiksi
<a href="http://www.faqs.org/rfcs/rfc3066.html"
lang="en" title="Tags for the Identification of Languages">RFC 3066</a>
niin silloin kyllä ohjelmille kerrotaan oikein, mikä on
title
-määritteen kieli (ja tämän ansiosta puhesyntetisaattori
voisi lukea sen oikein) mutta samalla väitetään, että merkkijono
RFC 3066 on englantia. Tästä taas seuraisi, että puhesyntetisaattori
tekisi merkkauksen pohjalta tulkittuna oikein lukiessaan linkin nimen
englanniksi, siis suunnilleen "aar ef sii thrii ou siks siks", ja tämä olisi
aika häiritsevää.
Jos riski tuntuu todelliselta, niin sen voisi periaatteessa
välttää käyttämällä lisämerkkausta, jossa elementin sisällä kerrotaan
sisällön kieli:
<a href="http://www.faqs.org/rfcs/rfc3066.html"
lang="en" title="Tags for the Identification of Languages"><span lang="fi">RFC 3066</span></a>
Eri asia sitten on, moniko jaksaa niin tehdä. Helpointa tällaisessa
tilanteessa on jättää lang
-määrite kokonaan pois.