In deze sectie beginnen we met de specificatie van HTML 4. We starten met de overeenkomst tussen de auteurs, documenten, gebruikers en User Agents.
De sleutelwoorden "MUST" (moet), "MUST NOT"(moet niet), "REQUIRED"(vereist), "SHALL"(zal), "SHALL NOT"(zal niet), "SHOULD"(zou), "SHOULD NOT"(zou niet), "RECOMMENDED"(aangeraden), "MAY"(mag) en "OPTIONAL"(optioneel) in dit document moeten geinterpreteerd worden zoals omschreven in [RFC2119]. Om de leesbaarheid van deze specificatie te verhogen zullen deze woorden niet in hoofdletters voorkomen.
Soms raden de auteurs van deze specificatie goede gewoontes aan voor auteurs en User Agents. Deze aanbevelingen zijn niet normatief en Comformiteit met deze specificatie hangt niet af van hun toepassing. Deze aanbeveling bevat de uitdrukking "We raden aan ...", "Deze specificatie raad aan ...", of gelijkwaardige verwoording.
We raden aan dat auteurs documenten schrijven die aansluiten bij de stricte DTD in plaats van andere DTD's gedefinieerd door deze specificatie. Bekijk de sectie over versie informatie voor de details over de DTD's gedefinieerd in HTML 4.
Een overeenstemmende User Agent voor HTML 4 is er een die de gebiedende condities ("moet") in deze specificatie vooropgesteld volgt, alsook de volgende punten:
Raadpleeg voor aangeraden foutafhandeling de nota's voor ongeldige documenten.
User Agents zouden de afgeraden elementen omwille van compatibiliteitsredenen moeten blijven ondersteunen.
Definities van elementen en attributen geven duidelijk aan welke afgeraden worden.
Deze specificatie bevat voorbeelden die illustreren hoe afgeraden elementen omzeild kunnen worden. In de meeste gevallen hangen deze af van de ondersteuning voor style sheets van User Agents. In het algemeen zouden auteurs style sheets moeten gebruiken om stylistische en opmaak effecten te verkrijgen in plaats van HTML presentatie attributen. HTML presentatie attributen zijn afgeraden toen style sheet alternatieven ingevoerd werden (bekijk bijvoorbeeld [CSS1]).
HTML 4 is een SGML applicatie conform de Internationale Standaard ISO 8879 -- Standaard Generalized Markup Language SGML (gedefinieerd in [ISO8879]).
Voorbeelden in de tekst zijn conform de stricte document type definitie tenzij het voorbeeld in kwestie verwijst naar elementen of attributen die alleen gedefinieerd worden in de transitionele document type definitie of de frameset document type definitie. Om beknopt te blijven beginnen de meeste voorbeelden in deze specificatie niet met de document type declaratie die verplicht is aan het begin van elk HTML document.
DTD fragmenten in element definities komen van de stricte document type definitie behalve voor de elementen gerelateerd aan frames.
Raadpleeg de sectie over HTML versie informatie voor details over wanneer de stricte, de transitionele of de frameset DTD te gebruiken.
Opmerkingen die verschijnen in de HTML 4 DTD hebben geen normatieve waarde; ze zijn enkel informatief.
User Agents mogen SGML procesinstructies (zoals <?full volume>) of opmerkingen niet weergeven. Voor meer informatie over dit en andere SGML eigenschappen die legaal zijn in HTML, maar niet algemeen ondersteund worden door HTML User Agents, kan u best de sectie over SGML eigenschappen met beperkte ondersteuning raadplegen
HTML documenten worden over het Internet als sequentie van bytes verzonden vergezeld van encoderingsinformatie (beschreven in het deel over karakter encoderingen). De structuur van de verzending, een boodschap entiteit genoemd, wordt gedefinieerd door [RFC2045] en [RFC2616]. Een boodschap entiteit met een inhoudstype van "tekst en/of html" representeert een HTML document.
Het inhoudstype voor HTML documenten wordt gedefinieerd als volgt:
De optionele parameter "karakterset" verwijst naar de karakter encodering gebruikt om het HTML document weer te geven als en sequentie van bytes. Geldige waarden voor deze parameter worden gedefinieerd in het deel over karakter encoderingen. Alhoewel deze parameter optioneel is, raden we aan dat deze altijd aanwezig is.