Vorige | Home | Slides | Volgende
XML 2010: Opdracht 2
Dit is een praktische opdracht die hoort bij het vak XML 2010, dat gegeven wordt aan de Faculteit der Letteren van de Rijksuniversiteit Groningen.
Voor deze opdrachten is begeleiding aanwezig op dinsdagen tussen 15:00 en 17:00 en op woensdagen tussen 11:00 en 13:00 in zaal 13.0102C. Om in zaal 13.012C op de computers te kunnen werken, heb je een Linuxaccount nodig. Neem contact op met de docent (erikt(at)xs4all.nl) als je zo'n account nog niet hebt.
Je mag de opdrachten ook thuis of op een andere computer maken. Hou er wel rekening mee dat je soms zal moeten inloggen op de prakticumserver siegfried.let.rug.nl . Dat kan bijvoorbeeld met 1 van de programma's winscp, putty of ssh.
De deadline voor het inleveren van de resultaten van deze opdracht is maandag 20 september 2010, 09:00. Plaats de resultaten van jouw opdracht op Nestor.
Deze opdracht bevat drie onderdelen. Het eerste deel is twee punten waard. De andere twee delen kunnen elk vier punten opleveren.
Opdracht 2.1
- haal het bestand toneelstuk.dtd op. Opgelet: de tweede en derde regel moeten eindigen op )*> (anders geeft xmllint een foutmelding)
- vermeld dit bestand als dtd in jouw XML-bestand van opdracht 1 op de manier zoals genoemd in de collegeslides (pdf)
- controleer het document met de validator xmllint met opties -nooout en --valid en los foutmeldingen op door het XML-document aan te passen
Lever als resultaat van deze deelopdracht jouw nieuwe versie van het XML-bestand van opdracht 1 in.
Opdracht 2.2
Voor iedere student is een apart tekstbestand voor deze opdracht beschikbaar in de directory /home/erikt/class/xm10/opdracht2 op de prakticummachines (en op de server siegfried). De naam van jouw bestand is gelijk aan je het weeknummer plus jouw studienummer plus de extensie .txt , bijvoorbeeld 2-1234567.txt . Kopieer dit bestand naar je eigen directory (je kan hiervoor vanaf een Windowsmachine ook winscp gebruiken) en geeft het de extensie .xml in plaats van .txt .
- bedenk vijf redelijke elementen (tagnamen) om tekststructuren in jouw document te beschrijven
- voeg XML-tags toe aan jouw document en zorg ervoor dat elk van de vijf elementen minstens 1 keer voorkomt. Je hoeft niet de hele tekst te annoteren en je mag zelfs een (groot) gedeelte van de tekst verwijderen als het niet in de structuur past
- maak een DTD die de XML-elementen en hun relaties en attributen beschrijft
- voeg een XML-prolog aan jouw XML-document toe waarin wordt verwezen naar de DTD
- controleer jouw XML-document met xmllint met opties --valid en -noout en corrigeer eventuele fouten in de DTD en het XML-document
Lever als resultaat van deze opdracht zowel het correcte XML-document als de DTD in.
Opdracht 2.3
- schrijf een XML schema die de structuur van jouw XML-document uit opdracht 2.2 beschrijft en plaats dit schema in een apart document met extensie .xsd
- controleer het XML-document in combinatie met het schema met
xmllint met opties --schema en -noout,
bijvoorbeeld:
$ xmllint --schema schema32.xsd -noout document.xml
Als je entities in je document hebt moet je ook de optie -noent opnemen in deze commandoaanroep - corrigeer eventuele fouten in de DTD en het XML-document
Lever als resultaat van deze opdracht het XML schema in. Als het goed is dan hoefde je in deze opdracht jouw XML=document niet te veranderen dus die hoef je geen tweede keer in te leveren.
Plaats al jouw bestanden in 1 tekstbestand met de naam 2-studienummer.txt en lever dit bestand in via Nestor voor maandag 20 september 2010, 09:00
Last update: October 08, 2010. erikt(at)xs4all.nl