SGML
SGML – speciali aprašomoji (ne programavimo) kalba, skirta HTML ir kitų giminingų kalbų struktūrai aprašyti. SGML pavyzdžiai gali būti tokie: <!ELEMENT OL – – (LI)+> teigia, jog HTML elementas OL (numeruotas sąrašas) privalo turėti tiek atveriančią (<OL>), tiek ir užveriančią (</OL>) žymes (tą žymi du brūkšniai). Jame privalo būti bent vienas elementas LI, bet jų gali būti ir daugiau (tą žymi (LI)+). <!ELEMENT IMG – O EMPTY> teigia, jog HTML elementas IMG (paveiksliukas) privalo turėti atveriančią žymę (pirmas brūkšnys), tačiau užverianti žymė nebūtina (</IMG> nėra būtinai reikalingas). Jame (tarp <IMG> ir </IMG>) neturi būti jokių kitų elementų. SGML dokumentai naudojami trūkstamiems HTML elementams nuspėti bei akivaizdžioms klaidoms ištaisyti. Net ir dabar Internete galima rasti labai daug klaidingai parašytų HTML dokumentų, todėl SGML lieka svarbi. HTML skaitanti sistema, kuri remiasi kurios nors versijos SGML, vadinama SGML DTD skaitykle (angl. SGML DTD parser). Tokias sistemas turi visos populiarios naršyklės bei kai kurios programavimo kalbos (tarkim, Java (programavimo kalba)). Free Sofware Foundation atviro kodo Java platformai (GNU Classpath) šią sistemą parašė lietuviai. SGML dokumentus galima nemokamai atsisiųsti iš W3C konsorciumo tinklalapio.