Formale Sprachen

Stand: 08.01.2007

Zeitrichtwert: 17 Unterrichtsstunden

Inhaltliche Schwerpunkte Bemerkungen

XML als universelles Format zur Strukturierung von Daten (5)

  • Speicherung von Daten im Binär- oder Textformat
  • Aufbau eines XML-Dokuments
  • wohlgeformte XML-Dokumente

Ein Blick hinter die Kulissen zeigt, dass viele Anwendungen zur Speicherung von Daten eine HTML-artige Darstellung benutzen, z. B.: GeoGebra (nach Entpacken der Datei), Kara oder JFlap. Im Gegensatz zu HTML werden hier die Tags frei und problemangepasst gewählt.

Anhand verschiedener XML-Dokumente werden analytisch die Grundregeln für den Aufbau solcher Dokumente erarbeitet. Hintergründe kann man in Dokumentationen wie z. B. bei selfhtml oder bei w3c nachschlagen.

Zur Anzeige der Dokumente sollte ein Browser (wie z. B. Firefox) benutzt werden, der die baumartige Struktur verdeutlicht und Fehlermeldungen erzeugt, wenn das Dokument nicht wohlgeformt ist. Alternativ können auch spezielle XML-Editoren eingesetzt werden, siehe z. B. die folgende Übersicht.

Zur Übung werden Datenbestände aus unterschiedlichen Gegenstandsbereichen mit XML beschrieben (z. B.: Adressenverwaltung, Kursverwaltung, Spieltag einer Fußball-Liga, Schachspiel, ...). Hierbei wird herausgestellt, dass Information aus dem jeweiligen Kontext mit Hilfe von XML in einem bestimmten normierten Datenformat repräsentiert wird. Der Unterschied zwischen den Begriffen Information und Daten wird dabei auch noch einmal klar gemacht werden.

Vom Speicherformat zum Vokabular (5)

  • Sprechfestlegung mit einer Dokumententypdefinition
  • Validierung von XML-Dokumenten

Sollen XML-Dokumente zwischen verschiedenen Anwendungen ausgetauscht werden können, so müssen Vereinbarungen über deren Struktur getroffen werden. Solche Vereinbarungen lassen sich mit Hilfe einer Dokumententyp-Definition (DTD) realisieren. Hierbei wird eine bestimmte Klasse von Dokumenten (ein sog. Vokabular) festgelegt. Im Unterricht wird dies an einigen sehr einfachen Beispielen erarbeitet.

Zur Überprüfung der Gültigkeit eines Dokuments bzgl. einer DTD werden Experimente mit geeigneten Validierern gemacht. Diese sind Bestandteil von XML-Editoren oder können separat genutzt werden (wie z. B. hier).

Interessant ist es, sich bereits etablierte Vokabulare anzuschauen (wie XHTML, SVG, ...) und auch selbst einfache XML-Vokabulare zu entwickeln (z. B. MyHTML, siehe Materialen zur Weiterbildung).

Sprachbeschreibung mit Grammatiken (4)

  • formale Sprachen
  • Grammatiken

Die bisher durchgeführten Experimente und Betrachtungen bzgl. XML werden jetzt verallgemeinert. Ziel ist es, weitere Konzepte zur Sprachbeschreibung und Spracherkennung zu erarbeiten. Als neuer Kontext bietet sich z. B. die Verarbeitung von Email-Adressen an. ( siehe Materialien zur Weiterbildung

Ein Blick in die Spezifikation von Email-Adressen (siehe rfc 822) zeigt, dass das Format von solchen Adressen - ähnlich wie bei XML - präzise festgelegt wird. Anschließend wird die Sprachbeschreibung mit Grammatiken am Beispiel von vereinfachten Email-Adressen (und weiterer Übungskontexte) erarbeitet. Als Werkzeug zur Verdeutlichung der Aktivitäten wird jflap eingesetzt

Spracherkennung mit Automaten (3)

  • endlicher Automat als Akzeptor

Zur Validierung von vereinfachten Email-Adressen wird ein endlicher Automat (als Akzeptor) entwickelt. Experimente mit Jflap zeigen, dass der Übergang von Grammatiken zu endlichen Automaten schwierig ist. Die Reihe endet mit einem Ausblick auf das Informatikstudium, in dem Sprachuntersuchungen eine weitere Vertiefung erfahren.

Valid XHTML 1.0 Strict Valid XHTML 1.0