Lösungen für Übungsblatt 4

Programmieren im Internet WS 2000/2001


Andreas Speck, M. E. Leypold, Julius Gonser

speck@informatik.uni-tuebingen.de
leypold@informatik.uni-tuebingen.de
julius.gonser@student.uni-tuebingen.de

Punkte: 30

Ausgabe: 13.11.00
Abgabe: 27.11.00

Allgemeines Abgabeverfahren:

Unter /afs/informatik.uni-tuebingen.de/pu/pii/abgabeN/gruppeM

wobei:
werdet Ihr ein Verzeichnis finden, das für die jeweiligen Mitglieder der Übungsgruppe beschreibbar ist.
Bitte kopiert Eure Ergebnisse, d.h. die Daten die zur Lösung des Aufgabenblattes N gehören in dieses Verzeichnis.
Legt dort bitte NUR die Ergebnisse ab, keinen sonstigen Datenschrott!

Falls Ihr mit der Bearbeitung nicht mehr weiterkommen solltet, dann fragt uns (s.o.), damit wir gemeinsam an der Lösung arbeiten.
Diese Übungen sollen kein Rätselspiel sein, in dem die Lösungen erst am Ende bekanntgegeben werden.

SAX Parser





Aufgabe 1: (10 Punkte)

Einfaches Parsing:
Baut einen einfachen Parser, der ein gegebenes XML File in ein ASCII Format umwandelt
Verwendet den SAX Parser.
Link auf das XML File: exercise_01.xml
http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/simpleParse/exercise_01.xml

und so sollte das Ergebnis aussehen:exercise_01.txt
http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/simpleParse/exercise_01.txt
Lösungsbeispiel: Exercise_01.java

http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/Loesung4/simpleParse/Exercise_01.java




Aufgabe 2: (10 Punkte)

Konversion von HTML zu LATEX:
Baut einen einfachen SAX Parser, der ein gegebenes XML File in ein LATEX Dokument umwandelt.
Link auf das XML File: exercise_02.xml
http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/convert2LATEX/exercise_02.xml

und so sollte das LATEX File aussehen: exercise_02.tex
http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/convert2LATEX/exercise_02.tex
Lösungsbeispiel: Exercise_02.java

http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/Loesung4/convert2LATEX/Exercise_02.java

Zusatz: dynamicList.java

http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/Loesung4/convert2LATEX/dynamicList.java
Diese Aufgabe könnte auch ohne diese Liste auskommen. Sollte die Aufgabenstellung jedoch komplexer sein, ist eine derartige Liste sehr hilfreich.



Aufgabe 3:(10 Punkte)

Validierendes Parsing mittels DTD:
Schreibt eine DTD manFormat.dtd zum Parsing des XML Documents gcc.xml.
http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/DTD/gcc.xml

Verwendet als SAX Parser: Validation.java
http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/DTD/Validation.java

Überprüft mit dem für gcc.xml entwickelten DTD das Dokument error_prone.xml.
http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/DTD/error_prone.xml

Welche Fehler können gefunden werden?

Modifiziert Euren DTD damit folgender Zusatz des XML Dokuments ebenfalls erfolgreich geparst werden kann:
<OPTIONS paragraph="modify your dtd in order to parse this!:"> <OPTION parameter="-a" explanation="in order to test you" > </OPTION> <OPTION parameter="-m" explanation="in order to test you again" > </OPTION> <OPTION parameter="-j" explanation="in order to test you again" > </OPTION> </OPTIONS>

Lösungsbeispiel: manFormat.dtd

http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/Loesung4/DTD/manFormat.dtd

Lösungsbeispiel: error_prone_corrected.xml

http://www-pu.informatik.uni-tuebingen.de/ip/IP2000_2001/day4/Loesung4/DTD/error_prone_corrected.xml





Andreas Speck
Last modified: Mon Dec 4 16:37:27 MET 2000