Kieli URL:ssä

Lue myös kaksiosaisen artikkelisarjan toinen osa: .

Kun kielitieto halutaan näyttää URL:ssä, miten ja missä kohtaa se ilmaistaan?

Monenlaisia kielikoodeja

Kielen voi useimmiten ilmaista riittävällä tarkkuudella kahdella merkillä. fi kertoo, että kieli on suomea. sv kertoo ruotsin olevan kielen. Toisin kuin suomea, ruotsia puhutaan hiukan eri tavalla useammassa maassa. On kuitenkin äärimmäisen harvinaista, että samasta dokumentista on olemassa versio sekä suomenruotsiksi että riikinruotsiksi.

Kaksi- tai jopa sitäkin useampiosaista koodia käytetään näissä harvinaisissa tapauksissa: Esimerkiksi sv-FI ilmaisee suomenruotsin. Käytäntö on kirjoittaa maakoodi isolla, primäärikieli pienellä, mutta näillä ei ole teknistä merkitystä. URL:ssä kaikkein käytettävintä on näyttää vain pieniä kirjaimia.

Ensisijaisesti kannattaa yksinkertaisuuden nimissä siis käyttää kaksimerkkistä kielikoodia ja käyttää moniosaisiakin vain silloin kuin niitä todella tarvitaan.

Maa vai kieli?

En ole ollenkaan varma, onko HTML:n tai XML:n viittaamien RFC:iden maakoodi tarkoitettu ilmaisemaan maata poliittisena tai juridisena entiteettinä. Mikäli ei, sitä ei kannata sellaiseen URL:ssäkään sotkea.

Vaikkapa kansainvälisen verkkokaupan tai tuotekatalogin sisältö ei riipu niinkään kielestä vaan maista joihin yritys myy tuotteitaan. Niinpä tällaisessa tapauksessa loogisempaa olisi kielivalinnan sijaan tai lisäksi tarjota maavalintaa ja pitää se kielikoodista irrallaan URL:ssä. Maan tunnistamisen voi tehdä automaattisesti IP-osoitteen perusteella.

Kielikoodin sijoittaminen URL:ään

Ei ole olemassa mitään standardia siitä, mihin kohtaan URL:ää kielikoodi tulisi sijoittaa.

W3C:n ja Apachen käyttämä konventio on ilmaista kieli lisäämällä se dokumentin nimen perään, tiedostopäätteen tapaan. Esimerkiksi: “http://example.org/Provider/Style/URI.en” Tämä tietysti vaatii, että URL ei pääty kauttaviivaan. Yksinkertaisin URL kyllä olisi kauttaviivaton, joten siinä mielessä ongelmaa ei ole.

Toinen yleinen käytäntö on lisätä kielikoodi URL:n polun alkuun. Se on vahvempi kannanotto kielikoodin merkityksellisyydestä ja sitä kautta vihjaa että osoite ei toimisi ilman sitä.

Kieli host-nimessä

Kieli kytkeytyy maahan, ja kaikilla mailla on oma TLD:nsä, mutta monen domainin hankkiminen ja hallinta vaatii jo melkoisesti resursseja, eikä muutenkaan ratkaise ongelmaa täysin.

Toinen vaihtoehto on sijoittaa kielikoodi alidomainiin, jolloin ei tule ongelmia poliittisten rajojen kanssa. Alidomainienkin hallinta voi olla liian järeä ratkaisu useimmissa tapauksissa. Alidomainit eivät käsitteenä ole kaikille tuttuja ja siten osoitteet voivat vaikuttaa joistakin käyttäjistä oudoilta.

Yhteenveto

Miten siis toimia? Kaikki riippuu tietenkin sivuston sisällöstä ja tarkoituksesta. Yksinkertainen kielikoodi polun alussa riittää useimmiten hyvin.

Mutta onko kielikoodin näyttävä aina osoitteessa ja miten voimme automaattisesti tunnistaa käyttäjän kielen ja onko se ylipäätään hyvä ratkaisu? Näihin kysymyksiin vastaa .