HTML on World Wide Webin dokumenttienkuvauskieli, josta on olemassa lukuisia erilaisia versioita. HTML-standardin merkitys on siinä, että se määrittelee ne ilmaisukeinot, joita Web-dokumenttien tekijät voivat käyttää kohtuullisen luottavaisina siihen, että dokumentit ovat kaikkien katseltavissa. Webin alkuperäiseen ideaan kuuluu ajatus laite- ja ohjelmariippumattomuudesta. Tämän sovittaminen yhteen ilmaisuvoiman kanssa on tietenkin vaativa tehtävä.
Tarkasteltavana oleva HTML 4.0:n määrittely on vasta luonnos, joka on esitetty julkisesti arvioitavaksi. Sitä ei myöskään missään Web-selaimessa ole toteutettu kuin ehkä osittain. Luonnos on herättänyt melko paljon arvostelua.
Vaikka kuvien käytön vaikeudet johtuvat HTML:n teknisistä piirteistä vain pieneltä osin, HTML 4.0:ssa on IMG-elementin rinnalle, sitä suositeltavammaksi tuotu OBJECT-elementti. Sillä voidaan upottaa dokumenttiin kuvan lisäksi myös ääntä, liikkuvaa kuvaa, vuorovaikutteisia animaatioita ym. Upotettavaa aineistoa ei edelleenkään ilmaista HTML:llä vaan käyttäen esim. jotakin yleistä grafiikka-, ääni- tai videoformaattia tai erillistä ohjelmaa, joka toteuttaa animaation. HTML 4.0 vain tarjoaisi paremman viitekehyksen niiden mukaan liittämiselle. Samalla OBJECT-elementti antaisi mahdollisuuden määritellä, että dokumentissa esitetään jokin asia erilaisilla vaihtoehtoisilla tavoilla, esimerkiksi videona, valokuvana ja tekstinä. Luonnos on tältä osin kuitenkin ajattelultaan rajoittunut: se lähtee siitä, että teknisesti monimutkaisin väline (esim. animaatio) on aina ensisijaisesti käytettävä ja muut mediat (esim. kuva, tekstistä puhumattakaan) vain sen korvikkeita
HTML 4.0 pyrkii vakavasti parantamaan tilannetta. Tosin hankkeelle on annettu kummallinen nimi internationalization, joka on ilmeisesti niin monille niin vaikea sana, että se usein kirjoitetaan i18n. (Lyhenne johtuu siitä, että sanassa on i:n ja n:n välissä 18 kirjainta.) Kuten edellä mainittiin, tukea muillekin kielille kuin englannille tarvitaan nimenomaan kansallisia tarpeita varten.
Ensinnäkin merkkivalikoimaksi on määritelty Unicode, joka riittää maailman kaikkien kielten kaikkien merkkien esittämiseen. (Kokonaan eri asia sitten on, miten laajasti erilaiset Webiin liittyvät ohjelmat tulisivat käytännössä tukemaan Unicodea. Urakkahan on melkoinen, kun otetaan huomioon esimerkiksi kiinan merkistö.) Isohkolle joukolle usein tarvittavia merkkejä on määritelty symboliset nimet, jotka helpottavat niiden kirjoittamista silloin, kun niitä ei näppäimistöstä löydy.
Lisäksi mukaan on otettu ilmaisukeinoja, joita tarvitaan kirjoitussuuntien määräämiseen. Esimerkiksi englanninkielisessä tekstissä olevan hepreankielisen sitaatin esittäminen ei ole ihan helppo asia, mutta sitä varten on HTML 4.0:aan otettu perusvälineet.
HTML 4.0 tarjoaisi myös mahdollisuuden määritellä dokumentissa käytetty kieli sekä koko dokumentin että sen eri osien osalta. Esimerkiksi suomenkielisessä tekstissä esiintyvä latinankielinen fraasi merkittäisiin tähän tapaan:
Asiaa ei voida <SPAN LANG="LA">ipso facto</SPAN> todistaa.Esimerkissä SPAN on elementti, jota käytetään vain määritteiden liittämiseen dokumentin johonkin osaan. Tässä määrite ilmoittaa kielen LANG-attribuutilla, jonka arvona on kielen kaksikirjaiminen lyhenne standardin ISO 639 mukaan. Itse asiassa kieli voidaan ilmoittaa tarkemminkin, esimerkiksi erottaen brittienglanti amerikanenglannista.
Kielen merkitseminen mahdollistaisi esimerkiksi kunkin kielen tavutussääntöjä noudattavan tavutuksen käytön dokumenttia esitettäessä, kielikohtaisten oikolukuohjelmien soveltamisen ja vaikkapa sen, että dokumentin lukija voi saada erikieliset tekstit näkyviin erivärisinä tai eri kirjainlajeilla jos haluaa. Lisäksi se helpottaisi saman dokumentin tarjoamista saataville erikielisinä käännöksinä joustavasti. Myös Webistä tehtäviä hakuja voisi tehokkaasti rajoittaa niin, että mukaan ei tulisi dokumentteja sellaisilla kielillä, joita käyttäjä ei lainkaan osaa. Tämä tietysti edellyttäisi, että dokumenttien tekijät todella merkitsisivät, mitä kieltä dokumenteissa käytetään. Voi kestää kauan, ennenkuin keskivertojenkki tulee ajatelleeksi, että hänenkin pitäisi ilmoittaa käyttämänsä kieli.
Myös hypertekstissä keskeisen linkin käsitettä on pyritty kehittämään. Nykyisessä HTML:ssähän linkki on pelkkä viittaus toiseen dokumenttiin (tai dokumentin kohtaan), eikä se kerro mitään siitä, miksi dokumentti viittaa toiseen. Viittauksen luonnehan voi olla esimerkiksi tieteellinen lähdeviittaus tai viittaus jotakin yksityiskohtaa tarkemmin käsittelevään dokumenttiin tai viittaus käsillä olevan dokumentin toiseen versioon tai viittaus "imuroitavissa" olevaan ohjelmaan. On olemassa tapa, jolla linkin luonne voidaan kuvata, mutta sen yksityiskohdista ei ole onnistuttu sopimaan saati että tapaa yleisesti tuettaisiin (esimerkiksi niin, että selain jollain tapaa kertoo käyttäjälle, mikä linkin luonne on). Eikä HTML 4.0 pääse pidemmälle: se kuvailee tapaa esittämättä siitä selkeää standardia. Parannuksena linkkikäsitteeseen on kuitenkin se, että HTML 4.0:n mukaan voisi linkki viitata nimenomaan dokumentin määrättyyn osaan, esimerkiksi kappaleeseen, eikä vain määrättyyn paikkaan tekstissä.
Toisaalta luonnokseen on otettu mukaan sellaisia "kahden suuren" selaimen (Netscape ja Internet Explorer) toteuttamia omia HTML:n piirteitä, jotka on aiemmin pidetty standardi-HTML:n ulkopuolella. Lopputulos on osittain aika koominen. Niinpä nyt mukana on FONT FACE -rakenne, jolla teoriassa voidaan määrätä tekstin kirjasinlaji, vaikka jo kauan sitten on huolellisesti perusteltu, miksi rakenne on vaarallinen ja haitallinen. Toisaalta FONT FACE on "deprecated" eli rakenne samalla kertaa tuotaisiin mukaan viralliseen HTML:ään ja julistettaisiin vanhentuneeksi.
Ulkoasun (ainakin kuvitteellisen) säätelyn halu on tuonut mukaan aiempaa paljon mutkikkaamman taulukkokäsitteen, jolla kuitenkaan ei ole sen enempää rakenteellista ilmaisuvoimaa kuin ennenkään. Lomakkeiden yhteyteen luonnos ehdottaa myös melkoista mutkikkuuden lisäämistä tuomatta juuri mitään uutta lomakkeiden käyttöön, esimerkiksi syöttökenttien tarkistusta. Esimerkiksi kokonaan uusi elementti BUTTON ja paljon muuta otettaisiin kieleen mukaan vain sitä varten, että Web-dokumentin tekijä saisi tarkasti määrätä, minkänäköisinä lomakkeen eri painikkeet ja rastittavat ruudut näkyisivät. Lomakkeiden käyttäjien (täyttäjien) taas olisi entistä vaikeampi hahmottaa lomakkeita.
Eräänlainen tämän ajattelutavan huipentuma on kehysten (frames) ottaminen mukaan luonnokseen. Käytännössä kehyksillä voidaan esimerkiksi määrätä, että lukija näkee selaimen ikkunassa vasemmalla määrätynkokoisen osa-alueen, jossa on jokin hakemistosivu, ja oikealla varsinaisen dokumentin. Tämä toimii vain graafisissa selaimissa, joita puolestaan voi käyttää vain järjestelmissä, joissa on itse käyttöjärjestelmän käyttöliittymän tasolla ikkunointimahdollisuus (esim. Mac, Windows, Xwindows). Ja tämä mahdollisuus on tietenkin paljon monipuolisempi ja käyttäjälle joustavampi kuin mikään dokumentin tekijän koodaama kehysten käyttö.
Yleisluonteisempi puute on se, että dokumenttien rakenteen kuvaamiseen käytettävissä olevien elementtien valikoima on suunnilleen yhtä köyhä kuin HTML:n alkuaikoina. Esimerkiksi ISO-HTML-luonnos, joka muutoin on melko kummallinen, sisältää ehdotuksen siitä, että dokumentin rakenteelliset osat kuten luvut, lukujen osat jne. merkittäisiin erityisillä elementeillä. Nykyisinhän tällainen rakenne on vain pääteltävissä otsikoiden käytöstä - jos on. Mitään tällaista ei HTML 4.0 sisällä. Päinvastoin se vesittäisi sen vanhan suosituksenkin, että otsikkotasojen yli ei hypätä (eli että esimerkiksi 2. tason otsikkoa ei saisi seurata 4. tason otsikko ilman, että välissä on 3. tason otsikkoa).
On aika luonnollista kysyä, mihin ovat jääneet esimerkiksi HTML 1.0 ja HTML 3.0. Mitään HTML 1.0:ksi kutsuttua kielen määrittelyä ei koskaan ole ollut olemassakaan, joskin jotkut viittaavat nimityksellä "HTML 1.0" johonkin olettamaansa "alkuperäiseen HTML:ään". HTML 3.0 puolestaan oli pelkkä kiinnostava luonnos, joka ei koskaan tullut edes teknisesti viimeistellyksi ja joka virallisesti raukesi (expired) jo 28.9.1995. Tosin pitkään sen jälkeenkin johtavat Web-selaimien tekijät saattoivat mainostaa "tukevansa HTML 3.0:aa". Tähän lienee syynä se, että ne yrittävät luoda sellaista mielikuvaa, että selaimen versio n.0 vastaa HTML n.0:aa.
Sittemmin IETF tuntuu pääosin menettäneen mielenkiintonsa HTML:n kehittämiseen. Tosin se tammikuussa 1997 hyväksyi RFC 2070:n, Internationalization of the Hypertext Markup Language, joka on osittain päällekkäinen, osittain ristiriidassa samassa kuussa vahvistetun HTML 3.2 -spesifikaation kanssa.
HTML 3.2:n määrittelikin W3C eli World Wide Web Consortium, joka on periaatteessa monien eri osapuolten yhteiselin mutta käytännössä aika riippuvainen suurimmista Web-selainten valmistajista (Netscape, Microsoft). Kesällä W3C julkisti luonnoksen HTML:n uudeksi, HTML 3.2:ta laajemmaksi versioksi HTML 4.0, joka oli aiemmin kulkenut koodinimellä Cougar.
Lusikkansa soppaan yrittää työntää myös Kansainvälinen standardointijärjestö ISO, jonka tietysti periaatteessa olisi oikea organisaatio määrittelemään tai ainakin vahvistamaan kaikenlaisia kansainvälisiä standardeja. ISO on kuitenkin ilmeisesti liian iso ja raskas organisaatio hoitamaan standardointia niin nopeaa kehitystä vaativalla alalla kuin HTML. Lisäksi sen piirissä vaikuttavilla HTML-asiantuntijoilla tuntuu olevan äärimmäisen "puristisia" tavoitteita. Tätä osoittaa omalla tavallaan se, että ISO:n piirissä laadittu ISO-HTML-luonnos on olennaisesti muodostettu poistamalla HTML 3.2:sta koko joukko ulkoasuun vaikuttavia piirteitä tuomatta juuri mitään tilalle. Tällöin on unohtunut se, että suuri osa niiden piirteiden käytöstä on johtunut siitä, että kielessä ei ole parempaakaan, rakenteellista tapaa.
Kirjoittaja on laatinut myös
laajemman englanninkielisen arvion
HTML 4.0:sta.
Jukka Korpela.
12. syyskuuta 1997