Nyeste it-job

Lektion 2: Strukturen i et XHTML dokument

Strukturen i et XHTML dokument minder om strukturen i et HTML dokument. Men der er aligevel forskelle, som kan have stor betydning for dokumentets anvendelse.

Man kan overordnet sige at formkravene er højere til et XHTML dokument.

Et simpelt XHTML dokument kunne f.eks. kodes på denne måde:

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">
<head>
<title>Dokumentets titel</title>
</head>

<body>
<p>Dokumentets tekst</p>
</body>

</html>

Selve grundstrukturen med <html>, <head> og <body> er, som det fremgår, identisk med et HTML dokument. Hertil kommer nogle nye elementer og atributter, som bliver forklaret i denne lektion.

2.1 XML deklaration og angivelse af tegnsæt

I forrige lektion lærte du, at XHTML er skrevet i sproget XML. Derfor bør den første linie af et XHTML dokument indeholde en deklaration af hvilken version af XML der benyttes - i dette tilfælde bruger vi XML version 1.0 - og skriver derfor:

<?xml version="1.0"?>

Det næste der skal deklareres er hvilket tegnsæt der benyttes. Et tegnsæt er et slags alfabet - mere behøver du ikke vide lige nu. Deklarationen er nødvendig hvis man benytter andre tegnsæt end UTF-8 eller UTF-16. Da vi skriver vores dokumenter på dansk bruger vi tegnsættet iso-8859-1 som bl.a. indeholder tegnene æ, ø, å:

<?xml version="1.0" encoding="iso-8859-1"?>

2.2 Dokument Type Definition (DTD)

I den næste linie angives hvilken DTD man skriver efter. DTD er akronym for Document Type Definition og kan beskrives som et sæt regler.

Hvis vi går et lag dybere er en DTD en samling af XML deklarationer som definerer den legale struktur samt hvilke elementer og atributter der er til rådighed. F.eks. er elementet <h1> en del af XHTML sproget fordi det står i DTD'en - mens elementet <blink> ikke står i DTD'en, og dermed ikke er en del af XHTML sproget - det er til at forstå.

I XHTML er der 3 DTD'er at vælge imellem: Transitional, Strict og Frameset. De tre DTD'er er delmængder af hinanden:

Figur hvor de tre DTD'er er delmængder af hinanden

Figuren skal forstås sådan at Strict DTD'en har det mindste antal elementer. Transitional DTD'en har de samme elementer som Strict DTD'en plus de elementer som er på vej ud af standarden. Og endelig indeholder Frameset DTD'en hele Transitional DTD'en plus elementer til brug for frameset.

Strict DTD
Vælges hvis man ønsker at kode efter den anbefalede standard.
Transitional DTD
Vælges hvis man har behov for at benytte elementer som f.eks. <font> - f.eks. af hensyn til meget forældede browsere.
Frameset DTD
Bruges kun til frameset - det vil sige ikke dokumenter, som vises i et frameset, men selve framesettet.

Når man har bestemt sig for hvilken DTD man vil benytte til det pågældende dokument indsætter man en reference til DTD'en øverst i dokumentet (efter XML deklaration). Referencerne ser sådan ud:

Strict DTD

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">

Transitional DTD

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">

Frameset DTD

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "DTD/xhtml1-frameset.dtd">

2.3 Namespace identifikation og sprogvalg

I et XHTML dokument skal <html> elementet indeholde attributten xmlns som kun kan have den faste værdi "http://www.w3.org/1999/xhtml". xmlns står for XML-Name-Space. Vi vil ikke her gå i dybden med Name Spaces - interesserede henvises til Namespaces in XML på W3C's websted.

<html> elementet indeholder også atributten xml:lang, som oplyser hvilket sprog dokumentet er skrevet på. Sproget angives efter ISO639 standarden, hvor man finder koder for alverdens sprog. I dette eksempel er koden for dansk anvendt:

<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da">

Resten af XHTML dokumentet følger den normale struktur for et HTML dokument med <head> og <body>. Dog skal strukturen, elementerne og atributterne følge nogle lidt anderledes regler, som vil blive gennemgået i de to næste lektioner.


Nyhedsbrev
Tilmeld dig HTML.dk's nyhedsbrev


Er du jobsøgende?

 Ja
 Nej
Se det foreløbige resultat når du har stemt!


Se tidligere afstemninger

 Community
Brugernavn

Adgangskode

Husk

 *  Bliv medlem her
 *  Glemt password?


Om HTML.dk | Oplysninger om ophavsret | Politik om persondata | Annoncer på HTML.dk | RSS

Valid XHTML 1.1! Valid CSS! Powered by Scannet