Text+Berg-Korpus
Release_145, 16. März 2011
Übersicht
Im Text+Berg-Projekt digitalisieren und erschliessen wir alpine Texte. Aktuell arbeiten wir an den Jahrbüchern des Schweizer Alpenclub (SAC).
Dieses Release enthält die SAC-Bände der Jahre 1864 bis 2009. Es handelt sich um
- Das Jahrbuch des SAC (1864-1923)
- Die ALPEN (1925-2009)
- Seit 1957 gibt es Die ALPEN in parallelen deutschen und französischen Versionen. Das Release_145 enthält sowohl die deutschen wie auch die französischen Bände von 1957 bis 2009. Die parallelen Bände enthalten grösstenteils übersetzte Artikel, aber (von 1957 bis 1982) auch identische Artikel. Wir haben die Duplikate aus den französischen Bänden entfernt und durch einen Verweis auf den jeweils entsprechenden Artikel im deutschen Band ersetzt. Ausserdem enthalten die übersetzten Artikel je einen Verweis auf den anderssprachigen Artikel im Parallelband, also eine Alignierung der übersetzten Artikel. Wenn die Information verfügbar ist, haben wir die Originalsprache vermerkt (bis 1982).
- In den Jahren 1870, 1915 und 1924 sind keine Bände erschienen. Deshalb enthält das Release_145 insgesamt 196 Bände (90 Bände von 1864 bis 1956 in je einer Version, plus 53 Bände von 1957 bis 2009 in sowohl deutscher und französischer Version).
- Insgesamt enthält das Release 35'750'466 Wörter (1'031'165 unterschiedliche Wörter) von 86'946 Buchseiten.
OCR-Fehler
Die folgenden Bände wurden manuell kontrolliert und OCR-Fehler (grösstenteils) korrigiert:
- Vollständig: 1890, 1899, 1901, 1907, 1910, 1911, 1912, 1927, 1928, 1929, 1930, 1933, 1934, 1935, 1945, 1950
- Teilweise: 1913, 1916, 1923, 1925, 1926
Alle anderen Bände wurden nach dem OCR automatisch korrigiert. Dabei wurden zunächst die Ausgaben von zwei unterschiedlichen OCR-Systemen verglichen und automatisch die "beste" Lösung gewählt. Ausserdem wurden "typische" OCR-Fehler wie 'ii' --> 'ü' korrigiert. Andere OCR-Fehler sind weiterhin enthalten.
Format
Wir verteilen die Bände in einem XML-Format mit Artikelstruktur (Titel, Autor), mit Tokenisierung und Satzendeerkennung, Sprachidentifikation pro Satz, Fussnoten und Bildunterschriften, Part-of-Speech Tags und Lemmas (nach Massgabe des PoS-Taggers).
Hinweise zur Tokenisierung
Bei der Tokenisierung haben wir die folgenden Entscheidungen getroffen.
- Bei Zusammenschreibungen mit Apostroph wird aufgetrennt. Im Deutschen wird vor dem Apostroph aufgetrennt (z.B. geht's --> geht + 's), im Französischen und Italienischen wird hinter dem Apostroph aufgetrennt (z.B. l'eau --> l' + eau; jusqu'au --> jusqu' + au). Im Französischen gibt es eine Ausnahmeliste mit wenigen Wörtern, die nicht aufgetrennt werden (z.B. aujourd'hui).
- Trennstriche am Zeilenende werden vom OCR-Programm durch einen weichen Trennstrich repräsentiert, wenn das Wort im Lexikon des OCR-Systems enthalten ist. Sonst verbleibt der Trennstrich im Wort. Wir entfernen solche Trennstriche, wenn das Wort ohne Trennstrich häufiger im Korpus enthalten ist als mit.
- Akronyme, deren Buchstaben mit Punkt getrennt sind (z.B. S.A.C. oder A.A.C.Z.) werden als ein Token betrachtet. Dies ist für die häufigsten Akronyme implementiert.
- Doppelpunkt und Semikolon markieren nur dann ein Satzende, wenn danach ein Satz kommt, der mindestens 10 Wörter und darunter mindestens ein Verb enthält.
Hinweise zur Sprachidentifikation
- Die Sprachidentifikation erfolgt automatisch mit dem Programm Lingua-Ident von Michael Piotrowski. Wir ermitteln damit automatisch die Sprache für jeden Satz, der länger ist als 40 Zeichen. Bei kürzeren Sätzen ist das Programm nicht zuverlässig, und es wird deshalb die Sprache des Artikels eingesetzt. Zur Zeit erkennt das Programm Sätze in Deutsch, Französisch, Italienisch, Rätoromanisch und Englisch.
- Nach der Erkennung eines Satzes als Deutsch wird geprüft, ob es sich möglicherweise um Schweizer Mundart handelt. Diese Prüfung basiert auf einer Liste von häufig-gebrauchten Mundart-Wörter. Wenn ein Satz mehr als 10% Mundart-Wörter enthält, wird er als CH-DE markiert.
Hinweise zum Part-of-Speech Tagging
- Das PoS-Tagging erfolgte mit dem TreeTagger und den standardmässig verfügbaren Parameter-Dateien für das Deutsche, Italienische und Englische. Informationen über die verwendeten Tagsets finden sich hier.
- Für das Französische haben wir eine Parameter-Datei für den TreeTagger auf der Basis der Le Monde-Treebank erstellt. Das Tagset findet sich hier.
- Der Tagger wurde nicht eigens für die Text+Berg-Dokumente trainiert, und es sind deshalb fehlerhafte Annotationen besonders bei den älteren Texten zu erwarten.
- Sätze in Schweizer Mundart (CH-DE) erhalten PoS-Tags des Deutschen.
- Sätze in Rätoromanisch erhalten keine PoS-Tags, da wir für diese Sprache keinen PoS-Tagger haben.
- Der TreeTagger erkennt römische Zahlen nicht, weder Kardinalzahlen (z.B. in Band XXII) noch Ordinalzahlen (z.B. im XII. Band). Deshalb werden diese römischen Zahlen in einem speziellen Verarbeitungsschritt mit entsprechenden PoS-Tags und Lemmas versehen.
Hinweise zum XML-Format:
- Inhaltsverzeichnisse, Abbildungsverzeichnisse sowie Buchende-Indizes wurden aus dem Korpus eliminiert.
- Die Seitenumbrüche sind mit der XML-Marke <pb> angegeben. Die Attribute zu <pb> bezeichnen einerseits die Nummer der physikalischen Seite (d.h. der Nummer des Scan-Images im Stapel) und andererseits die gedruckte Seitenzahl. Die Identifikation der Seitenzahl ist nicht trivial, da es Seiten gibt, auf denen die Zahl nicht erscheint (z.B. auf der Startseite eines Kapitels), aber auch Seiten, die nicht gezählt werden (z.B. Seiten mit Vollbildern).
- Der Beginn und das Ende eines Artikels werden mit der XML-Marke article markiert. Bei übersetzten Artikeln steht ein Attribut translation-of mit einem Verweis auf den anderssprachigen Artikel und - soweit bekannt - die Angabe zur Ausgangssprache (orig-lang). Bei eliminierten Duplikaten steht eine Artikel-Marke mit dem Attribut duplicate-of. Zusätzlich gibt es die Marke tocEntry mit Angaben zu Titel, Autor und Sprache aus dem Inhaltsverzeichnis.
- Die Benennungen der XML-Marken sind weitgehend TEI-konform.
XML-Marke | Bedeutung | Attribute |
book | Buch | id (identifier) |
article | Artikel | n (number), duplicate-of, translation-of, orig-lang (original language) |
div | Absatz | - |
caption | Bildlegende | - |
footnote | Fussnote | - |
graphic | Abbildung | url |
pb | Seitenumbruch | facs (facsimile), n (number) |
s | Satz | n (number), lang (language) |
tocEntry | Eintrag aus dem Inhaltsverzeichnis | title, author, lang (language), category |
w | Wort | pos (Part-of-Speech), lemma, n (number) |
Markierung der Namen von Bergen, Gletschern und Hütten
- Zur automatischen Erkennung von Bergnamen
verwenden wir die Namen aus der SwissTopo-Liste
"SwissNames25". Für das aktuelle Release haben
wir aus dieser Liste die Namen der Kategorien
"Massiv, HGipfel, KGipfel, GGipfel, Grat"
extrahiert und mit genauer Übereinstimmung und mit
Genitiv-Endung -s im Korpus gesucht. Um falsche
Treffer zu vermeiden, wurden die auffälligsten
Homographen entfernt. Siehe unten.
Die Swisstopoliste wurde neu mit Wortformen ergänzt, die im Korpus vorkommen und die die für Bergnamen typische Suffixe -horn (mit den Pluralformen -hörner, -hörnern), -stock und -grat enthalten. Um die Präzision hoch zu halten wurde aus canoo.net eine Liste von Gattungsnamen extrahiert, die auf -horn, -stock, -grat enden. Diese Wortformen wurden aus dem erweiterten Gazetteer entfernt. Beide Listen wurden zusätzlich manuell bereinigt, insbesondere wurden alle Formen des Typs 'Himmelsrichtung + grat', also z.B. Nordgrat, Südsüdostgrat aber auch SEgrat etc. entfernt.
Weiter wurden zweiteilige Namen hinzugefügt, die mit den folgenden Wortformen beginnen und im Korpus belegt sind: Aiguille, Aiguilles, Cime, Cima, Dent, Dents, Mont, Monte, Piz, Pizzo, Vanil
Insgesamt wurde das Gazetteer um 4239 Namen erweitert. Viele dieser neuen Namen sind eigentlich bekannte Namen, die aber OCR-Fehler enthalten. Beispiele: Diissistock zu Düssistock, Aletsehhorn zu Aletschhorn
Der Bergnamensliste haben wir zudem die wichtigsten Exonyme hinzugefügt. Diese sind: Cervin frz. zu Matterhorn, Pilate frz. zu Pilatus, Clarides frz. zu Clariden, Sentis, Saentis frz. zu Säntis
Die Bergnamensliste umfasst somit mehr als 10'000 Einträge und führt über dem gesamten Korpus zu 158'025 (!) Treffern.
- Zur automatischen Erkennung von Gletschernamen verwenden wir die Namen aus der SwissTopo-Liste "SwissNames25". Die Namensliste umfasst so 367 Einträge und führt über dem gesamten Korpus zu 6649 Treffern.
- Zur automatischen Erkennung von Hüttennamen verwenden wir die Namen aus der SwissTopo-Liste "SwissNames25". Die Namensliste umfasst so 519 Einträge und führt über dem gesamten Korpus zu 7856 Treffern.
Die erkannten Toponyme sind je in einer separaten Datei aufgelistet und verweisen auf die Tokenbezeichner im Korpustext.
Beispiel: Zur Jahrbuch-Datei 1890 SAC-Jahrbuch_1890_mul.xml gibt es die Bergnamen-Datei SAC-Jahrbuch_1890_mul-ner.xml Dort finden sich Einträge wie:
<g type="mountain" stid="7307916" span="2-180-7" id="g_14" level="geo"/> <g type="mountain" stid="0" span="2-274-9" id="g_16" level="geo"/> <g type="mountain" stid="18300407" span="8-501-20, 8-501-21" id="g_128" level="geo"/>
- Der erste Eintrag verweist auf das Token 2-180-7, d.h. Artikel 2, Satz 180, Token 7. In der Jahrbuch-Datei finden wir dort das "Finsteraarhorn". Dieses hat die SwissTopo-Id "7307916". Unter dieser Identifikationsnummer bietet SwissTopo Zusatzinformationen: Höhe des Berges (4273 m), Gemeinde (Fieschertal), Kanton (Wallis).
- Der zweite Eintrag verweist auf das Token 2-274-9 "Schafberg". Dieser Eintrag enthält z.Zt. keine SwissTopo-Id, da dieser Bergname mehrfach in der SwissTopo-Liste auftritt und wir gegenwärtig kein Disambiguierungsmodul haben, das zuverlässig entscheiden kann, welcher Berg gemeint ist.
- Der dritte Eintrag verweist auf die Tokenfolge 8-501-20 und 8-501-21 "Punta Nera" mit der SwissTopo-Id "18300407". Auf diese Weise beschreiben wir mehrgliedrige Bergnamen.
Die folgenden Homographen wurden manuell aus der Bergnamenliste entfernt.
Achs, Aff, Atlas, |
Bire, Blueme, Burg, |
Chamm, Chanzel, Chilchli, Chirchli, Chopf, Chrüz, Chulm, Cima, |
Egg, Esel, |
Fil, First, Freiheit, |
Gibel, Grat, Grätli, Gwächte, Gwächten, |
Hahnen, Hane, Hanen, Haupt, Hengst, Heustock, Heustöckli, Hora, Horen, Horn, Horst, Hubel, Huet, Höch, |
Kamel, Kamm, Krone, |
Leist, Luser, Läden, Lückli, |
Mittelgrat, Moor, Mörder, |
Nase, Nasen, Nüssen, |
Ochs, Ochse, Ofen, Ostgrat, |
Pfaff, Pfaffe, Pfaffen, |
Rad, |
Sattel, Schopf, Spital, Spitz, Spitzli, Stand, Stein, Stock, Stollen, Stoss, Stube, Stöckli, Sunnig, Sätteli, |
Tschudi, Tuba, Tube, Turm, Turner, |
Wart, Wasserscheide |
Ziger |
Verwendung und Zitierung
Das Korpus darf nur für wissenschaftliche Zwecke und nicht kommerziell verwendet werden. Die Herkunft der Daten (www.textberg.ch) muss immer angegeben werden. Für das Zitieren des Korpus schlagen wir vor:
@MISC{TextBerg_Release_145_2011, editor = {Noah Bubenhofer and Martin Volk and Adrian Althaus and Magdalena Jitca and Maya Bangerter and Rico Sennrich}, year = 2011, title = {{Text+Berg}-Korpus (Release 145)}, note = {Digitale Edition des Jahrbuch des SAC 1864-1923 und Die Alpen 1925-2009}, howpublished = {XML-Format}, school = {Institut für Computerlinguistik, Universität Zürich} }
Danksagungen
Wir danken Hanno Biber und dem Team des Austrian Academy Corpus (AAC) in Wien für das Scannen der ersten 10 Bände (1864 - 1874).
Wir danken Bruno Eugster und der Firma DTI in Wil für Unterstützung beim Scannen der Bände 1996 bis 2000.
Wir danken den Studierenden und Mitarbeitern, die beim Scannen, bei der Korrektur und der Verarbeitung der Jahrbücher mitgewirkt bzw. diese massgeblich durchgeführt haben:
- Adrian Althaus (Koordination)
- Sara Bärtschi
- Maya Bangerter (Programmierung)
- Adrian Beer
- Lenz Furrer (Programmierung)
- Anne Göhring
- Reto Gubelmann
- Alexandra Hartmann
- Stefanie Herzig
- Silvan Jegen
- Magdalena Jitca (Programmierung)
- Stéphanie Lehner
- Torsten Marek (Programmierung)
- Nicole Michel
- Stephanie Odok
- Beni Ruef (Programmierung)
- Patricia Scheurer
- Rico Sennrich (Programmierung)
- Silvan Tarnutzer
- Martin Warin (Programmierung)
Wir danken dem Schweizerischen Nationalfond für finanzielle Unterstützung im Rahmen des Projekts "Domain-specific Statistical Machine Translation".
Noah Bubenhofer, Martin Volk