<< Chapter < Page | Chapter >> Page > |
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
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.
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.
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.
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.
Der gælder en særlig syntaks for opbygningen af en DTD (jf. (External Link) ):
Notification Switch
Would you like to follow the 'Xml og xslt - en introduktion' conversation and receive update notifications?