Informationsstrukturierung: Fr, 20.10.2017

Text und Datenstruktur

In dieser Übung werden wir uns um die Frage bemühen, wie man seine Daten strukturieren soll. Dazu ein Szenario.

Eine Bank hat diverse Konten. Diese Konten sind verschiedenen Personen zugeordnet. Diese können on diesen Konten abheben und auch Geld einzahlen. Die Bank merkt sich in diesem Fall die Kontobewegung, das Datum sowie den Betrag. Eine weitere Zahl ist der Kreditrahmen, den die Bank willkürlich bestimmt.

Es ist dann zum Beispiel möglich, eine Übersicht über die Kontobewegungen eines Zeitraums zu bekommen (wie sie das beim Bankautomaten machen können), sich den Kontostand anzeigen zu lassen und eine Überweisung zu tätigen.

Die Bank kann auch eine Bilanz machen. In diesem Fall werden von allen Konten der jeweilige Kontostand berechnet. Am Ende des Jahres fallen außerdem Zinsen an. Außerdem kann sie gewisse Dinge abprüfen, zum Beispiel ob der Kreditrahmen überschritten wurde. Ferner können Kunden sich jederzeit über ihren Kontostand informieren.

Es geht nun darum, sich zunächst über das Format der Datei im Klaren zu werden. Anschließend werden wir dieses Format in ein Schema fassen, dh eine XSL-Schema Datei erzeugen, und danach mittels XSLT in Anwendung bringen. Dabei gibt es einige Kriterien für die Strukturierung:

Es bleibt dann in der Hand des Nutzers, die richtigen Daten zu erheben.

Im vorliegenden Fall sammelt man die Kontobewegungen. Bei der Bilanz werden dann mehrere Dinge ermittelt.

Daten

(Der Vertraulichkeit halber habe ich Daten frei erfunden ...)
Die Bank heißt Entenhausener Sparkasse. Hier eine Liste der Kontoinhaber: Kundennummern haben stets zwei Ziffern.

Aufgabe

Zunächst einmal mache man sich einen Plan, welche Tags vorkommen sollen und wie das Dokument strukturiert wird. Dieser Plan ist informell, sollte aber irgendwo dokumentiert sein. Sie können auch ein Skelett einer XML Datei schreiben, in das dann die Daten eingetragen werden. Als zweites dann sollen Konten und Namen samt (erfundenen Kontobewegungen) in ein Dokument eingetragen werden, das dem Plan gemäß strukturiert ist.

Auch wenn Ihnen jetzt noch nicht klar ist, wie wir Zinsen oder ähnliches ausrechnen, können Sie das Gerüst bereits anlegen. Die Datenbank enthält folgende Angaben:

Wie wir genau mit Datumsangaben und Zahlen umgehen, werde ich noch erläutern. Nicht vorhanden sollen folgende Angaben sein: Diese werden jeweils bei Bedarf errechnet. Wie das geht, werden wir noch besprechen.

Generelle Hinweise

Die Namen für Tags müssen erstens klar verständlich sein (also keine Kürzel) und zweitens in etwa das benennen, was die in ihnen beheimatete Information beschreibt. Wollen Sie einen Eintrag für einen Kunden erstellen, so nennen Sie das Tag einfach <Kunde> und nicht <kd>. (Groß- und Kleinschreibung ist für XML wichtig, nicht aber für die Verständlichkeit. Sie können es für die Benennung der Tags damit halten, wie Sie wollen.) Untertags sind dann <Name> oder <Adresse>. Es folgt, dass <Geburtsdatum> oder <Adresse> keine Untertags von <Name> sind, weil ja das Geburtsdatum nicht Teil des Namens ist ebensowenig die Adresse. Dies sollte der Leitgedanke bei der Organisation sein!

Die Tagnamen sollten am Besten nur aus Buchstaben, Zahlen und Unterstrichen bestehen. Damit sind Sie auf der sicheren Seite. Auf keinen Fall sollten Sie Leerzeichen oder den Doppelpunkt verwenden.


Achtung:

  1. Jede Datei, die Sie in den Lernraum geben, muss in dem Dateinamen zunächst Ihren Namen enthalten, getrennt durch Unterstriche, und als drittes dann einen Zusatz wie uebung1 oder ein ähnlicher Zusatz. Bitte keine Matrieklnummern verwenden, ich kann damit nichts anfangen, und sie werden automatisch, dh vom System mitgeliefert. (Also etwa so: gustav_gans_ueb1.xml oder dorette_duck_ueb1.zip.)
  2. Benutzen Sie keine Umlaute und andere Sonderzeichen in Dateinamen. Die Dateien können von mir ansonsten nur mit Mühe verwaltet werden. (Sie können genaue Informationen auch in der Datei selbst als Kommentar unterbringen, machen Sie also davon Gebrauch.)
  3. Bitte benutzen Sie zum Archivieren und Bündeln von Dateien nur das .zip-Format.
  4. Laden Sie jede Woche bitte nur genau einmal eine Datei (oder ein Archiv) hoch. Mindestens einmal, weil das Teil Ihrer Studienleistung ist: Sie sollen jede Woche abgeben. Höchstens einmal, weil ich so viele Dateien nicht wirklich lesen und würdigen kann.