Die regel geeft aan welk soort document het is, en wat daat allemaal in voor mag komen.
In de vorm die jij post heeft een browser er eigenlijk helemaal niets aan. Maar in de vorm die ik altijd gebruik is het iets logischer:
code:
1
2
| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> |
Hier zie je een verwijzing naar een ander document in staan. Dat document bevat alle informatie over de SGML achtige taal die je gebruikt. Denk aan informatie als:
• Welke entiteiten kan een document bevatten?( , © etcetera)
• Welke elementen kunnen erin voorkomen?(<html>, <table>, etc.)
• Welke elementen mag een ander element bevatten? (table: thead, tfoot, tbody, etc.)
• Welke attributen kan een element hebben? (img: src, style, class, etc.)
• Welke waarden kan een attribuut hebben? (CDATA, NMTOKEN, etc.)
Als je er meer van wilt weten, dan kun je het best gewoon zo'n dtd downloaden, en proberen te analyseren wat voor informatie erin staat.
Ik ben zelf nu bezig met een XML parser, die eerst de DTD analyseert, en aan de hand daarvan de XML valideert op correctheid. (een geldig XHTML document is ook een geldig XML document)
Ik hoop dat het je nu iets duidelijker is, ik heb mijn verhaal vrij oppervlakkig gehouden, er zitten toch best een paar complexe dingetjes in een DTD verwerkt, maar kort (door de bocht

) samengevat is een DTD een lijst met voorwaarden waaraan een document moet voldoen.