R2D2 > XML 2 RDB: R2D2 > Testen en aandachtsgebieden

6.4 Testen en aandachtsgebieden

Ik heb mijn scripts getest met twee DTD's. Allereerst met de DTD in fig. 17a. Hierin komen alle operatoren voor, als ook instanties van alle regels die ik opgesteld heb in mijn algoritme, waaronder recursie. Mijn scripts hadden met deze DTD geen problemen en ook niet met een bijbehorend XML-document. Deze DTD is een goed voorbeeld van datagerichte XML. Een tweede DTD betrof een DTD waarmee een toneelstuk van Shakespeare gestructureerd werd. Een dergelijke DTD is meer document gericht en vraagt meer van het mogelijkheden voor positionering. Ook met deze DTD en met het bijbehorend XML-document hadden mijn scriptjes bijna geen problemen. Het enige probleem dat optrad was het dat er in de DTD een elementnaam voorkwam die gelijk was aan een gereserveerde term in SQL. Daar kon mijn systeem niet mee omgaan en dit is dan ook een punt waar nog naar gekeken zou moeten worden in de toekomst.

Een verandering ten opzichte van het algoritme is dat de data meteen wordt weggeschreven naar de database en niet eerst in de vorm van SQL-statements naar een bestand. De reden hiervoor is dat dit het toekennen van de juiste waarden aan de referentie velden mogelijk maakt zonder een grote en nauwelijks beheersbare administratie bij te houden. Door de waarden meteen weg te schrijven naar de database worden daar automatisch unieke ID waarden aan toegekend. Deze kunnen vervolgens weer gebruikt worden om de juiste waarden in te vullen in de refererende velden.

In het algoritme in het vorige hoofdstuk werd aangegeven dat ook de database aangemaakt werd aan de hand van de naam van het DTD-bestand. In mijn scripts is dit nog niet gerealiseerd. De reden hiervoor is dat in mijn proefopstelling ik die rechten niet had op de server. In mijn proefopstelling heb ik er daarom voor gekozen om maar met een, vaste, database te werken. In de toekomst is het echt vrij simpel om deze functionaliteit alsnog in te bouwen.