Übungen
Eine Musikliste
Die wichtigsten Daten einer CD-Sammlung sind als XML-Dokument erfasst worden:
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE Musikliste SYSTEM "Musikliste.dtd">
<Musikliste>
<Medium nummer="4710" typ="CD">
<Titel>Abbey Road</Titel>
<Interpret>The Beatles</Interpret>
<Jahr>1969</Jahr>
<Laufzeit>44</Laufzeit>
</Medium>
<Medium nummer="4711" typ="DVD">
<Titel>The Wall</Titel>
<Interpret>Pink Floyd</Interpret>
<Jahr>1979</Jahr>
<Laufzeit>81</Laufzeit>
<BluRay />
</Medium>
<Medium nummer="4712" typ="CD">
...
Aufgabe 1
Die Musikliste (und ihre DTD) kannst du hier als ZIP-Datei herunterladen und bei dir entpacken.
Schreibe dann jeweils eine Python-Funktion, die
- alle Titel ausgibt (siehe rechts), zusammen mit der Art des Mediums (BluRay, MP3), falls angegeben.
- alle Titel eines Interpreten ausgibt (Beachte, dass es mehrere Interpreten pro Titel geben kann).
- eine Liste aller unterschiedlichen Interpreten zurückgibt.
- die Laufzeit aller Medien eines bestimmten Typs (CD,DVD) aufsummiert.
Limericks
Die im Ausschnitt gezeigte SVG-Datei beinhaltet mehrere englische Limericks.
Auch SVG ist ein XML-Dialekt - im Quelltext der Datei sind die Texte aber nur schwer zu finden.
Aufgabe 2
- Lade die SVG-Datei herunter (rechter Mausklick). Suche die Elemente (Tags), die in SVG für die Anzeige von Texten zuständig sind.
- Schreibe ein Python-Programm, das alle Textinhalte extrahiert und ausgibt (z.B. als Liste von Strings).
- Erweitere das Programm, so dass die Texte nun inhaltlich gruppiert werden (alle Zeilen des Limericks zusammen), z.B. als zweidimensionale Liste.