HTML5

HTML5 tarkoittaa erilaisia, toisiinsa osittain kytkeytyviä asioita:
- HTML-merkintäkielen uutta versiota tai kehitysvaihetta
- yleisnimitystä monille nykyaikaisille web-tekniikoille
- sovellusten toteuttamista webin tekniikoilla (JavaScript, CSS, HTML).
HTML5-kieli
HTML5-kieli on uusi versio verkkosivujen tekemiseen yleisesti käytetystä HTML-merkintäkielestä. Siitä on W3C:n suositusehdokas (Candidate Recommendation)[1], jonka pohjalta on tarkoitus vahvistaa suositus vuoden 2013 viimeisellä neljänneksellä[2].
Uudistuksina HTML5:ssä ovat mm. uudet <canvas>
, <video>
ja <audio>
-elementit sekä SVG-muotoisen sisällön näyttäminen ilman <object>
-tagin käyttöä. Muita lisäyksiä HTML:ssa ovat dokumentin semanttisuutta rikastuttavat <section>
, <article>
, <header>
ja <nav>
-tagit ja uudet attribuutit tagien määrittelyyn ja selkeyttämiseen.
Toisin kuin aiemmat HTML-kielen määrittelyt, HTML5:n määrittely kuvaa tarkasti dokumenttioliomallin (DOM). Määrittely kuvaa HTML-dokumentin ensisijaisesti oliona, jolla on puurakenne ja jota voidaan käsitellä ohjelmallisesti (etenkin JavaScriptillä). HTML-tagit ovat tällöin vain väline, jolla puurakenne esitetään tekstimuodossa eli sarjallistetaan. Sarjallistus voidaan tehdä myös XML:n sääntöjen mukaan, jolloin esitystavasta käytetään nimitystä XHTML5.
Määrittelyyn sisältyy myös sovellusliittymiä (API), etenkin sellaisia, joilla voidaan toteuttaa vuorovaikutteisuutta ja tuoda dokumentteihin sovellusmaisuutta. Lisäksi varsinaisen HTML5-määrittelyn ulkopuolella on lukuisia erillisiä määrittelyjä, jotka laajentavat tällaisia mahdollisuuksia.
HTML5 iskusanana
HTML5 viittaa nykyisin usein yleisesti moderneihin web-tekniikoihin[3]. Niihin kuuluvat HTML5-kielen uutuuksien ohella esimerkiksi CSS:n uudet piirteet (CSS3) sekä sovellusliittymät kuten File API ja Geolocation API. HTML5:llä tässä mielessä ei ole selviä rajoja, ja tulkinnat vaihtelevat.
Modernien web-tekniikoiden yleisnimityksenä HTML5 vastaa suunnilleen W3C:n käyttämää ilmausta Open Web Platform[4], joka määriteltiin laajaksi kattotermiksi kattamaan kaikki W3C:n alaan kuuluvat selaimen kautta tapahtuvat asiat (”all the W3C work that deploys through the browser of the future”). HTML5-nimityksellä kuitenkin viitataan usein myös W3C:n ulkopuolella määriteltyihin asioihin kuten grafiikan sovellusliittymä WebGL.
HTML5-sovellukset
Sovelluskehityksen alalla HTML5 tarkoittaa nykyisin yleisesti sovellusten toteuttamista webin avoimilla tekniikoilla.[5] Ohjelmointikielenä on tällöin JavaScript ja muotoilun perusvälineenä CSS. HTML:n osuus on melko pieni, eikä siinä ole yleistä tarvetta käyttää HTML5-kielen uutuuksia.
HTML5-sovellukset voidaan tehdä laiteriippumattomiksi, ja ne kilpailevat eri laitteille (mm. älypuhelimille ja tableteille) kehitettyjen ns. natiivien sovellusten kanssa. HTML5-sovellus voi toimia itsenäisenä ohjelmana paikallisesti, tai se voi olla yhteydessä verkkoon.
Jotkin HTML5-kielen uudet tekniikat kuten paikallinen muisti (localStorage) ja sovellusvälimuisti (application cache) voivat kuitenkin olla avuksi HTML5-sovellusten toteutuksessa. Merkittävämpiä ovat käytännössä CSS:n uudet piirteet, joilla voidaan toteuttaa mm. visuaalisesti näyttäviä esityksiä tehokkaasti.
