LanguageTool-Tutorial – Teil II: Komplexere XML-Regeln
Der erste Test
Da die Regel auf den ersten Blick ganz gut aussieht, kann sie nun im »Expert Mode« des Rule Creators getestet werden. Dabei stellt man aber sofort fest, dass sie noch nicht wie gewünscht funktioniert. Folgende Fehlermeldung wird ausgegeben:
The rule found an unexpected error in 'Nachdem der Brief gekommen war, ging ich nach Hause.'
Markus Brenneis
Die Regel hat einen »unerwarteten Fehler« im eigentlich richtigen Beispielsatz gefunden
In dem eigentlich richtigen Beispielsatz wird ein »Fehler« gefunden. Das Hilfsverb »war« ist das Problem, da es zwar im Präteritum steht, hier aber als Hilfsverb für das Plusquamperfekt verwendet wird. Um das Problem zu umgehen, definiert man innerhalb des zweiten Tokens eine Ausnahme (engl. »exception«):
<token postag_regexp="yes" postag="VER:.*:PRT:.*"><exception postag_regexp="yes" postag=".*AUX.*"/></token>
Wenn jetzt das Wort vor dem Komma ein Hilfsverb (AUX
) ist, wird kein Fehler
mehr gemeldet.
Will man die nun erweiterte Regel im »Rule Creator« testen, stößt man an dessen Grenzen, denn durch die regulären Ausdrücke kommt es zu einer Zeitüberschreitung. Das Zeitlimit wurde eingeführt, um den Server nicht mit den rechenintensiven regulären Ausdrücken zu überlasten. Um die Zuverlässigkeit der Regel trotzdem testen zu können, gibt es die Möglichkeit, auf dem eigenen Rechner Tests anhand von Wikipedia-Artikeln durchzuführen.
Dazu müssen zunächst die Artikel heruntergeladen werden. Es ist übrigens nicht nötig, die ganze Datei (mehr als 2 GiB!) herunterzuladen, sondern man kann schon die nicht vollständig heruntergeladene Datei entpacken. Wenn die aus dem bz2-Archiv extrahierte XML-Datei größer als 200 MiB ist, reicht dies zum Testen vollkommen aus. Ferner muss die der Stand-Alone-Variante der Entwicklerversion von LanguageTool heruntergeladen und entpackt werden. Nun gibt es zwei Methoden, in den Wikipedia-Daten nach Fehlern zu suchen.