Übungen
Aufgabe 1
Wir betrachten die Darstellung von Schachspielzuständen.
Das Programm GTChess benutzt folgendes Speicherformat:
........
.p.kpQ..
..np....
.p..b.BP
..q..p..
........
.....PP.
.....RK.
W0000
Das Programm NagaSkaki benutzt die Forsyth-Edwards-Notation (FEN) zur Beschreibung von Schachspielzuständen (beachte: die Punkte deuten an, dass hier weitere Informationen folgen):
8/1p1kpQ2/2np4/1p2b1BP/2q2p2/8/5PP1/5RK1 w ...
Im Folgenden findest du zwei Vorschläge für eine XML-basierte Darstellung solcher Spielzustände.
Version 1:
<?xml version="1.0" encoding="iso-8859-1"?>
<Schach-Spielzustand>
<schwarz>
<Bauer>b7</Bauer>
<Bauer>e7</Bauer>
<Bauer>d6</Bauer>
<Bauer>b5</Bauer>
<Bauer>f4</Bauer>
<Springer>c6</Springer>
<Läufer>e5</Läufer>
<Dame>c4</Dame>
<König>d7</König>
</schwarz>
<weiss>
<Bauer>h5</Bauer>
<Bauer>f2</Bauer>
<Bauer>g2</Bauer>
<Turm>f1</Turm>
<Läufer>f5</Läufer>
<Dame>f7</Dame>
<König>g1</König>
<amZug/>
</weiss>
</Schach-Spielzustand>
Version 2:
<?xml version="1.0" encoding="iso-8859-1"?>
<Schach-Spielzustand>
<schwarz amZug="nein">
<Bauer Spalte="b" Zeile="7"/>
<Bauer Spalte="e" Zeile="7"/>
<Bauer Spalte="d" Zeile="6"/>
<Bauer Spalte="b" Zeile="5"/>
<Bauer Spalte="f" Zeile="4"/>
<Springer Spalte="c" Zeile="6"/>
<Läufer Spalte="e" Zeile="5"/>
<Dame Spalte="c" Zeile="4"/>
<König Spalte="d" Zeile="7"/>
</schwarz>
<weiss amZug="ja">
<Bauer Spalte="h" Zeile="5"/>
<Bauer Spalte="f" Zeile="2"/>
<Bauer Spalte="g" Zeile="2"/>
<Turm Spalte="f" Zeile="1"/>
<Läufer Spalte="f" Zeile="5"/>
<Dame Spalte="f" Zeile="7"/>
<König Spalte="g" Zeile="1"/>
</weiss>
</Schach-Spielzustand>
Vergleiche die verschiedenen Darstellungen. Schreibe ein kurzes Plädoyer für / gegen die Einführung einer XML-basierten Darstellung von Schachspielzuständen.
Aufgabe 2
Analysiere das folgende XML-Dokument zur Beschreibung einer Band - hier der Beatles. Welche Information wird hier dargestellt? Wie ist das XML-Dokument zur Darstellung der Information aufgebaut?
<?xml version="1.0" encoding="iso-8859-1"?>
<band>
<name>Beatles</name>
<gründung>1960</gründung>
<auflösung>1970</auflösung>
<!--Liste der Mitglieder.-->
<mitglieder>
<mitglied>
<name>Lennon</name>
<vorname>John</vorname>
<instrumente>
<instrument>Gesang</instrument>
<instrument>Rhytmusgitarre</instrument>
<instrument>Tasteninstrumente</instrument>
<instrument>Mundharmonika</instrument>
</instrumente>
</mitglied>
<mitglied>
<name>McCartney</name>
<vorname>Paul</vorname>
<sir></sir>
<instrumente>
<instrument>Gesang</instrument>
<instrument>Bass</instrument>
<instrument>Gitarre</instrument>
<instrument>Tasteninstrumente</instrument>
</instrumente>
</mitglied>
<mitglied>
<name>Harrison</name>
<vorname>George</vorname>
<instrumente>
<instrument>Gesang</instrument>
<instrument>Leadgitarre</instrument>
<instrument>Tasteninstrumente</instrument>
<instrument>Sitar</instrument>
</instrumente>
</mitglied>
<mitglied>
<name>Starr</name>
<vorname>Ringo</vorname>
<instrumente>
<instrument>Schlagzeug</instrument>
<instrument>Percussion</instrument>
<instrument>Gesang</instrument>
</instrumente>
</mitglied>
</mitglieder>
</band>
Besorge dir Informationen über die nächste Tournee deiner Lieblingsband. Skizziere (analog zum Dokument in Aufgabe 1) ein XML-Dokument zur Beschreibung dieser Tournee.
Aufgabe 3
Die Daten einer Überweisung hat man früher auf einen Zahlschein eingetragen.
Entwickle ein XML-Format zur Beschreibung von Überweisungsdaten. Erstell ein XML-Dokument
mit den Daten einer Überweisung und speichere es in einer Datei mit der Erweiterung .xml
ab.
Aufgabe 4
Graphen treten in sehr vielen Anwendungen auf (z.B. als Straßennetze). Entwickle ein XML-Dokument, mit dem man die Information eines Graphen (wie des folgenden) strukturiert darstellen kann.
Aufgabe 5
Informiere dich darüber, wie man Bücher zitiert. Du kannst z. B. einen Wikipedia-Artikel zu einem
Stichwort wie Buch
oder Informatik
aufrufen und dir die dort angegebene Literaturliste
anschauen.
Entwickle ein XML-Format zur Beschreibung von Büchern für eine Bibliothek. Gib die Daten einiger Bücher
im entwickelten Format ein und speichere die Daten in einer Datei mit der Erweiterung .xml
ab.
Quellen
- [1]: Zahlschein - Urheber: unbekannt - Lizenz: Public Domain