Beispiel Lemma

Die Notwendigkeit einer Grammatik

In diesem Blog-Beitrag geht es um den Nutzen und die Notwendigkeit einer Grammatik, die als alternatives digitales Werkzeug gelten kann.
Beispiel Lemma
Foto: Mephisto

Meldung vom: | Verfasser/in: Clemens Beck & Georg Zwilling

Die Notwendigkeit einer Grammatik - Eine Einleitung

Wiederholt sind wir auf unserem Blog auf unsere Ansätze zur (semi-) automatischen Data Extraction aus dem Repertorium Germanicum (RG) eingegangen. Je tiefer wir das RG erschließen wollten, desto mehr hatte sich der ursprünglich eingeschlagene Weg, über regular expressions den Inhalt der Lemmata zu erschließen, als problematisch für komplexere Auswertungen erwiesen.[1] Stattdessen wurde ein digitales Werkzeug benötigt, das in der Lage war und ist, die charakteristische Struktur eines jeden Regestentyps eindeutig zu identifizieren. Dafür benutzen wir nach einer entsprechenden Recherche und Vergleich von Tools ANTLR (ANother Tool for Language Recognition)[2]. Zur Auswertung der Regesten des RG haben wir desweiteren eine Grammatik entwickelt. Eine Grammatik im informatischen Sinne bildet dabei alle Optionen ab, in der ein bestimmter Regestentyp ausgeformt sein kann. In diesem Beitrag wollen wir das Programm, dessen Wirkungsweise und den Aufbau unserer Grammatik näher vorstellen.

 

 

Antlr

Für die Erstellung unserer RG-spezifischen Grammatik und die sich darauf stützende Extrahierung der Informationen aus dem Text nutzen wir ANTLR (ANother Tool for Language Recognition)[3], ein ursprünglich für den Compilerbau entwickeltes, sehr mächtiges Werkzeug zur schnellen und komfortablen Implementierung domänenspezifischer formaler Grammatiken.

ANTLR ist ein Programmgenerator, der einen Parserbaum erzeugt, in dem die einzelnen Bestandteiles eines Regests identifiziert und ausgezeichnet werden können. Die digitale Analyse und Transformation der Texte erfolgt mit und durch ANTLR grob vereinfacht in drei aufeinanderfolgenden Schritten:

  1. Es wird eine lexikalische Analyse des Textes vorgenommen, das heißt im Eingabetext werden die von der Grammatik zugelassenen elementaren Textbausteine (die „Wörter“ der von der Grammatik definierten formalen Sprache) identifiziert, die dann im weiteren Analyseprozess die Grundlage für die Konstruktion von Parserbäumen bilden und in diesem als Blätter repräsentiert werden.
  2. Der von ANTLR automatisch generierte Parser startet den Prozess der schrittweisen Parsebaumgenerierung, indem er die Prozedur zu derjenigen Grammatikregel aktiviert, die nach Einschätzung von ANTLR den größtmöglichen Teil des Eingabetextes bestmöglich abdeckt. Die von ANTLR erzeugten Parser verwenden dafür die ALL(*) Parsertechnik, die Terence Parr, der Entwickler des Werkzeuges, zusammen mit Sam Harwell entwickelte.3
  3. ANTLR baut nach von Nutzenden vorgebbaren Transformationsregeln (unter anderem über sogenannte tree-walker) den im zweiten Verarbeitungsschritt berechneten „besten“ Parsebaum im Rahmen einer automatischen Traversierung in eine Form um, die für die weitere domänenspezifische Nutzung, Analyse und Visualisierung der in dem Baum kodierten Informationen optimal ist.

Diese Untergliederung des Verarbeitungsprozesses in drei jeweils getrennte Verarbeitungsschritte gestattet es, die eigentliche Analyse der Quelle weitgehend unabhängig von den sich daran anschließenden digitalen Nutzungen des Analyseergebnisses zu halten: Ein und dieselbe ANTLR-Grammatik lässt sich so für die unterschiedlichsten Auswertungen von Quelltexten nutzen, sofern diese Texte nur korrekt durch diese Grammatik beschrieben werden. ANTLR ermöglicht so auf eine unkomplizierte und gerade auch für Nicht-Informatiker*innen nachvollziehbare Weise eine komfortable Entwicklung vergleichsweise komplexer sprachtechnologischer Werkzeuge.

 

 

 

Entwicklung der Grammatik

Der Prozess der Erstellung einer solchen Grammatik setzt einen engen Feedbackloop zwischen den daran zwingend beteiligten Historiker*innen und Informatiker*innen voraus. Der für Anwender*innen herausforderndste Schritt in diesem Entwicklungsprozess ist natürlich die Identifikation der für die beiden ersten Verarbeitungsphasen benötigten Grammatik. Denn diese muss für die ersten beiden, primär quellenabhängigen Verarbeitungsschritte die Struktur der zu analysierenden Quelltexte angemessen charakterisieren. In unserem konkreten Anwendungsfall, den Regesten des Repertorium Germanicum, erfordert das insbesondere die Ausdifferenzierung der einzelnen Regestentypen, eine Aufgabe, die hauptverantwortlich durch Historiker*innen vorgenommen wird. Eine notwendige Voraussetzung dafür ist die genaue Kenntnis des Repertorium Germanicum und seiner standardisierten Abkürzungen sowie der Syntax und Semantik der Regesten selbst. Historiker*innen müssen dafür wissen, welche Abkürzungen zu welchem Rechtsakt gehören und welche von uns so genannten „Markerworte“ den entsprechenden Vorgang kennzeichnen. Beispielsweise steht im dritten Band des RG ein „solv.“ immer am Anfang einer Annatenzahlung oder ein „prov. super“ immer am Anfang einer Provision (das heißt der Verleihung einer kirchlichen Pfründe durch den Papst).

Über ein systematisches Studium der Viten müssen zu Beginn des Prozesses zur Erstellung von Grammatikregeln nicht nur die Regelmäßigkeiten im Aufbau eines bestimmten Regestentyps herausgearbeitet werden, sondern auch, welche Anteile bei Vorliegen dieses Typs optional sind. Mittels einer Suche nach Markerworten im RG Online lässt sich dafür zunächst eine Auswahl von Regesten zusammenstellen, die zur gleichen Kategorie gehören. Dann lassen sich Regelmäßigkeiten innerhalb dieser Regesten identifizieren und mögliche variierende Ausprägungen ermitteln.

Erst durch das Zerlegen vieler gleichartiger Einträge nach dem gleichen Schema wird offensichtlich, welche Bestandteile dieses Schemas in den Regesten optional und welche obligatorisch sind. Auch hier ist historisches Wissen notwendig, um konkrete Abkürzungen, die an bestimmten Stellen eines Eintrages auftreten können, korrekt zu interpretieren. Beispielsweise können bei einer Provision nach dem Markerwort „prov. de“ eine Pfarrkirche („par. eccl.“) oder ein Kanonikat mit Pfründe („can. et preb.“) stehen. Dies bedeutet, dass an jener Stelle wahrscheinlich alle Arten von kirchlichen Pfründen auftreten können. Anstatt nun in einer Grammatikregel alle möglichen Pfründen an jeder Stelle ihres Auftretens in der Grammatik aufzuzählen, wird für die Grammatik besser eine eigene Kategorie „Pfründe“ definiert, unter die sich unter Heranziehung des Abkürzungsverzeichnisses der RG Online alle Abkürzungen subsumieren lassen, die in diese Kategorie fallen.

 

Im nächsten Schritt wird die Grammatik anhand von weiteren Sublemmata getestet, die bei der eigentlichen Entwicklung der Regeln noch nicht in Betracht gezogen wurden, jedoch mit dem gleichen Markerwort beginnen. Immer wenn die Grammatik nicht in der Lage ist, das entsprechende Sublemma in einem Teilbaum korrekt abzubilden, müssen Anpassungen der Grammatik vorgenommen werden. Im einfachsten Fall muss dazu nur eine bestimmte Ausprägung in einer schon bestehenden Kategorie ergänzt werden, in komplexeren Fällen muss die entsprechende Regel für einen Vorgangstyp grundsätzlich alteriert werden. Das Ergebnis eines solchen Vorgangs ist zum Beispiel der folgende Parserbaum des ersten Sublemmas der Pfründenvita des Klerikers Heinrich von Bocholdia:

 

ANTLR-Baum des ersten Sublemmas der Pfründenvita des Klerikers Heinrich von Bocholdia, genannt „Foet“ (RG III 57)

Foto: MEPHISTO

Ausblick auf den nächsten Blog-Beitrag

Dies mag erst einmal sehr theoretisch klingen. Deswegen werden wir in unserem nächsten Blog-Beitrag an einem Beispiel demonstrieren, wie die Regeln in unserer Antlr-Grammatik aufgebaut sind. Am Beispiel von Annatenzahlungen im dritten Band des RG werden wir die einzelnen Bestandteile der entsprechenden Regel vorstellen und erklären.