Contents
Deze sectie van de specificatie omschrijft de basis data types die mogen voorkomen als inhoud van een element of een attribuutwaarde.
Als inleidende informatie over het lezen van de HTML DTD, raadpleeg de SGML handleiding.
Elke attribuutdefinitie bevat informatie over de hoofdlettergevoeligheid van de waarden ervoor. De hoofdletterinformatie wordt weergegeven met de volgende afkortingen:
Als een attribuutwaarde een lijst is, dan gelden de afkortingen voor elke waarde in de lijst tenzij anders vermeld.
De document type definitie specificeert de syntaxis van HTML element inhoud en attribuutwaarden door gebruik te maken van SGML tekens (bijvoorbeeld, PCDATA, CDATA, NAME, ID, etc.). Zie [ISO8879] voor hun volledige definities. Het volgende is een samenvatting van sleutelinformatie:
User Agents mogen voorafgaande en opvolgende witte ruimte negeren in CDATA attribuutwaarden (bijvoorbeeld " mijnwaarde " mag geïnterpreteerd worden als "mijnwaarde"). Auteurs zouden attribuutwaarden niet mogen opgeven met voorafgaande of opvolgende witte ruimte.
Voor sommige HTML 4 attributen met CDATA attribuutwaarden, legt de specificatie verdere beperkingen op op de set van toegestane waarden voor het attribuut dat niet door de DTD uitgedrukt kan worden.
Hoewel de STYLE en SCRIPT elementen CDATA gebruiken voor hun data model, moet voor deze elementen CDATA anders behandeld worden door User Agents. Opmaak en entiteiten moeten behandeld worden als onbewerkte tekst en zonder wijzigingen doorgegeven worden aan de toepassing. De eerste keer dat de karaktersequentie "</" (eind-tag openende afgrenzer) voorkomt wordt behandeld als het einde van de inhoud van het element. In geldige documenten zou dit het de eind tag van het element zijn.
Een aantal attributen ( %Text; in de DTD) nemen tekst die bedoeld is als "leesbaar door mensen". Raadpleeg voor inleidende informatie over attributen de besprekende handleiding van attributen.
Deze specificatie gebruikt de term URI zoals gedefinieerd in [URI] (zie ook [RFC1630]).
Merk op dat URI's URL's bevatten (zoals gedefinieerd in [RFC1738] en [RFC1808]).
Relatieve URI's worden opgelost tot volledige URI's door gebruik te maken van een basis URI. [RFC1808], sectie 3, definieert het normatieve algoritme voor dit proces. Raadpleeg voor meer informatie over basis URI's het deel over basis URI's in het hoofdstuk over links.
URI's worden in de DTD voorgesteld door de parameter entiteit %URI;.
URI's zijn algemeen hoofdlettergevoelig. Er kunnen URI's, of stukken van URI's zijn waar het gebruik van hoofdletters onbelangijk is (bijvoorbeeld bij machinenamen), maar deze identificeren kan moeilijk zijn. Gebruikers zouden er altijd moeten van uit gaan dat URI's hoofdlettergevoelig zijn (om veilig te spelen).
Raadpleeg de appendix voor informatie over niet-ASCII karakters in URI attribuutwaarden.
De attribuutwaarde type "color" (%Color;) verwijst naar kleur definities zoals gespecificeerd in [SRGB]. Een kleurwaarde mag ofwel een hexadecimaal nummer (voorafgegaan door een hekje) ofwel één of meer van de volgende zestien kleurnamen zijn. De kleurnamen zijn hoofdletterongevoelig.
![]() |
Black = "#000000" | ![]() |
Green = "#008000"
|
![]() |
Silver = "#C0C0C0" | ![]() |
Lime = "#00FF00"
|
![]() |
Gray = "#808080" | ![]() |
Olive = "#808000"
|
![]() |
White = "#FFFFFF" | ![]() |
Yellow = "#FFFF00"
|
![]() |
Maroon = "#800000" | ![]() |
Navy = "#000080"
|
![]() |
Red = "#FF0000" | ![]() |
Blue = "#0000FF"
|
![]() |
Purple = "#800080" | ![]() |
Teal = "#008080"
|
![]() |
Fuchsia = "#FF00FF" | ![]() |
Aqua = "#00FFFF"
|
De kleurwaarden "#800080" en "Paars" verwijzen beiden naar de kleur paars.
Hoewel kleuren een aanzienlijke hoeveelheid informatie aan documenten kan toevoegen en ze meer leesbaar kan maken, overweeg de volgende richtlijnen wanneer je kleur gebruikt in jouw documenten:
HTML specificeert drie types van lengte waarden voor attributen:
Lengte waarden zijn hoofdletteronafhankelijk.
Nota. Een "media type" (gedefinieerd in [RFC2045] en [RFC2046]) specificeert de aard van een gelinkte bron. Deze specificatie gebruikt de term "inhoudstype" liever dan "media type" in overeenkomst met huidig gebruik. Bovendien mag in deze specificatie "media type" verwijzen naar de media waar een User Agent een document weergeeft.
Dit type is gerepresenteerd in de DTD door %ContentType;.
Inhoudstypes zijn hoofdletterongevoelig.
Voorbeelden van inhoudstypes omvatten "text/html", "image/png", "image/gif", "video/mpeg", "text/css" en "audio/basic". Raadpleeg voor de huidige lijst van geregistreerde MIME types [MIMETYPES].
De waarde van attributen waarvan het type een taalcode is ( %LanguageCode in de DTD) verwijst naar een taalcode zoals gespecificeerd door [RFC1766], sectie 2. Raadpleeg voor informatie over specificatie van taalcodes in HTML, het deel over taalcodes. Witte ruimte is niet toegestaan binnen de taalcode.
Taalcodes zijn Hoofdletterongevoelig.
De "charset" attributen (%Charset in de DTD) verwijzen naar een karakter encodering zoals omschreven in de sectie over karakter encoderingen. Waarden moeten strings zijn (bijvoorbeeld, "euc-jp") van de IANA registry (zie [CHARSETS] voor een complete lijst).
Namen van karakter encoderingen zijn hoofdletterongevoelig.
User Agents moeten de stappen vooropgesteld in het deel over specificatie van karakter encoderingen volgen om te bepalen welke de karakter encodering is van een externe bron.
Bepaalde attributen roepen voor een enkelvoudig karakter van de document karakter set. Deze attributen nemen het %Character type in de DTD.
Enkelvoudige karakters mogen gespecificeerd worden met karakter referenties (bijvoorbeeld "&").
[ISO8601] laat veel opties en variaties in de representatie van datums en tijden toe. De huidige specificatie gebruikt één van de vormen omschreven in het profiel [DATETIME] voor de definitie van geldige datum/tijd strings ( %Datetime in de DTD).
De vorm is:
YYYY-MM-DDThh:mm:ssTZDwaar:
YYYY = jaartal bestaande uit vier getallen MM = maand bestaande uit twee getallen (01=januari, enz.) DD = dag van de maand bestaande uit twee getallen (01 tot 31) hh = uur bestaande uit twee getallen (00 tot 23) (am/pm NIET toegestaan) mm = minuten bestaande uit twee getallen (00 tot 59) ss = seconden bestaande uit twee getallen (00 tot 59) TZD = tijdzone aanduiding (Time Zone Designator)
De tijdzone aanduiding één van de volgende:
De componenten zoals ,hier getoond moeten exact aanwezig zijn, met exact dezelfde schrijfwijze. Merk op dat "T" letterlijk voorkomt in de string (het moet in hoofdletters zijn) om het begin van het tijd element aan te geven, zoals gespecificeerd in [ISO8601]
Ale een genererende toepassing de tijd niet tot op de seconde kent, dan mag het de waarde "00" voor de seconden gebruiken (en ook voor de minuten en uren als nodig).
Nota. [DATETIME] handelt niet over overspringende (leap) seconden.
Auteurs mogen gebruik maken van de volgende gekende link types, die hier met hun conventionele interpretaties opgesomd zijn. In de DTD verwijst %LinkTypes naar een door spaties gescheiden lijst van link types. Witte ruimte karakters zijn niet toegestaan binnen link types.
Deze link types zijn hoofdletterongevoelig, dus "Alternate" heeft dezelfde betekenis als "alternate".
User Agents, zoekrobots, enz. mogen deze link types interpreteren op verschillende manieren. User Agents mogen bijvoorbeeld toegang bieden tot gelinkte documenten door middel van een navigatie balk.
Auteurs kunnen wensen om aanvullende link types te definiëren die niet omschreven zijn in deze specificatie. Als ze dit doen, dan zouden ze gebruik moeten maken van een profiel om de conventies aan te geven die gebruikt worden om de link types te definieren. Raadpleeg het profiel attribuut van het HEAD element voor meer details.
Raadpleeg voor meer uitleg over link types het deel over links in HTML documenten.
Het volgende is een lijst van herkende media omschrijvers ( %MediaDesc in de DTD).
Toekomstige versies van HTML kunnen nieuwe waarden introduceren en kunnen geparametriseerde waarden toestaan. Om de introductie van deze uitbreidingen te vergemakkelijken, moeten aangepaste User Agents de media attribuutwaarde als volgt kunnen ontleden:
media="screen, 3d-glasses, print and resolution > 90dpi"
wordt ontleed in:
"screen" "3d-glasses" "print and resolution > 90dpi"
"screen" "3d-glasses" "print"
Nota. Style sheets kunnen media-afhankelijke variaties bevatten (bijvoorbeeld de CSS @media constructie). In zulke gevallen kan het geschikt zijn om "media=all" te gebruiken.
Script data ( %Script; in de DTD) kan de inhoud zijn van het SCRIPT element en de waarde van intrinsieke event attributen. User Agents moeten de script data niet evalueren als HTML opmaak, maar in plaats daarvan de inhoud ervan doorspelen als data aan een script engine.
De hoofdlettergevoeligheid van script data hangt af van de scripting taal.
Merk op dat script data die inhoud is van een element geen karakter referenties mag bevatten, maar script data die de waarde van een attribuut is mag deze wel bevatten. De appendix voorziet verdere informatie over specificatie van niet-HTML data.
Style sheet data (%StyleSheet; in de DTD) kan de inhoud van het STYLE element en de waarde van het style attribuut zijn. User Agents moeten de style data niet evalueren als HTML opmaak.
De hoofdlettergevoeligheid van style data hangt af van de style sheet taal.
Merk op dat style sheet data die elementinhoud is geen karakter referenties mag bevatten, maar style sheet data die de waarde is van een attribuut dit wel mag bevatten. De appendix geeft verdere informatie over de specificatie van niet-HTML data.
Behalve voor de gereserveerde namen hieronder opgesomd, moeten frame doel namen (%FrameTarget; in de DTD) beginnen met een alfabetisch karakter (a-zA-Z). User Agents zouden alle andere doel namen moeten negeren.
De volgende target namen zijn gereserveerd en hebben een speciale betekenis.