Les 12: DTD
Inhoud Herhaling theorie XML valideren XML schrijven op een bestaande DTD Zelf een DTD schrijven Toepassing mediatheek
Herhaling theorie , | ? * + AND operator (volgorde van belang). OR operator (volgorde niet van belang). ? Element kan éénmaal voorkomen of helemaal niet. * Element kan 0 of meerdere keren voorkomen + Element kan 1 of meerdere keren voorkomen.
Herhaling theorie
Herhaling theorie
Herhaling theorie Wat is PCDATA? Wat betekent ( heading* )? Wat betekent (titel?, heading+, paragraph*) In de theorie werd “mixed model content” vermeld. Zoek a.h.v. de theorie-slides (les 11) uit wat dit betekent. 1) PCDATA staat voor Parseable Character Data en mag alle tekens bevatten. Wel geen & of < of andere elementen 2) CDATA wordt gebruikt om gewone tekst weer te geven bij attributen, PCDATA bij elementen 3) Het element heading mag 0 keer, 1 keer of meerdere keren voorkomen 4) Het element heading mag 1 of meer keer voorkomen 5) Het element heading mag 0 keer of 1 keer voorkomen 6) Het element titel mag 0 keer of 1 keer voorkomen, gevolgd door het element heading dat 1 of meer keren mag voorkomen, gevolgd door het element paragraph dat 0 keer of 1 keer of meer keren mag voorkomen 7) Dit is een geheel van regels om combinaties tussen verschillende elementen de definiëren
XML Valideren Met de microsoft validator Zit normaal gezien standaard in IE6+ http://www.microsoft.com/downloads/details.aspx?FamilyID=4a3ad088-a893-4f0b-a932-5e024e74519f&displaylang=en Wordt gebruikt in het bestand xmlvalidator.htm
XML Valideren Met dreamweaver 8 Net zoals bij xHTML Gebruik shift – F6 om het document te valideren t.o.v de DTD
A – Oefening1
A – Oefening1 Open het bestand A-oefening1.xml Schrijf een xml – bestand dat voldoet aan de deze DTD Gebruik minimum 8 verschillende elementen
A – Oefening1 extra Plaats een valideringsfout in het xml – document Voer het document uit in IE en in FF Wat merk je op, waarom? Het xml document wordt getoond in de browser en er wordt geen enkele foutmelding getoond. Dit komt omdat de parser van IE en blijkbaar ook firefox enkel test of het document Wellformed is en niet test of het Valid is
A – Oefening2 Sla het document A-Oefening1.xml op als A-Oefening2.xml Pas de DTD aan zodat er ook een koper kan zijn voor peren en citroenen Test dit door voor peren een koper aan te maken, maar niet voor citroenen
A – Oefening2 extra Open de strict DTD van xHTML of download deze: http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd Wat moet ik veranderen om het atribuut alt bij het element image niet meer verplicht te maken Bij het attribuut alt #REQUIRED vervangen door #IMPLIED
A – Oefening 3
A – Oefening 3 Schrijf een DTD zodat het document A-Oefening3.xml valid is: Het attribuut BGCOLOR moet altijd voorkomen bij <TABLE> Gebruik parameter entiteiten om de waarden voor BGCOLOR en ALIGN op te vullen Plaats de DTD in een afzonderlijk bestand en koppel dit met het xml bestand
Toepassing mediatheek In de map mediatheek bevinden zich 3 xml bestanden Schrijf voor elk van deze bestanden een DTD in een afzonderlijk bestand Wijzig niets in de oorspronkelijke xml bestanden !!!
Categories.xml
Categories.xml Er is minstens 1 categorie aanwezig. Bij elke categorie MOET een ID staan. Een copyright mag maar moet niet. Een lange beschrijving volgt op een korte beschrijving . Een element categorienummer mag maar hoeft niet. In de plaats van dit categorienummer element kan willekeurige tekst staan (geen element) .
Leden.xml
Leden.xml Alle elementen onder DocumentProperties moeten 1 maal voorkomen Alle attributen zijn verplicht mee te geven Het attribuut ss:StyleID kan enkel de waarden “s21” en “s22” bevatten Het attribuut ss:Type kan enkel de waarde “String” bevatten
Mediatheek.xml
Mediatheek.xml De elementen datumEntry en commentaar zijn niet verplicht Alle attributen zijn verplicht Het attribuut type kan enkel “cd” of “dvd” zijn Onder uitvoerders moet er minimum 1 uitvoerder zitten
Einde les 12