DTD
Att HTML tillåts vara så dåligt utformat är en av huvudorsakerna till att webbsidorna
visas på olika sätt av de bläddrare som finns. Detta beror på att tolkningen av
HTML är hårdkodad i själva bläddraren medan XHTML tolkas i enlighet med en
uppsättning regler för formuleringen och grammatiken som finns i språkets DTD
fil (Document Type Declaration).
Att regler för hur ett språk ska tolkas finns i en DTD-fil standardiserades redan på
80-talet då SGML skapades (Standard Generalised Markup Language). Det finns
således DTD-filer för HTML versioner 1 t.o.m. 4 men dessa har inte använts av
bläddrare. Även XML använder sig av en DTD-fil vilket innebär att tolkning av
XML inte är beroende av vilken bläddrare man använder.
Entities
Att jag använt en "Entity" i exemplet ovan (å istället för å) har sin förklaring i
att särskilda tecken kan ratas av vissa XML tolkar. Det är uppenbart att "<" och
">" måste ersättas med < och > då dessa tecken definierar var taggar
finns. Andra tecken som ställer till det är enkla och dubbla citat samt "&". Ett
annat plus med Entities är att dessa inte är beroende av vilken
teckenuppsättning mjukvaran som ska tolkar sidorna använder och visas således lika på olika
plattformar och under olika operativ.
Dokumentanalys
När en bläddrare ska tolka ett dokument måste det analyseras med avseende på dess
struktur och därmed vad som ska visas. Går det inte att analysera dokumentet så
kan det inte visas.
Följande tre regler måste uppfyllas för att analysen ska lyckas:
- Alla starttaggar måste följas av en matchande sluttagg.
- En av ett elements taggar får inte omslutas av ett annat elements taggar.
- Vissa element får inte förekomma inom andra element.
Skillnader HTML kontra XHTML:
De viktigaste skillnaderna mellan HTML version 4 och XHTML version 1 är:
- Det särskilda XHTML-huvudet före sidbeskrivning.
- Alla element skrivs i gemener.
- Sluttaggar är ett krav.
- Kombinerade start- och sluttaggar (tomma element).
- Elementen head och title är obligatoriska.
- Attributvärden måste omges med citattecken.
XHTML-huvud
Huvudet talar om att dokumentet är ett XML-dokument, vilken typ av XML-dokument det är
(version av XHTML) och var dess DTD finns. Dessutom anges var dokumentets namespace element finns.
T.ex:
|