A partire da questa sezione cominciano le specifiche di HTML 4, con le convenzioni che regolano i rapporti tra autori, documenti, utenti e programmi utente.
Le parole chiave "DEVE", "NON DEVE", "OBBLIGATORIO", "DOVRÀ" "NON DOVRÀ", "DOVREBBE", "NON DOVREBBE", "RACCOMANDATO", "PUÒ" e "FACOLTATIVO" usate in questo documento sono da interpretarsi come descritto in [RFC2119]. Tuttavia, a fini di leggibilità, tali parole non appaiono in lettere tutte maiuscole all'interno di queste specifiche.
A volte gli autori di queste specifiche raccomandano ad autori e programmi utente delle procedure ritenute buone. Tali raccomandazioni non sono normative e la conformità a queste specifiche non dipende dalla loro osservanza. Le raccomandazioni contengono espressioni come "Raccomandiamo ...", "In queste specifiche si raccomanda ...", o similari.
Si raccomanda agli autori di scrivere documenti conformi alla DTD rigorosa piuttosto che alle altre DTD definite da queste specifiche. Si veda la sezione su informazioni sulla versione per dettagli circa le DTD definite in HTML 4.
Un programma utente conforme per l'HTML 4 è un programma che osserva le condizioni obbligatorie ("deve") esposte in queste specifiche, con l'inclusione dei seguenti punti:
Tuttavia, per quanto riguarda il comportamento raccomandato nella gestione degli errori, si consultino le note sui documenti non validi.
I programmi utente dovrebbero continuare a supportare gli elementi disapprovati per ragioni di compatibilità all'indietro.
Le definizioni degli elementi e degli attributi indicano chiaramente quali sono disapprovati.
Queste specifiche includono esempi che illustrano come evitare l'uso di elementi disapprovati. Nella maggior parte dei casi ciò dipende dal supporto dei programmi utente per i fogli di stile. In generale gli autori dovrebbero usare i fogli di stile per ottenere effetti stilistici e di formattazione piuttosto che gli attributi di presentazione dell'HTML. Gli attributi di presentazione dell'HTML sono stati disapprovati da quando esiste l'alternativa dei fogli di stile (si veda, per esempio, [CSS1]).
L'HTML 4 è un'applicazione SGML conforme allo Standard Internazionale ISO 8879 -- Standard Generalized Markup Language SGML (definito in [ISO8879]).
Gli esempi nel testo sono conformi alla definizione del tipo di documento rigorosa, a meno che gli elementi o gli attributi in questione siano definiti soltanto dalla definizione del tipo di documento transizionale o dalla definizione del tipo di documento a frame. Per ragioni di brevità, la maggior parte degli esempi in queste specifiche non cominciano con la dichiarazione del tipo di documento, che è obbligatoria all'inizio di ogni documento HTML.
I frammenti di DTD nelle definizioni degli elementi sono tratti dalla definizione del tipo di documento rigorosa, eccetto che per gli elementi correlati ai frame.
Si consulti la sezione sulle informazioni di versione HTML per dettagli circa quando usare la DTD rigorosa, transizionale o a frame.
I commenti che appaiono nella DTD di HTML 4 non hanno valore normativo; essi sono puramente informativi.
I programmi utente non devono riprodurre istruzioni di processo SGML (es., <?full volume>) o commenti. Per maggiori informazioni circa questa ed altre caratteristiche di SGML, che possono essere legali in HTML ma non sono ampiamente supportate dai programmi utente, si consulti la sezione sulle caratteristiche SGML con supporto limitato.
I documenti HTML viaggiano attraverso Internet come una sequenza di byte accompagnata da informazioni di codifica (descritte nella sezione sulle codifiche di carattere). La struttura della trasmissione, denominata entità messaggio, è definita da [RFC2045] e [RFC2616]. Un'entità messaggio con un tipo di contenuto pari a "text/html" rappresenta un documento HTML.
Il tipo di contenuto per i documenti HTML è definito come segue:
Il parametro facoltativo "charset" si riferisce alla codifica dei caratteri usata per rappresentare il documento HTML come una sequenza di byte. I valori legali per questo parametro sono definiti nella sezione sulla codifica dei caratteri. Benché questo parametro sia facoltativo, si raccomanda che sia sempre presente.