11.2.  Entwicklung

11.2.1.  Tools

Nutzen von klassischen Software-Engineering-Tools

Versionskontrolle: Z.B. CVS (http://www.cvshome.org)

Nutzen von klassischen Software-Engineering-Tools

Systemkompilation: Z.B. GNU make (www.gnu.org/software/make)

Makefile-Beispiel

make-Regel in mOLIFde für Binärkompilation


%.xfst.bin: %.xfst
    xfst -e ’source $<;’ -e ’save defined $@’ -stop

Falls eine Komponente eine Datei mit der Endung .xfst.bin (sog. target) benötigt: Schaue, ob eine Datei ohne Endung .bin (sog. prerequisite) existiert. Überprüfe (rekursiv) die Abhängigkeiten der prerequisite und generiere sie allenfalls neu. Falls das target älter ist als die prerequisite, führe folgenden UNIX-Shell-Befehl aus ($@ ist Platzhalter für target und $< für prerequisite):

xfst -e ’source $<;’ -e ’save defined $@’ -stop

Beispiel 11.2.1 (Aufruf von make).
$ make adj.xfst.bin löst den Befehl aus:
xfst -e ’source adj.xfst’ -e ’save defined adj.xfst.bin’ -stop

11.2.2.  Inhalt

Linguistische Analyse und Planung

Formale linguistische Analyse

Ein Morphologiesystem benötigt eine möglichst gründliche vorangehende linguistische Analyse, welche die Klassen, Regeln und Ausnahmen möglichst detailliert zur Verfügung stellt.

Abstraktion und systematisches Wissen

“The ability to speak multiple languages, though admirable, doesn’t make one a formal linguist any more than having a heart makes one a cardiologist.”

[BEESLEY und KARTTUNEN 2003b, 283]

Unterspezifikation linguistischer Beschreibung

Bei der Implementation handgeschriebener Regelsysteme ergeben sich immer unvorhergesehene Überraschungen trotz aller Planung : Unsicherheiten, Ungenauigkeiten, Unvollständigkeiten. Dies ist auch bei handgeschriebenen wissenschaftlichen Grammatiken der Fall.

Linguistische Analyse

Repräsentation der lexikalischen Seite

Die exakte Form der Lemmata ist eine Design-Entscheidung des Lexikographen.

Linguistische Analyse

Repräsentation der lexikalischen Seite

Die Anzahl, Form und Abfolge von morphologischen Tags ist eine Design-Entscheidung des Lexikographen.

Empfohlene Tags nach Xerox-Konvention
Im Anhang G [BEESLEY und KARTTUNEN 2003a], welcher im gedruckten Buch keinen Platz mehr fand, sind diverse sprachübergreifende morphologische Tags mit ihrer linguistischen Bedeutung aufgeführt.

Beispiel 11.2.2 (Xerox-Mehrzeichensymbol-Tags im +-Format).

+Noun    ! noun(house)  
+Prop    ! proper noun(John)  
+Art     ! article (like English the and a)  
+Det     ! determiner (like this,that,those)  
+Dig     ! digit-based word  
+Aug     ! augmentative  
+Dim     ! diminutive  
...

Die Laufzeit-Applikation lookup zur morphologischen Analyse behandelt Tags mit der +-Konvention defaultmässig effizient als Mehrzeichensymbole.

11.2.3.  Applikationen

Ein Kernsystem mit mehreren Runtime-Applikationen

Gemeinsames Kernsystem

Runtime-Anwendungen

Runtime-Anwendungen

Beispiel 11.2.3 (Modifikation von Kern-System durch Ersetzungsregeln).

read regex StrictGermanCoreNetwork  
.o. [ü (->) u e ] .o. [ö (->) o e ]  
.o. [ä (->) a e ] .o. [ß (->) s s ];

Relaxierung von Kern-Systemen zur Laufzeit

Das lookup-Tool erlaubt morphologische Analysestrategien, welche fehlerorientiert relaxieren und zur Laufzeit die Komposition von Transduktoren simulieren:

Klein-/Grossschreibung

Beispiel 11.2.4 (Grossschreibung).
Wie kann man Grossschreibung von normalerweise kleingeschriebenen Wörtern erlauben?

Beispiel 11.2.5 (Kapitalisierung).
Wie kann man durchgängige Grossschreibung erlauben wie in “Dieses Verhalten ist KRANK!!!”?

lookup-Strategien mit “virtueller” Komposition [BEESLEY und KARTTUNEN 2003b, 433]

Scheiternsabhängige Alternativ-Analysen

Analysen mit Relaxierung sollen nur dann gemacht werden, wenn keine “normale” Analyse möglich ist.

  1. FST-Variablen: deaccent   allow-deaccentuation.fst normalize    allow-allcaps.fst analyser   deutsch.fst
  2. Virtuelle Komposition: Hintereinanderschreiben der FST-Variablennamen
  3. Strategien
    analyser # Versuche zuerst normale Analyse
    allcap analyser # Sonst entkapitalisiere zuerst
    deaccent allcap analyser # Sonst normalisiere Spezialzeichen vor Entkapitalisierung