Szemantika = jelentéstan, nézzük át, hogy a web alapvető adattárolási nyelvében, a HTML-ben milyen módon adhatjuk meg egy szöveg vagy szövegrész jelentését!
A HTML elemeknek van szemantikája, például van fejléc, lábléc, cikk (article) elem – jelezheti mindjárt néhány tájékozott olvasó, viszont ki kell ábrándítsam őket: ezek csak az adott szöveg logikai felépítését írják le, de a szöveg jelentéséről semmilyen információt nem tartalmaznak.
Itt van például ez a blogbejegyzés: a cím alatt található egy dátum, de igazából ránézésre nem lehet megmondani, hogy minek az időpontját mutatja. A cikk létrehozásának dátumát? Az utolsó mentés dátumát? A cikk élesítésének dátumát? Ha megnézzük a forráskódot, ott is csupán a class attribútum utalhat erre, de annak értéke "date", tehát nem vagyunk előrébb. Ez csak egy kiragadott példa, de körbennézve bármelyik weboldalon, ezer hasonló adatot találhatunk, amik „csak úgy vannak”, s bár mi, emberek ránézésre el tudjuk dönteni, mit jelentenek, gépileg ez a mai eszközökkel szinte lehetetlen, de mindenesetre rendkívül bonyolult mesterséges intelligencia szükséges.
A HTML klasszikusan a szöveg jelentésére csak két eszközt biztosít: a description és keywords meta tag-eket. Ezek használata rendkívül korlátozott, mivel a description az egész oldal leírására szolgál, míg a keywords-ben található kulcsszavak nem párosíthatóak az oldal tartalmában található tartalmi blokkokkal.
Az úgynevezett "web2" egyik legnagyobb újítása az volt, hogy magukat a tartalmi blokkokat jelölhetjük meg címkékkel, magyarul tag-ekkel. Ezáltal elvileg összeköthetővé válhatnának az azonos témájú tartalmak, nem csak egy oldalon belül, hanem akármilyen mennyiségű weboldalon.
Tehát csak ez a találmány forradalmasíthatta volna az internetet – legalábbis technológiailag, majd később egészében –, de ez elmaradt, köszönhetően az internetes szabványokat készítő W3C testület teljes nemtörődömségének. A címkézés olyan mérföldkő, amit azonnal be kellett volna emelni a HTML szabványba, persze a megfelelő kidolgozás után.
Gondoljunk csak bele! Először is meg kéne jelölni, hogy az adott címke melyik HTML tartalmi blokkra vonatkozik (például egy id-vel), hogy az könnyen azonosítható legyen. Második körben létre kéne hozni egy központi adatbázist, amiben a címkék feliratait tároljuk különböző nyelveken, hogy nyelvfüggetlenül összeköthessük az azonos témájú tartalmakat. Ha például arra keresek rá, hogy Fidzsi-szigetek, akkor valószínűleg a legtöbb és legrelevánsabb információt hindi nyelven találom meg (és az már legyen a fordítóprogram feladata, hogy a saját nyelvemen jelenítse meg a szöveget). Az internetes oldalak hirtelen egy nagy, összefüggő masszává válnának, jóval relevánsabb találatokkal.
E fejlesztés nélkül korlátozzuk magunkat az anyanyelvünkre, valamint az általunk beszélt egy-két idegen nyelvre, de a világ internetes tartalmának jórészét gyakorlatilag nem tudjuk így elérni.
A 2014-ben megjelenő HTML 5-ben erre a problémára a W3C egy megoldást ad: a linkeknek megadhatunk egy olyan attribútumot, hogy "tag", azaz kb. így néznek majd ki:
<a rel="tag" href="http://domain/link">Fidzsi-szigetek</a>
Én ezt a következőképp tudnám elképzelni, feltételezve, hogy a korábbi bekezdésben említett központi adatbázis nyelve angol:
<div id="fiji_szigetek">A Fidzsi-szigetek leírása ...</div>
<a tag="fiji" tag-content-id="fiji_szigetek" href="http://domain/link">Címke</a>
A HTML5 ajánláson dolgozó csoport tagjai olyan nagy cégek, böngészőgyártók, akik nagy befolyással vannak mindennapjainkra, mind például a Mozilla, az Apple, Microsoft, Google stb. Nem elég, hogy lassan dolgoznak (a HTML verzióváltására tizennégy évet kell összességében várni), még a valós problémákat is képtelenek felismerni és azokra választ adni. Ehelyett az aktuális divatirányzatoknak szeretnének megfelelni, nem törődve azzal, hogy mekkora kárt okozhatnak ezzel hosszú távon.
A probléma igazából a HTML-lel van, pontosabban azzal, hogy nem a helyén kezeljük. Tisztázni kell: a HTML se több, se kevesebb, mint adatok megjelenítésének leírónyelve. A kulcsszó a „megjelenítés”, tehát leegyszerűsítve azt a feladatot kell ellátnia, hogy az adatok milyen színnel és milyen méretben jelenjelenek meg. Magukat az adatokat teljesen külön kell választani a megjelenésüktől, ellenkező esetben a szemantikus keresés bevezetését nehezítjük meg, és - minden ellenkező híreszteléssel ellentétben - technológiailag továbbra is maradunk a web 1.0 szintjén.
Erre a szétválasztásra a mai technológiai eszközökkel már megvan a lehetőség, a következő lépés az internetes fejlesztők szemléletváltása. A HTML5 bevezetésével csak a jelenlegi állapotokat konzerváljuk – az eddigiekből kiindulva újabb másfél évtizedre –, és mivel ezzel a nyelvvel amúgy sem nyerünk sokat – tehát a legtöbb „újítása” helyettesíthető már létező eszközökkel –, a szabványosítás folyamatát véleményem szerint azonnal le kell állítani, és ki kell dolgozni egy olyan életképes módszert, amivel minél hamarabb szemantikus alapra helyezhetjük az internetet.