Kielimerkkaus:

Kielikoodit (kielten tunnukset)

Tämä osa käsittelee koodeja (tunnuksia), joita voidaan käyttää asiakirjan tai sen osan kielen ilmoittamiseen. Tämä on suhteellisen riippumaton aineiston varsinaisesta teemasta, kielimerkkauksesta, ja koskee kielikoodien käyttöä hyvinkin monenlaisissa yhteyksissä.

Sisältö:

Kielikoodit: johdanto

Eri yhteyksissä on välttämätöntä tai ainakin hyödyllistä voida viitata eri kieliin yksikäsitteisillä koodeilla. Erityisen tarpeellista tämä on teknisissä yhteyksissä, joissa tietokoneohjelmat on saatava käsittelemään tekstiä eri tavoilla sen mukaan, mikä sen kieli on. Erityisesti kirjastoalalla on usein välttämätöntä tallentaa koodattu tieto julkaisun kielestä, jotta esimerkiksi voidaan etsiä määrätynkielisiä julkaisuja.

Seuraavassa on muutamien kielten kaksikirjaimisia koodeja (ISO 639:n mukaan):

Esimerkiksi viittomakielille ja muille saamen kielille kuin pohjoissaamelle on vain kolmikirjaimiset koodit. Tosin SFS-ISO 639:n mukaan koodin se merkitys olisi yleisesti 'saame', mutta ISO 639-2:n mukaan se = sme = Northern Sami = sami du Nord.

Tässä on käytetty ilmaisua "kielikoodi", joka on suora käännös englannin ilmaisusta "language code". Kuitenkin sanan "koodi" monimerkityksisyyden vuoksi voisi esimerkiksi "kielitunnus" olla parempi sana.

Sivu Kielten nimiä ja koodeja sisältää luettelon seuraavassa kuvattavan ISO 639 -standardin mukaisista kielikoodeista sekä kielten nimistä englanniksi, ranskaksi ja suomeksi.

Standardi ISO 639

Kansainvälinen standardi kielikoodeille on ISO 639, Codes for the representation of names of languages. Tarkemmin sanoen kyseessä on kaksi standardia, ISO 639-1, joka määrittelee kaksikirjaimiset koodit, englanniksi alpha-2 code (esimerkiksi sv = ruotsi), ja ISO 639-2, joka määrittelee kolmikirjaimiset koodit, englanniksi alpha-3 code (esimerkiksi swe = ruotsi). Jälkimmäisessä on joillekin kielille kaksi vaihtoehtoista koodia, bibliografinen ja terminologinen. Standardit ISO 639-1 ja ISO 639-2 eivät ole siinä mielessä yhteensopivia, että kolmikirjaimisen koodin kaksi ensimmäistä kirjainta olisivat aina samat kuin kyseisen kielen kaksikirjaiminen koodi. Toisaalta samassa yhteydessä voidaan käyttää molempia, koska koodin pituus ilmaisee, kumman standardin mukaan se pitää tulkita.

Alun perin (vuonna 1988) tehtiin vain ISO 639, joka määritteli kaksimerkkiset koodit; sitä oli edeltänyt vuonna 1967 tehty ISO/R 639, Symbols for languages, countries and authorities . Myöhemmin, vuonna 1998, tehtiin ISO 639-2. Vasta 2002-07-18 vahvistettiin vanhan ISO 639:n korvaava ISO 639-1, joskin se oli ollut luonnoksena (viime vaiheessa ns. DIS-tasoisena) olemassa jo huomattavasti aiemmin. Se ilmoittaa koodien lisäksi kielten nimet englanniksi, ranskaksi ja kielellä itsellään. Webissä on (PDF-muodossa) sen lopullinen luonnos ISO/FDIS 639-1.

ISO 639-1:n pohjalta on SFS laatinut vuonna 1993 Suomen kansallisen standardin, SFS-ISO 639, Kielten nimien tunnukset. Se mainitsee myös kolmikirjaimisia koodeja, mutta itse standardiin kuulumattomana. Siihen on otettu kaksikirjaimiset tunnukset muutamalle kielelle, joilla sellaisia tunnuksia ei kansainvälisessä standardissa ollut: kirjanorja (nb), uusnorja (nn) ja saame (se). Näistä kaksi ensin mainittua kuuluvat nykyisin myös ISO 639-1:een, ja se on siinä nimenomaan pohjoissaamen koodi. Mainittakoon, että kyseisessä standardissa on myös laaja kooste kielten nimistä suomeksi ja muilla kielillä.

Tilastokeskuksen kuvauksessa kielikoodeissa on lyhyesti kuvattu kielikoodijärjestelmiä. Siinä on myös suomenkielisiä nimiä eräille kielille, joita SFS-ISO 639 ei sisällä.

ISO 639:n kolmikirjainkoodien virallinen sivusto sisältää myös kaksikirjainkoodit: ISO 639-2 Registration Authority. Tavallisimmin tarvittava osa siitä lienee kooste kielikoodeista kielen englanninkielisen nimen mukaan järjestettyinä. Kyseisessä sivustossa on myös itse ISO 639-2 -standardi.

ISO 639-2 määrittelee kaksi koodia erikoistarkoituksiin mul, joka tarkoittaa monikielisyyttä, ja und, joka tarkoittaa epämääräistä kieltä. Niiden käyttö on aika ongelmallista. Aihetta käsitellään jäljempänä kohdassa Miten ilmaistaan, ettei kieltä voida ilmaista?

Kaksikirjaimisten koodien järjestelmä ei ole riittävä, koska vain varsin pienelle osalle maailman tuhansista kielistä on määritelty ISO 639-1-koodi eikä kahden kirjaimen mahdollisia yhdistelmiä edes ole tarpeeksi. Toisaalta kaksikirjaimiset koodit ovat toistaiseksi yleisemmin käytettyjä ja usein myös tietokoneohjelmien yleisemmin tunnistamia kuin kolmikirjaimiset. Lisäksi Internetin kielikoodikäytäntöjen tulee aina käyttää kaksikirjaimista koodia, jos kielellä sellainen on. (Tällöin ei myöskään synny kysymystä siitä, käytetäänkö bibliografista vai terminologista kolmikirjainkoodia, sillä niillä kielillä, joiden osalta ne poikkeavat toisistaan, on myös kaksikirjainkoodit.)

Peter Constable on kirjoittanut laajan analyysin Toward a Model for Language Identification and An Analysis of ISO 639, joka käsittelee kielikoodijärjestelmien ongelmia ja jonka Unicode-konsortio on julkaissut sarjassa Unicode Technical Notes.

Erikoista on, että ISO ja eräät muut standardointiorganisaatiot itse käyttävät yksikirjaimisia kielikoodeja joissakin yhteyksissä. Esimerkiksi jonkin standardin erityisen kieliversion koodi voi olla seuraavantapainen: "EN 1828:2002 (E)", missä "EN" ilmaisee standardien luokan (tässä 'CENin vahvistama eurooppalainen standardi'), "1828" on numero luokan sisällä, "2002" on vahvistamisvuosi, jonka avulla voidaan erottaa sisällöltään erilaiset versiot toisistaan, ja "(E)" ilmoittaa kieliversion (tässä englannin). Selitys tälle lienee, että koodit on haluttu pitää lyhyinä ja kyseisissä yhteyksissä tulevat kyseeseen vain muutamat kielet eli yksi kirjain riittää. Mutta tämä on outo poikkeus.

Muita kielikoodijärjestelmiä

Monissa yhteyksissä käytetään myös muita kielikoodijärjestelmiä kuin ISO 639:n mukaisia. Osaa niistä on käytetty melko vakiintuneestikin eri aloilla, joskin ehkä enemmänkin kokonaisten dokumenttien kielen ilmoittamiseen kuin kielimerkkauksessa.

Erityisesti laaja Ethnologue-tietokanta käyttää ns. SIL-koodia, joka on kolmikirjaiminen mutta poikkeaa ISO 639-2:sta joissakin suhteissa ja ennen muuta sisältää paljon suuremman määrän koodeja, yli 7 000.

Toinen laaja (yli 21 000 kieltä ja murretta) kielikoodien järjestelmä on Linguasphere. Ison-Britannian standardointijärjestö on ehdottanut kansainvälisen standardin laatimista sen pohjalle.

Kirjastoalalla on paljon käytetty MARC-kielikoodeja. Se on sovitettu yhteen ISO 639-2:n kanssa.

Käyttöjärjestelmissä ja muissa tietokoneohjelmissa on usein erilaisia omia kielikoodijärjestelmiä. Esimerkiksi Windowsissa on sisäisesti käytössä sekä kirjain- että numerokoodeja. Eräs sellainen järjestelmä sisältää koodinimiä kuten LANG_FINNISH ja koodinumeroita, jotka esitetään heksadesimaalisina, esim. suomen koodi on 0x0b eli desimaalisena 11. Näitä sekä Mac-järjestelmien kielikoodeja kuvailee dokumentti Language Codes: ISO 639, Microsoft and Macintosh. Toisaalta Microsoftin omassa dokumentaatiossa on kuvattu useita muita kielikoodijärjestelmiä. Ks. esim. List of Windows XP's Three Letter Acronyms for Languages, jossa pohjana ovat ISO 639:n kaksikirjainkoodit, joihin on lisätty kolmas kirjain, joka osoittaa maakohtaisen tai muun muunnelman.

RTF-tiedostomuodon dokumentaatio (erityisesti RTF:n version 1.5 spesifikaatio) puolestaan käyttää ilmaisua "the standard languages used by Microsoft" ja esittää taulukon, jossa esimerkiksi suomen kielen koodi on 0x040b. Tämän mukaisesti näyttää toimivan ainakin Word 95: kun siinä esimerkiksi asettaa dokumentin yleiskieleksi jonkin muun kielen kuin suomen ja sitten maalaa osan tekstistä ja asettaa sen kieleksi suomen, niin RTF-muotoon tallennuksessa tiedostoon menee
{\lang 1035 merkitty tekstinosa}
ja heksadesimaaliluku 0x040b on desimaalisena 1035.

Runsaasti tietoja erilaisista kielikoodijärjestelmistä on edellä mainitussa dokumentissa Language Identifiers in the Markup Context. Se on laaja ja informatiivinen, joskin osittain vaikealukuinen muun muassa siksi, että siinä on eri aikoina kirjoitettuja osia. Lisäksi lopussa olevat otteet eri lähteistä ovat käänteisessä aikajärjestyksessä, vaikka ne olisi luultavasti parempi lukea vanhimmista uusimpiin.

Kielikoodit Dublin Coressa

Metadataa koskevan Dublin Core -suosituksen (Dublin Core Metadata Element Set, Versio 1.1, Tallenteiden kuvailuformaatti, kohta 12 Kieli) mukaan käytetään kaksikirjaimisia koodeja, esimerkiksi (HTML:ssä metadataa esitettäessä)
<meta name="DC.Language" content="en">
Kyseisessä määrittelyssä on tältä osin kummallisuuksia: siinä väitetään virheellisesti RFC 1766:ta "Internet standardiksi" (ks. Mitä RFC:t ovat), puhutaan ISO 639:stä nimenomaan ja vain kaksimerkkiset koodit määrittelevänä mutta silti viitataan linkillä ISO 639-2:een ja lisäksi annetaan virheellinen esimerkki en-uk; Ison-Britannian ja Pohjois-Irlannin Yhdistyneen kuningaskunnan maakoodi on GB, ei UK. Nämä kummallisuudet ovat mukana myös 2001-04-12 päivätyssä suosituksessa Using Dublin Core (kohta 4.15 Language), paitsi että se ei viittaa ISO 639-2:een vaan Oasis-dokumenttiin Code for the Representation of the Names of Languages. From ISO 639, revised 1989, joka käsittelee kaksikirjaimisia koodeja mutta viittaa uudempaankin informaatioon, erityisesti (edellä jo mainitsemaamme) katsaukseen Language Identifiers in the Markup Context.

Dokumentti Dublin Core Qualifiers määrittelee merkintäjärjestelmän (encoding scheme) käsitteen. Lyhyesti sanottuna sillä tarkoitetaan sitä menetelmää (järjestelmää), jonka mukaan dokumentin jonkin ominaisuuden arvot esitetään koodatulla tavalla. Kielikoodien yhteydessä se tarkoittaa jotakin erityistä kielikoodien järjestelmää, kuten RFC 1766. Itse merkintäjärjestelmilläkin on Dublin Coressa koodit, kuten rfc1766 ja ISO639-2. Ilmeisestikin ajatuksena on, että niistä ensin mainittu olisi ensisijainen eli sitä olisi käytettävä, jos mahdollista.

Suomalaisen Julkisen hallinnon suosituksen JHS 143, Asiakirjojen kuvailuformaatti, mukaisessa metadatassa on kaksikirjaiminen koodi ainoa sallittu vaihtoehto. Toisaalta vuonna 2001 vahvistettu kansallinen standardi SFS 5895, Dublin Core -metadataformaatin suomalainen versio, ilmoittaa, että language-kentän merkintäjärjestelmiä ovat ISO 639-2 ja RFC 1766 sekä kansallinen merkintäjärjestelmä SFS-ISO 639. Nämä on lueteltu tässä järjestyksessä mutta esittämättä erityistä suositusta siitä, miten valinta niiden välillä tehdään. Standardi viittaa yhdysvaltalaiseen standardiin ANSI/NISO Z39.85 Dublin Core Metadata Element Set, jossa sanotaan:

Comment: Recommended best practice is to use RFC 3066 [RFC3066], which, in conjunction with ISO 639 [ISO639], defines two-and three-letter primary language tags with optional subtags. Examples include "en" or "eng" English, "akk" for Akkadian, and "en-GB" for English used in the United Kingdom.

Maakoodit ja kielikoodit

Kielikoodit on erotettava maakoodeista. Sekaannukset ovat tavallisia muun muassa siksi, että joskus maakoodi on sama kuin maan pääkielen koodi; esimerkiksi fi on sekä suomen kielen koodi että Suomen maakoodi. Maakoodeja käsittelee dokumentti Maailman maat - nimet, koodit, kuvauksia.

Suositus on, että maakoodi kirjoitetaan isoin kirjaimin, kielikoodi pienin kirjaimin. Tämä ei kuitenkaan ratkaise ilmaisun merkitystä. Kieli- ja maakoodeissa isojen ja pienten kirjainten välisellä erolla ei ole vaikutusta koodin merkitykseen. Se, tulkitaanko kirjainjono maakoodiksi, kielikoodiksi vai joksikin muuksi, riippuu käyttöyhteydestä eli siitä, mitä jossakin tekstin tai lomakkeen kohdassa, tietokannan kentässä tms. jonkin sopimuksen tai muun määrittelyn mukaan on.

Useissa yhteyksissä voidaan kielikoodin perään liittää maakoodi. Tällöin ilmaisu tarkoittaa kielen kyseisessä maassa puhuttua muotoa. Valitettavasti on erilaisia käytäntöjä sen suhteen, miten tällainen ilmaisu tarkkaan ottaen kirjoitetaan eli mikä on välissä käytettävä erotinmerkki. SFS/ISO 639:n mukaan käytetään välilyöntiä (esim. sv FI 'suomenruotsi'), aiemmin mainitussa DocBookissa alaviivaa (esim. sv_FI) ja seuraavassa kuvattavien Internet-sääntöjen mukaan yhdysmerkkiä (esim. sv-FI).

Internetin kielikoodikäytännöt

Internetissä on pyritty siihen, että kielimuodon voisi ilmoittaa tarkemminkin. Vuonna 1995 laadittu RFC 1766, Tags for the Identification of Languages, kuvasi järjestelmän, jossa kielikoodi (language tag) koostuu peruskoodista (primary tag) ja sitä mahdollisesti seuraavasta yhdysmerkistä ja lisäkoodista (subtag). Sen mukaan peruskoodi on normaalisti ISO 639-1:n mukainen kaksikirjainkoodi. Lisäksi on kaksi erityiskoodia: i-kirjain, jonka alaisiksi lisäkoodeiksi voidaan erikseen rekisteröidä koodeja eri kielille, ja x-kirjain, joka on varattu ns. yksityiseen käyttöön eli viestinnän osapuolten keskenään sopimaa käyttöä varten. Jos lisäkoodi on kaksikirjaiminen, se tulkitaan maakoodiksi ISO 3166-1:n mukaan. Esimerkiksi en-US tarkoittaa amerikanenglantia (Yhdysvalloissa puhuttua englantia) ja en-GB brittienglantia. Muunlaisia, tarkemmin sanoen 3 - 8 merkin mittaisia lisäkoodeja voi rekisteröidä IANA:n ylläpitämään rekisteriin, josta on olemassa luetteloversio ja lista viittauksia varsinaisiin rekisteröintitietoihin. Ehdotukset lisäyksiksi rekisteriin käsitellään listalla ietf-languages. Hyödyllinen tiivistelmätaulukko on dokumentissa RFC 3066 Language code assignments.

Useat Internet-protokollat viittaavat RFC 1766:een. Käytännössä tällaiset viittaukset on usein tulkittava niin, että niissä viitataan yleisemmin kielikoodeja käsitteleviin, kulloinkin voimassa oleviin RFC:ihin. Esimerkiksi HTML 4.01:n määrittely sanoo: "[RFC1766] defines and explains the language codes that must be used in HTML documents." Toisaalta sen References-osa viittaa RFC 1766:n uusimistyöhön, ja XML:n määrittelyn kohta Language Identification jo selvästi sanoo xml:lang-määritteestä: "The values of the attribute are language identifiers as defined by [IETF RFC 1766], Tags for the Identification of Languages, or its successor on the IETF Standards Track.". - RFC:t ovat numeroitu sarja Internetiin liittyviä spesifikaatioita ja muita dokumentteja. Aiheesta kertoo lisää dokumentti Mitä RFC:t ovat.

Sittemmin laadittiin kaksi uutta RFC:tä, jotka korvaavat RFC 1766:n, nimittäin Tags for the Identification of Languages (RFC 3066) ja Content Language Headers (RFC 3282). Niistä ensin mainittu määrittelee itse kielikoodien järjestelmän. Keskeiset periaatteet ovat samat kuin RFC 1766:ssa, mutta kolmikirjaimiset koodit on varattu käytettäviksi ISO 639-2:n mukaan. Kielistä, joille on kaksikirjaiminen koodi, tulee käyttää sitä eikä kolmikirjaimista, siis esimerkiksi suomesta koodia fi eikä fin. Toistaiseksi käytetään Internetissä lähes yksinomaan kaksikirjaimisia koodeja.

Syyskuussa 2006 mainitut RFC:t korvattiin määrittelyillä Tags for Identifying Languages (RFC 4646) ja Matching of Language Tags (RFC 4647). Niihin on sopivinta viitata tunnuksilla BCP 46 ja BCP 47, koska BCP-numero (BCP = Best Current Practice) ei muutu, toisin kuin RFC-numero, jos määrittelystä myöhemmin tehdään uusi versio.

Kielikoodit viestien otsaketiedoissa ja mediatyypeissä

Edellä mainittu RFC 3282 käsittelee kielen ilmoittamista niin sanotuissa otsakkeissa (headers) esimerkiksi Webin tiedonsiirtoprotokollassa HTTP:ssä. Otsakkeet eivät yleensä näy käyttäjille, eivätkä useimmat ehkä edes tiedä, miten ne saa näkyville, mutta ne voisivat ohjata ohjelmia, joilla dokumentteja tai viestejä käsitellään, esimerkiksi hakukoneita ja puhesyntetisaattoreita.

Tämä on kuitenkin toistaiseksi aika puhtaasti vain teoriaa. Lisäksi teoriassakin tämän otsakkeen merkitys on epäselvä.

Esimerkiksi otsake
Content-Language: fi
kertoo RFC 2616:n mukaan, että dokumentti on tarkoitettu suomen kieltä osaaville; käytännössä tämä merkitsee yleensä sitä, että dokumentin pääkieli on suomi. Jos kyseisessä otsakkeessa luetellaan useita kieliä, se tarkoittaa, että dokumentti on tarkoitettu ihmisille, jotka osaavat ainakin yhtä luetelluista kielistä. Esimerkiksi Content-Language: fi,sv sopisi siis dokumentille, joka sisältää saman tekstin sekä suomeksi että ruotsiksi. RFC 3282:n mukaan tämä otsake ilmoittaa dokumentin kielen tai kielet, mikä on tietysti varsin pitkälle sama asia. Mutta se voitaisiin tulkita myös niin, että Content-Language: fi,sv sopisi myös dokumentille, joka sisältää suuren määrän ruotsinkielisiä paikannimiä ja lyhyet suomenkieliset selostukset.

Vaikka esimerkiksi HTTP-otsake Content-Language: fi ja HTML-merkkaus <html lang="fi"> voivat vaikuttaa samaa tarkoittavilta, kyse on kuitenkin periaatteessa erillisistä asioista. Esimerkiksi jos HTML-dokumentissa on vain joukko esineiden kuvia ja suomenkielisiä nimiä, on epäilemättä oikein merkata sen kieleksi <html lang="fi">. Mutta Content-Language: fi ei välttämättä olisi oikein, jos se tulkitaan määrittelyjen mukaan eli niin, että dokumentin kohdeyleisön kieli on suomi. Voisihan dokumentti olla tarkoitettu opiskelutarkoituksiin ihmisille, jotka eivät ennestään lainkaan osaa suomea!

Otsakkeet koskevat dokumenttia kokonaisuutena. Niillä ei siis voida ilmoittaa dokumentin osien kieltä. Toisaalta otsakkeita voidaan käyttää silloinkin, kun dokumentin muoto ei salli kielen ilmoittamista kielimerkkauksella, esimerkiksi kun dokumentti on pelkkää tekstiä (eikä esimerkiksi HTML-muotoinen) tai äänite tai video.

Koko dokumentin kielellä on keskeinen merkitys muun muassa niin sanotussa kielivalintamekanismissa. Tällöin kieltä ei kuitenkaan ilmaista HTTP-otsakkeessa vaan palvelimen sisäisessä määrittelyiedostossa. Aihetta käsittelee dokumentti Tekniikoita monikielisiä Web-sivustoja varten.

Dokumentin kieli voidaan ilmoittaa myös mediatyypin language-parametrilla. Esimerkiksi
text/plain; language=fi
ilmoittaa, että kyseessä on pelkkää tekstiä oleva dokumentti, jonka kieli on suomi. Kyseinen parametri on kuvattu dokumentissa RFC 2987.

Suositus JHS 143 sanoo metadatan kielikentästä, että se ilmoittaa "asiakirjan kielen". Ja se lisää: "Jos asiakirjassa on käytetty useita kieliä voidaan tätä kenttää toistaa." Epäselvää on, onko järjestyksellä tällöin merkitystä ja voidaanko kenttää käyttää, jos jotakin kieltä on vain vähän (esimerkiksi vain yksi sana).

Riittääkö kielikoodi?

Kielikoodi ei useinkaan anna riittävää tietoa tekstin kielestä eri tarkoituksia varten, varsinkaan kehittynyttä tekstien ohjelmallista käsittelyä varten, ei vaikka kielikoodien järjestelmässä mentäisiin murteiden tasolle. Asiakirjan kieltä tarkemmin kuvaavien tietojen esittäminen yhtenäisten koodijärjestelmien on kuitenkin vasta kehitteillä.

Ilmeisin tarve on käytetyn kirjoitusjärjestelmän tietäminen. Tätä käsitellään jäljempänä kohdassa Kirjoitusjärjestelmien vaikutus. Käytännössä nykyisin ohjelmat tehdään yleensä olettaen, että kutakin kieltä kirjoitetaan vain yhtä kirjoitusjärjestelmää käyttäen, mikä ei pidä paikkaansa.

Kirjoitusjärjestelmistä onkin laadittu standardi ISO 15924, Code for the Representation of Names of Scripts. Se määrittelee nelikirjaimiset koodit, ks. sivustoa ISO 15924 Registration Authority. Koodaus on melko karkea; esimerkiksi Latn tarkoittaa yleisesti latinalaista (latinalaisperäistä) kirjoitusjärjestelmää, vaikka sitä käyttävien kielten kuten latinan, saksan ja suomen järjestelmissä on paljon eroja. Erityisesti tämä koodi ei tee eroa vaikkapa kyrillisen kirjoituksen erilaisten translitterointien (latinisointien) välillä. Huomattakoon, että esimerkiksi HTML:ssä ei ole mitään elementtiä eikä määritettä, jolla tekstin osan kirjoitusjärjestelmän voisi ilmaista. Sen sijaan standardi esittää esimerkkinä, että HTML:ssä voisi ilmoittaa koko dokumentin kirjoitusjärjestelmän meta-elementillä tyyliin
<meta name="Content-Script" content="Latn">
On kuitenkin huomattava, että meta-elementtien järjestelmä on varsin säätelemätön ja epämääräinen. Jossain määrin hämäävää on, että kirjoitusjärjestelmästä käytetään englannissa nimitystä script, joka tarkoittaa toisaalta myös eräänlaisia tietokoneohjelmia, "skriptejä".

Automaattisessa kielenkääntämisessä, varsinkin sen kehittyneissä muodoissa, olisi olennaista tietää myös kielilaji ja -tyyli, esimerkiksi erottaen arkikieli ylevästä tyylistä. Joissakin kielissä on suuri ero oppineiston ja vähemmän kouluja käyneiden kielenkäytön välillä. Kielentutkijakin voisi olla kiinnostunut selvittämään suuresta tekstimassasta, miten usein siinä esiintyy vaikkapa asiatyylisessä tekstissä jokin sana, jonka oletetaan olevan siirtymässä slangista asiatyyliinkin. Silloin olisi hyvin olennaista, että kielilajit on jollain tapaa eroteltu helposti käsiteltävillä koodeilla, jotta voidaan tehokkaasti etsiä sellaisia esiintymiä.

Myös kielenkäytön tilanne voi olla olennainen esimerkiksi puhesynteesissä. Näytelmien yms. käsikirjoituksissa on usein sulkeissa huomautuksia tyyliin "(Kiivaasti)" tai "(Hiljaisella äänellä)". Nämä ovat eräänlaista merkkausta, mutta sellaista, jota on varsin hankala hyödyntää tekstien automaattisessa käsittelyssä, ellei päästä yhtenäiseen, koodattuun käytäntöön.

Erästä hanketta, jossa pyritään kieliasua kuvaavien koodien kehittämiseen, selostavat artikkeli Standards Bodies Face Growing Demand for Enhanced Language Identifier Systems ja ISO / TC 37 / SC 2 / WG 1:n piirissä laadittu (Word-muotoinen) dokumentti Additional language coding.


Kirjoittamisen ajankohta: 2002-06-23. Päivitetty viimeksi 2007-12-03.
Tämä sivu kuuluu Jukka "Yucca" Korpelan avoimeen tietosivustoon Datatekniikka ja viestintä.

Seuraava osa: Ongelmia kielimerkkauksen käytössä