Gegenstand der Studienarbeit ist die Entwicklung eines Generators für
optimierte XML-Parser, die die analysierten Dokumente gleichzeitig auf
Gültigkeit überprüfen. Für die Problemstellung soll, aufbauend auf einem aus
der Literatur bekannten Algorithmus zur Umsetzung von regulären Ausdrücken
in deterministische endliche Automaten, eine Lösung entworfen werden. Diese
Lösung, die einen LL(1)-Parser-Generator realisiert, kann sich entweder in
eine bereits bestehenden Implementierung einfügen oder neu umgesetzt
werden.
Im einzelnen sind folgende Teilaufgaben zu erfüllen:
- Zunächst ist eine Einarbeitung in die Definition von
Auszeichnungssprachen mittels XML-Dokumenttyp-Definitionen (DTDs)
notwendig. Danach wird durch eine große DTD (evtl. aus dem Bereich des
Open-Financial-Exchange (OFX)) und dazu gültigen kleinen Dokumenten ein
Testszenario definiert, für welches die Leistungsfähigkeiten der gängigen
validierenden XML-Parser überprüft werden.
- Die Arbeitsweise des Algorithmus' zur Umsetzung von regulären Ausdrücken
in deterministische endliche Automaten nach Ullman ist ebenfalls zu
erarbeiten und anschließend zu implementieren. Diese Implementierung soll
einen Parser erzeugen, der die Gültigkeit eines Dokuments schon während der
syntaktischen Analyse ermittelt, wobei das Inhaltsmodell der
zugrundeliegenden DTD ausgenutzt wird. Dabei ist es freigestellt, ob ein
bestehender XML-Parser um diese Funktionalität erweitert und ergänzt wird,
oder ob eine eigenständige Entwicklung vorgenommen wird.
- Zuletzt ist das oben definierte Testszenario auf die eigene
Implementierung anzuwenden und mit den schon ermittelten Ergebnissen zu
vergleichen.