Korrla
Diese Spezifikation der Korrekturspezifikationssprache Korrla ist eine erste Rohfassung, in der noch eine formale Notation fehlt und Beispiele fehlen.
Die Sprache Korrla erlaubt die Notation von Regeln zur Veränderung von Textteilen.
Eine Korrla -Liste besteht aus einer Sequenz von Korrla -Paaren.
Ein Korrla -Paar besteht aus einer Suchspezifikation und einer Ersatzspezifikation.
Eine Korrla -Implementation arbeitet alle Korrla -Regeln in der durch die Sequenz gegebenen Reihenfolge ab.
Text
Als Text sind nur die großen und kleinen lateinischen Buchstaben, große und kleine Umlaute und das Eszet, arabische Ziffern, der Bindestrich "-" und das Leerzeichen erlaubt.
Zeichen mit einer besonderen Funktion sind der senkrechte Strich "|", die Tilde "~", das Ausrufezeichen "!" und das Fragezeichen "?".
Alle anderen Zeichen sind reserviert und dürfen nicht verwendet werden.
Randspezifizierer
Das erste und das letzte Zeichen eines Sucharguments (ohne eventuell folgende Optionen) legt die Umgebung fest, in welcher der zu suchende Text vorkommen muß.
Als Randspezifizierer sind die folgenden Zeichen möglich
| An dieser Seite darf der Text nicht direkt als Wortbestandteil fortgesetzt werden, hier muß also eine Wortgrenze sein.
~ An dieser Seite darf der Text direkt als Wortbestandteil fortgesetzt werden, hier können also weitere Zeichen als Teil des Wortes folgen, zu dem das Innere der Suchspezifikation gehört.
Groß- und Kleinschreibung
Wenn nicht anders spezifiziert, so wird eine Suchspezifikation unabhängig von der Groß- und Kleinschreibung ihres ersten Zeichens so interpretiert, daß sie für alle Texte paßt, bei denen dieses erste Zeichen groß- oder kleingeschrieben ist.
Wenn nicht anders verlangt wird die Groß- oder Kleinschreibung des ersten Zeichens des gefundenen Textes auf das erste Zeichen des Ersatztextes übertragen.
Optionen
Nach dem Suchargument können noch Suchoptionen durch Suchoptionszeichen festgelegt werden.
Option "!" zur schreibungsstrengen Auslegung
Durch ein Ausrufezeichen ganz am Ende einer Suchspezifikation wird verlangt, daß die Groß- und Kleinschreibung des ersten Zeichens des zu suchenden Textes genau so sein muß, wie in der Suchspezifikation.
Option "?" zur Schreibungsrekonstruktion
Durch ein Fragezeichen ganz am Ende einer Suchspezifikation wird verlangt, daß die Groß- und Kleinschreibung des ersten Zeichens des zu ersetzenden Textes aus dessen Umfeld erraten werden soll. Die Groß- und Kleinschreibung soll in diesem Fall also nicht wie sonst vom ersten Zeichen des gefundenen Textes bestimmt werden. Sie ist für Texte gedacht, die im Satzinneren mit einem kleinen Buchstaben beginnen sollen, die aber in den Fällen großgeschrieben werden, in denen beispielsweise auch ein Adjektiv großgeschrieben wird, also am Anfang eines Satzes oder einer Überschrift. Sie sollte aber nur dann eingesetzt werden, wenn die Groß- oder Kleinschreibung des erstens Zeichens des gefundenen Textes nicht beibehalten werden kann. Eine Implementation soll versuchen, solche Stellen zu erkennen und für diese Großschreibung am Anfang des Ersatztextes verwenden. Im Zweifel soll Kleinschreibung verwendet werden.
Nichtspezifizierende Anhänge
Diese Anhänge sind nicht mehr Bestandteil der Spezifikation von Korrla.
Implementation 0
Für die derzeit einzige Implementation gelten noch einige Sonderregelungen und Einschränkungen.
Grundsätzlich kann die Implementation nicht immer alle Anforderungen der Spezifikation erfüllen. Wenn die genaue Auslegung einer Regel nicht möglich ist, wird eine möglichst gute Annäherung implementiert.
Wenn das erste Zeichen des Ersatztextes sich vom ersten Zeichen des Inneren des Suchtextes unterscheidet (und es sich nicht nur um einen Unterschied der Groß- und Kleinschreibung handelt), verhält sich die Implementation fehlerhaft. Um diesen Fehler zu umgehen, muß in solchen Fällen der Spezifizierer "!" zur genauen Beachtung von Groß- und Kleinschreibung verwendet werden.
Die Schreibungsrekonstruktion mit "?" ist derzeit nur für den Rahmen "|~" implementiert. Die folgenden neun Kombinationen von Rahmen und Optionen werden implementiert.
Die neun implementierten Kombinationen
|Inneres| |Inneres|!
|Inneres~ |Inneres~! |Inneres~?
~Inneres| ~Inneres|!
~Inneres~ ~Inneres~!