Die XML-Datenbasis von Krisztián Németh


In seiner Diplomarbeit erstellte Krisztián Németh eine Benutzeroberfläche zu der XML-formatierten UEDb-Daten. Seine DB-Implementierung stützt sich auf die von Puttkammer konvertierten XML-Version, benutzt das JAVA Application Tomcat (Version 3.2.3) und insbesondere das Paket Infonyte um die Verarbeitungeffizienz zu steigern. Das System wurde vor allem mit MS Internet Explorer getestet.

Während die vorangehende Modellierungen (von Fitschen bis Puttkammer) zwei Repräsentationebenen vorgesehen haben:

  1. 1. SGML/XML-Ebene (legitimiert zusätzlich als Schnittstelle für Updating und Fehlerkorrekturen) und
  2. 2. Datenbankebene (Informix) wo die Zugriffsmöglichkeit für Benutzer via SQL vorgesehen waren,
hat Németh die zweistufige Systemarchitektur vereinfacht: XML ist eine Textdokumentation und Datenbasis zugleich. (Vgl. auch die Beschreibung im Kongressbericht von Tartu 2000, insb. die Abbildung auf S.3.)

Némeths UEDb-Modell hat eine zentrale XML-Komponente, die sowohl von den Benutzern als auch von Systempfleger für Korrekturen und Updating benutzt werden kann. Diese Vereinfachung ergab sich durch die Software-Entwicklung der letzten Jahren. Die Zweistufigkeit war vor allem durch Effizienzüberlegungen bedingt, denn es wäre in den neunziger Jahren unrealistisch gewesen, in Text-Datenbeständen der Größenordnung von 10 hoch 8 bis 9 direkt zu recherchieren.

Das eigentliche Problem ist die Sicherung der Effizienz: XML-Datenbestände sind Textdateien, auch wenn sie intern strukturiert sind. Bei großen Dateien (und die UEDb gehört zu diese Klasse) mit aufwendigen, variationsreichen Strukturierungen wachsen leicht die Verarbeitungszeiten ins Unvertretbare. Die Systeme die als Vorführprogrammen glänzen, brechen zusammen, wenn sie mit großen XML-Dateien und mit komplexen Strukturierungen konfrontiert werden. Es gibt auf dem Markt einige Softwarepakete, die angeboten werden um große XML-Dateien mit Abfrageapplikationen zu versehen. Németh hat diese XML-Software getestet und kam zu der Einsicht, daß für die UEDb das java-basierte Infonyte-System die beste Lösung ist.

Infonyte ist eine Java-Applikation. Aus der XML-Datei wird eine binarisiert und indizierte Kompaktdatei gemacht, die effizient und komplett rechechiert werden kann. Die Konversion ist für den Benutzer unsichtbar, da die Daten weiter nach ihrer XML-Struktur erreichbar bleiben. Németh konvertiert UEDB.XML zu UEDB.DOM, die als Grundlage der weiteren Verarbeitung dient. Er macht die einzelnen 1874 Lexikoneinträge direkt zugänglich.

  uedb.xml --> uedb.dom --> EINTRAEGE(1-1874.xml)

Andererseit führen verschiedene Pfade in Némeths Modell wieder zusammen: Er übernimmt die von Holger Puttkammer konvertierten und strukturierten XML-Daten und die von Saliha Rabah entwickelten Unicode-Fonts. Seine Abfragesystem macht die bisherige Arbeit präsentierbar. Er stellt Abfrage-Muster zur Verfügung, die es ermöglichen rekonstruierte Formen, einzelsprachliche Belege oder besondere Konfigurationen direkt (mit XQL) abzufragen, z.B.:

/UEW/EINTRAG?/ETEM/STAMM/F/regMatch('wete')

/UEW/EINTRAG?/ETEM/(STAMM/F/regMatch('wete') $and$ BED/regMatch('Wasser')) usw.

Drittens, Németh stellt virtuelle Tastaturen zur Verfügung, damit auch die auf den kommerziell zugänglichen Tastaturen fehlenden diakritischen Zeichen miteingegeben werden können.

1.2. Sprachspezifische Font-,Phonem- und Suchwortlisten von Saliha Rabah

Die belegsprachlichen Abfragen sind dadurch erschwert, daß der Benutzer eines etymologischen Wörterbuches nicht notwendigerweise sprachkundig ist, und selbst dann, wenn er das Wort kennt, kann das Wort fehlen, oder die Schreibweise, insbesondere bei den Dialektangaben, variieren. Daher scheint es zweckmäßig zu sein, die jeweiligen Belegworte den Benutzern als Suchwortlisten anzubieten. Bei der Entwicklung der Unicode-Fonts ergab sich die Notwendigkeit für die kontrolle der Zeichen ebenfalls sprach- und dialektspezifische Auflistungen der Fonts zu erstellen. Es wäre auch interessant die sprachspezifischen Listen der Phoneme zusammenzustellen. Mit diesed Aufgaben setzte sich Frau Saliha Rabah in ihrer Studienarbeit auseinander. Die Motivation für die Zusammenstellung der dialektspezifischen Fontlisten ist in erster Linie die konsequente Verwendung der Dialektbezeichnung und deren Klassifizierung gewesen. Die Betrachtung dieser Listen förderte Kodierung- und Konversionsfehlern zu tage und führte zu Revision der Dialektlisten. Die Auflistungen waren u.U. interessanter aus der Perspektive der Konstruktion der Datenbasis als aus der Sicht neuer linguistisch-kompariatistischer Erkennnnisse. Nichtdestotrotz erstellte Frau Saliha Rabah drei interessante Listen in ihrer Studienarbeit, nämlich 1. Auflistung der Fonts nach Sprachen und Dialekten, deren Anzahl während ihrer Arbeit abhängig von Fehlerbereinigung schwankte, bis wir uns zum Schluß bei 208 geeinigt haben. Diese Listen sind interessant aus der Perspektive der Entdeckung von fehlerhafen Datenkonversion (von Winword zu XML) und sonstigen eventuellen Fehlkodierungen, wobei die einmalige Vorkommen der Zeichen immer besonders fehlerverdächtig sind. Die sprachspezifische Fontsauflistungen wurden de facto als Arbeitsgrundlagen für die Fehlerbereinigung benutzt. Die Fontslisten werden aktualisiert und sind weiter verfügbar. (Die Dateinamen sind mit den 5-stelligen Dialektnummern identisch: die finnische Liste hat "der Name" 01000.xml, das Vach-Ostjakische 14101.xml usw. und sie befinden sich in dem Verzeichnis ../pdom/Daten/Dialekt\... )

2. Auflistung der Phoneme nach Sprachen bzw. Dialekten. Während die Fontsauflistungen rein nach der graphischen Form durchgeführt war (wo kyrillische b, r, k usw. als unterschiedlich gezählt haben als die entsprechenden latenischen b, r und k), wurde jetzt die lautliche Gleichheit im Vordergrund gestellt und die an sich unsinnige Doppelzügigkeit durch die kyrillische Schrift eliminiert und die Dialektgruppen sind zusammen gezählt worden. Allerdings blieben die Ergebnisse unbefriedigend da verbindliche Aussagen ohne intime Kenntnisse der Dialekte und der phonologischen Orientierung der beteligten Forscher nicht zu machen sind. Die Weiterführung der Phonemlisten ist nicht geplant.

3. Auflistung der UEDb-Belege nach Sprachen und Dialekten. Diese Auflistung warf die Frage der Sortierfolge auf und führte zu der Überlegungen, in dem Papier Der Unicode-Zeichensatz für die UEDb ausführlich behandelt werden. Salihas einmalige Auflistungen sind zwar vorhanden, aber nicht updatebar.

Da Frau Saliha Rabah mit Delphi arbeitete, erwies sich die Übernahme ihrer Programme in das UEDb-System als schwierig oder de facto unmöglich.

1.3. Formatierungsversuch für den Kommentarteil von Jérôme Diebold

Jérôme Diebold hat in einem auf dem ersten Blick bescheidenen Rahmen vorgenommen die von Puttkammer zurückgestellte Formatierung des Kommentarteils zu bearbeiten. Seine Studienarbeit "Formatierung der Kommentarteile in der UEDb-Datenbank" reproduzierte die Oberfläche der Kommentare in der tabellarischen Form, wie sie in der Word-Version vorlagen.

 

2. Uralothek -- 2004/05 -- Leistungsmerkmale

Uralothek entstand als Ergebnis der Dimplomarbeit von Herrn Jérôme Diebold 2004.

2.1. Benutzerfreundliche Anzeige

In der vorangehenden Versionen waren die gesuchten Informationen oft in ihrer kodierten Form präsentiert oder nur improvisiert bearbeitet. So wurden nach einer Suche lediglich die Identifikationsnummer der Lexikoneinträge angezeigt. Jetzt ging es um eine benutzerfrendlichere Präsentation: Nicht die Identifikationsnummer, sondern die gesuchten Wörter sollten sofort (in einem Schritt) angezeigt. Insbesondere:
  1. Einheitliche Seitenanzeigen:
  2. Inhaltsverzeichnis mit Hyperlinks
  3. Code-Optimierung
  4. Sortierte Listen

2.2. Virtuelle Tastaturen für phonologische Klassen

  1. Die virtuellen Tastaturen sind als eine Hilfmittel entstanden, die ermöglichen sollten, die fehlenden diakritischen Zeichen oder Sonderzeichen mit einem Tastendruck einzugeben.

    Beipielsweise sollte eine rekonstruierte Form mit einer Endung auf -ŋ$ (am Wortende) gesucht werden:

    Vorgehen

    1. Uralothek aktivieren
    2. Rekonstruktion auswählen
    3. Tastatur in Kopfteil anklicken
    4. ŋ +  + $ die Tasten auf der VT betätigen
    5. Suchergebnis: die gesuchten LE-Instanzen.

    Weitere Beispiele: (Ungarisch) é, ü, á, usw.

  2. Die erste Erweiterung entstand als eine zusätzliche Vereinfachung um Doppelbuchstaben oder Kodierungen mit einem einzigen Tastenberührung effizienter (schneller, weniger fehleranfällig) einzugeben. Uralothek: 1. Vergleich -- Sprache 2. Ungarische auswählen 3. Belegsprache in Headfeld anklicken 4. Tastatur rufen 5. Beispiel: cs-ü-cs-ö-k Beispiele: Ung. sz, ny, cs -- &a_acute; u.ä.
  3. Zusammenfassung der diakritischen Erweiterungen: Wenn die diakritischen Zeichen auf der Maschine schon gespeichert sind, kann mann die diakritischen Erweiterungen der einzelnen einfachen Basisbuchstaben speziell für die Suche zusammenfassen: univs.html: Beispiele: alle a-a, alle é-s usw. Man such alle a-s, gleichgültig ob lang uder alle s-Laute usw. Dies ist unpräzis, aber kann u.U. sinnvoll und notwendig sein
  4. Schließlich man kann die phonologischen Klassen (einer Sprache) systematisch zusammenstellen und auf Tasten legen. Die Zusammenlegung der Klassen beeinträchtigt die Zugänglichkeit der einzelnen (singulären) Phoneme nicht: Die Konsonanten und die Vokale werden tabellarisch zusammengestellt und die Beschriftung der Tabellen sind die phonologischen Basiskategorien. Insoweit weitere Merkmale benötigt werden, werden sie aus der Basisklassen herausgefiltert. Die Übergabe der ausgewählten Gruppen erfolgt in zwei Schritten. Die Phoneme sind sprachspezifisch also von Sprache zu Sprache verschieden, wobei natürlich die einzelnen Phonemsysteme einander überlagern. Da in der Uralothek die Belege sprachlich (und auch nach Dialekten) klassifiziert vorlegen, ist es möglich aus dieser Belegsammlung die sprachspezifische Phoneminventar herauszufiltern, sortieren und als sprachspezigfische Tastatur (mit Phonemklassen) anzubieten. Die einzelsprachlichen Phoneminventare und Tastaturen werden automatisch generiert.

2.3. Erfassung der genetischen Beziehungen zwischen den (uralischen) Sprachen

Die Verwandtschaftsbeziehungen zwichen den uralischen Sprachen stehen fest und werden einandern fachintern in einem interaktiven genetischen Stammbaum zugeordnet. Diese Repräsentation wird auch der Datenbasis zugänglich gemacht. hierdurch ist es möglich nicht nur die Sprachen abzufragen, die in dedr UEDb belegt sind sondern auch alle Sprachzweige: wie obugrisch, ugrisch, ostseefinnisch, wolgaisch, wolgafinnisch usw. Die ausgewählte Sprachgruppe (oder Einzelsprache) kann direkt von Sprachbaum her aktiviert werden.

2.4. Automatische Generierung der einzelsprachlichen Suchwortlisten.

Die einzelsprachlichen Belege sind in der Uralothek auch als Klasse isolierbar und können exzeptiert werden. Die einzelsprachlichen Beleglisten sind weiter nach Dialekten spezifiziert (ausgenommen Finnisch, Estnisch und Ungarisch) und die Belegwortlisten können auch dialektspezifisch erstellt werden. Auch die Anzahl der Belege wird ermittelt. Da die Dialekte auch geordnet und in Dialektgruppen zusammengefaßt sind, ist es möglich auch die Auflistungen der Dialektgruppen anzufordern (also Berg-Tscheremissisch, Nord-wogulisch oder Tundra-Nenetzisch usw.

Die Generierung der Listen erfolgt jetzt online (früher mit Hilfe eines Programms im Vorfeld, sp¨ter automatisch in der Zeit der Systemgenerierung).

2.5. Gezielte Gegenüberstellung von zwei oder mehreren Sprachen nach einer phonologischen Konfiguration.

Man kann zwei Sprachen auswählen und auflisten, welche Etymologien in diesem Sprachpaar überhaupt belegt sind.

Also: Ungarisch - Syrjänisch, Mordwinisch - Selkupisch usw. Interessanter ist nicht alle etymologischen Entsprechungen auflisten zu lassen, sondern eine phonologische Konfiguration auszuwählen:

z.B. intervokalisches langes -kk- in der rekonstruierten Form und dessen Reflexe in Mordwinisch und Syrjänisch.

Auch die Entsprechungen einer belegsprachliche Konfiguration können geprüft werden, z.B. Ungarisch: -ngy- in Lappischen.

Da die virtuelle Tastaturen auch hier zur Verfügung stehen, können auch Phonemklassen in Sprachpaaren geprüft bzw. getestet werden:

Beispiel: Entsprechungen der intervokalischen ostjakischen stimmlosen Spiranten im Tscheremissischen.

(Dies ist wahrscheinlich die linguistisch interessanteste Abfragemöglichkeit.)

Man kann anstatt zwei auch drei und mehrere Sprachen (bzw. Sprachzweige) nach den obigen Schema testen. Die Antwortzeiten werden länger und die Treffer weniger zahlreich. Beispiel: Ostseefinnisch, Mordwinisch und Selkup -- mit rekonstruierten -mp-.

Hier werden Etymologien gesucht, die in den Ostseefinnischen Sprachen (mindenstens in einem) belegt sind, Entsprechungen in Mordwinischen (Ersa oder Mokša) sowie in Selkupischen (mindestens in einem Dialekt) haben. Allerdings beschränkt sich die Suche auf die Rekonstruktionen mit inlautenden -mp- . Wenn Belege gefunden werden, werden allerdings alle Entsprechungen angezeigt.

Die Anzeige der Erbegnisse erfolgt in tabellarischer Form. Die Listen werden sortiert und durchnumeriert. Angezeigt werden nur die relevanten Informationen, also die gefragten Lautformen. Partielle Befriedigung der Abfragebedingungen: Wenn mehrere Sprachen gefragt werden und sie nicht alle vorgefunden werden, werden die Teilmengen gebildet und systematisch festgehalten. Wenn die Abfrage partiell befriedigt wird, kann der Benutzer sich diese Listen anzeigen lassen.

2.6. Freie Abfrage mit XQL-regular expressions

XQL bietet eine mächtige, sehr vielfältige Abfragemöglichkeit, aber erfordert Einarbeitung. Ursprünglich gab es lediglich hier ein Ratgeber und eine Liste von exemplarischen Anfragen, für potentielle Abfragetypen. Der Benutzer sollte dann analog zu den getesteten Musterfällen seine eigene Frage formulieren.

Besser verallgemeinert werden kann und benutzerfreundlicher ist die Abfrage mit einer Struktur-Tabelle (DTD). Der Benutzer kann auf der Mustertabelle einklicken, was er sehen möchte. Das System erzeugt die XQL-Suchkette für den angeforderten Knoten der UEDB-XML-Datei. Alle Informationen (tags und attributs) der Datenbasis können abgefragt werden. Der Benutzer legt mit Hilfe einer zweiten DTD-Tabelle fest, wie ihm Suchergebnisse präsentiert werden sollen.

2.7. Generierung des UEDb-Uralothek-Systems.

Solange UEDb lediglich als eine Datenbasis angesehen war betrachteten wir die Stylesheets, die der Anzeige durchführten als eine Improvisation, die schnell geändert und -- z.B. bei Änderung der Kodierung -- nachgebessert werden könnte. Als die Anzeige-Routinen wuchsen, ergab sich ein Koordinierungsbedürfnis. Das Uralothek-System enthält Routinen für Erneuerung des Systems. Primär sind drei Dateien. Dazu kommen sekundäre (abgeleitete) Dateien:
  1. UEDB.XML -Basisdatei: Um die Effizienz der Suche zu verbessern ist diese Datei in drei Teile zerlegt: etem.xml, kme.xml und biblio.xml. Wenn für die Suche erforderlich ist, werden die drei Xml-Dateien zusammengelegt.
  2. TIMENRU_.TTF Fonts für die Wiedergabe der Diakritischen Zeichen
  3. Die Liste der benutzten Quellen: UEBIB.HTML
  4. Während der Systemgenerierung werden weitere Listen aufgelegt:
    1. Die Liste der Dialekten mit der genetischen Gliederung
    2. Die sprach- bzw. dialektspezifischen Suchwortlisten
    3. Die sprach- bzw. dialektspezifischen Fontlisten
    4. Die mit phonologischen Klassifizierung bereicherte Fontliste (für die automatische Generierung der Tastaturen)

Letzte Änderung: 8.02.2005 

batori@.uni-koblenz.de