<< Chapter < Page Chapter >> Page >
En præsentation af opbygning og brug af en DTD med udgangspunkt i en informationsmodel

Dtd – document type definition

1. dokument – informationsmodel – dtd

Udgangspunkt for fremstillingen i dette modul er det XML-dokument som er vist i fig.1 nedenfor. Vi vil gerne sikre os, at dokumenten er både velformet og gyldigt . Velformet er dokumentet, når det overholder de syntaksregler som gælder for XML jf. (External Link) . At et XML-dokument er gyldigt , vil sige at det er i overensstemmelse med en foreliggende standard for opmærkning, den standard som kaldes en DTD, en Document Type Definition .

En DTD fastlægger

  • hvilke elementer der forekommer i et XML-dokument
  • hvor mange gange det enkelte element forekommer
  • i hvilken rækkefølge elementerne forekommer

I det følgende vil vi (1) anskue en DTD som en implementeret informationsmodel , dernæst (2) se nærmere på reglerne for hvordan man skal bygge og notere informationerne i en DTD, og endelig (3) se nærmere på hvordan en DTD bruges sammen med et XML-dokument.

2. fra dokument til informationsmodel

2.1 opmærkningen

Udgangspunkt er opmærkningen af nedenstående lydbog (ex1):

<online_katalog><bog><forfatter nation="dk"><fornavn>Jørgen</fornavn><efternavn>Leth</efternavn></forfatter><impressum><titel>Det uperfekte menneske</titel><forlag sted="København">Gyldendal</forlag><udgivet>2007</udgivet><ISBN format="lydbog" volumen="11T:36M">978-87-02-06068-3</ISBN><pris>kr. 298</pris></impressum><stof><handling>Cool, elegante, morsomme og selvudslettende historier fra et uperfekt liv med litteratur,film, sport, kvinder og rejser. Digteren, filminstruktøren og Tour de France-kommentatorenm.m. har skrevet en erindringsbog af de sjældne, som samtidig tegner et portræt af danskkulturliv gennem de sidste 40 år. Jørgen Leths karakteristiske stemme fører lytteren gennem enaf dette årtis mest omtalte bøger.</handling><genre>biografi</genre><original_titel>Det uperfekte Menneske</original_titel></stof></bog></online_katalog>

Denne opmærkning vil vi gerne bruge som standard ved opmærkning af bogtitler. Det er derfor vigtigt at give en beskrivelse af denne standard således at alle nye og tilkomne titler følger samme opmærlning. Det kræver at der udarbejdes en oversigt over hvilke elementer og attributter der indgår i opmærkningen. En sådan oversigt kaldes også for en informationsmodel og har vi først uadarbejdet en informationsmodel, kan vi bruge denne som grundlag for at udvikle en DTD.

2.2 informationsmodellen

Informationsmodellen kommer til at se således ud (ex2):

1. BOG prototypen – strukturelement, container for den samlede beskrivelse af en bog 1.1 FORFATTER strukturelement; indgang til informationer om denaktuelle forfatter ATTRIBUT: nation: angiver forfatters nationalitet1.1.1 FORNAVN tekstelement; indeholder forfatterens fornavn 1.1.2 EFTERNAVN tekstelement; indeholder forfatterens efternavn1.2 IMPRESSUM strukturelement; indgang til alle informationer om bogens udgivelse1.2.1 TITEL tekstelement; indeholder bogens titel 1.2.2 FORLAG tekstelement; indeholder navnet på forlagetATTRIBUT: sted: angiver hjemsted for forlaget 1.2.3 UDGIVET tekstelement; indeholder året for udgivelsen1.2.4 ISBN tekstelement; indeholder bogens ISBN-nummer ATTRIBUT: format: angiver udgivelsens format:”heftet”, ”indbundet” eller ”lydbog” ATTRIBUT: volumen: angiver sidetal eller varighedfor en lydbog 1.2.5 PRIS tekstelement; indeholder indkøbspris1.3 STOF strukturelement; indgang til informationer om en bogs handling, genre og orignaltitel1.3.1 HANDLING tekstelement; indholder et indholdsresume, typisk svarende til indholdet angivet på bogens bagside1.3.2 GENRE tekstelement; indeholder angivelse af genre 1.3.3 ORIGINAL_TITEL tekstelement; indeholder angivelseaf originaltitel, er specielt relevant for oversat litteratur

Med denne oversigt, det vi kalder en formaliseret informationsmodel, har vi dannet os et samlet overblik over elementerne i modellen, over relationerne mellem elementerne, og over mulige attributter i et standarddokument. Enhver ny bog som skal indgå i ONLINE_KATALOG skal beskrives og opmærkes som XML-dokument i henhold til modellen i ex2.

Næste skridt bliver at implementere beskrivelsen i form af en DTD som vi kan bruge til at validere alle nye beskrivelser. At validere et dokument vil sige at fastlægge om der er tale om et gyldigt XML-dokument, et dokument som lever op til standarden.

3. dtd: en implementeret standard for opmærkning

En DTD, en Document Type Definition , er en standard, en deklaration , som angiver hvilke navngivne elementer der kan forekomme i en bestemt type XML-dokumenter, hvor mange gange elementerne forekommer, og i hvilken rækkefølge . På denne måde deklarerer og standardiserer en DTD et særligt vokabular , mængden af navngivne elementer og eventueller attributter, og en særlig struktur, relationen mellem elementer, for forekomster af en type XML-dokumenter.

3.1 syntaks

Der gælder en særlig syntaks for opbygningen af en DTD (jf. (External Link) ):

  1. Alle elementer i en DTD beskrives inden for tegnene<og>, samme notation som gælder for angivelsen af tags i XML.
  2. Med tegnet ’!ELEMENT’ angives at der er tale om en PI.
  3. Betegnelsen ELEMENT er et reserveret ord i XML, forbeholdt denne funktion i en DTD.

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Xml og xslt - en introduktion. OpenStax CNX. Mar 03, 2009 Download for free at http://cnx.org/content/col10642/1.2
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Xml og xslt - en introduktion' conversation and receive update notifications?

Ask