Login
Newsletter
Werbung

Do, 6. Dezember 2012, 15:00

LanguageTool-Tutorial – Teil II: Komplexere XML-Regeln

In diesem Artikel werden komplexere XML-Regeln für LanguageTool vorgestellt.

Von gulp21

Nachdem Teil I das Erstellen einfacher XML-Regeln für LanguageTool erklärte, soll es in diesem Artikel um komplexere XML-Regeln gehen. Wie in den vorigen Teilen erklärt, findet LanguageTool Fehler anhand von Regeln, die – anders als in der Schulgrammatik – nicht beschreiben, wie Sätze korrekt gebildet werden, sondern Fehler beschreiben.

Wie war das nochmal mit der Vorzeitigkeit?

Dem aufmerksamen Leser ist vielleicht der kleine grammatische Patzer im Einleitungssatz aufgefallen: »Nachdem« kann standardsprachlich nicht mit dem Präteritum benutzt werden, da die Subjunktion »nachdem« Vorzeitigkeit ausdrückt. Da aber selbst vielen Muttersprachlern diese Regel unbekannt ist, soll LanguageTool eine Regel erhalten, die auf diesen Fehler hinweist.

Als erstes wird das Grundgerüst der Regel mit Meldungstext und Beispielsätzen erstellt:

<rule id="NACHDEM_PRAETERITUM" name="Grammatik: 'nachdem' mit Präteritum">
    <pattern>
        <!-- hierher kommt das Erkennungsmuster hin -->
    </pattern>
    <message>Die Subjunktion 'nachdem' drückt standardsprachlich Vorzeitigkeit aus und kann daher nicht mit dem Präteritum verwendet werden. Verwenden Sie das Perfekt (Präsens im Hauptsatz) oder Plusquamperfekt (Präteritum im Hauptsatz) oder die Subjunktion 'als' zum Ausdrücken von Gleichzeitigkeit.</message>
    <short>'Nachdem' kann standardsprachlich nicht mit dem Präteritum verwendet werden. Verwenden Sie Perfekt bzw. Plusquamperfekt.</short>
    <example type="correct">Nachdem der Brief <marker>gekommen war</marker>, ging ich nach Hause.</example>
    <example type="incorrect">Nachdem der Brief <marker>kam</marker>, ging ich nach Hause.</example>
</rule>

Die Hauptarbeit macht aber der noch leere pattern-Teil. Man muss sich zunächst im Klaren darüber sein, wie die zu erkennende falsche grammatische Konstruktion aussehen soll. Die Regel soll zunächst den Fall erkennen, wenn – wie im Einleitungssatz – der mit »nachdem« eingeleitete Nebensatz nicht am Satzende steht. Der zu erkennende Fehler hat die Struktur »nachdem« + »beliebig viele Wörter« + »Verb im Präteritum« + »,« (Ende des Nebensatzes). Die XML-Umsetzung dazu sieht so aus:

<pattern>
    <token skip="-1">nachdem</token>
    <marker>
        <token postag_regexp="yes" postag="VER:.*:PRT:.*" />
    </marker>
    <token>,</token>
</pattern>

Beim ersten Token wird das skip-Attribut verwendet, mit dem angegeben werden kann, wie viele Tokens (Wörter) maximal zwischen diesem Token und dem darauffolgenden Token stehen dürfen (der Standard ist null); -1 bedeutet, dass beliebig viele Wörter erlaubt sind.

Beim zweiten Token kommen POS-Tags zum Einsatz. Mit dem regulären Ausdruck VER:.*:PRT:.* werden alle Verben (VER) gefunden, die im Präteritum (PRT) stehen. Damit LanguageTool weiß, dass es sich bei dem angegeben POS-Tag um einen regulären Ausdruck handelt, wird das Attribut postag_regexp="yes" gesetzt. Um auf diesen regulären Ausdruck zu kommen, kann man die LanguageTool-Benutzeroberfläche benutzen. Dort gibt man ein Wort im Präteritum ein (z.B. »kam«) und klickt im Menü Datei auf Tag Text oder drückt alternativ einfach die Tastenkombination »Strg« + »T«. Im untereren Teil des Fensters werden dann die POS-Tags der eingegebenen Wörter angezeigt. Eine Übersicht aller POS-Tags mit Erläuterungen befindet sich in diesem PDF-Dokument.

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung