German | English
jWordSplitter ist eine kleine Java-Bibliothek zur Zerlegung deutscher Komposita. Die Zerlegung
basiert auf einem Wörterbuch, das im JAR integriert ist.
Der Sourcecode und eine Beschreibung zur Nutzung liegt
bei github.
Hinweise zum verwendeten Algorithmus:
- Der Algorithmus ist sehr einfach und weiß fast nichts über Sprache: er zerschneidet das Wort und
prüft, ob ein Teil wirklich ein Wort ist, d.h. im Wörterbuch vorkommt. Ist das der Fall, wird
das gleiche Vorgehen wieder rekursiv auf den Rest des Wortes angewandt. Sonst wird die Stelle,
an der das Wort zerteilt wird, um einen Buchstaben verschoben. Entsprechend ist es auch egal,
ob die zu zerlegenden Wörter Nomen, Verben oder Adjektive sind.
- Die Länge der zu zerlegenden Wörter ist nicht begrenzt. jWordSplitter kann auch
das berühmte Beispiel "Donaudampfschifffahrtskapitän" zerlegen (Donau, dampf, schiff, fahrt, kapitän).
- Um die Qualität der Zerlegung zu verbessern, muss man den Inhalt des Wörterbuchs anpassen oder
mit der Methode GermanWordSplitter.addException() Ausnahmen hinzufügen.
- Das Wörterbuch sollte auch alle flektierten Wortformen (Plural, Genitiv etc.) beinhalten.
Außerdem gibt es Komposita-Teile wie "Miet" (Mietwohnung, Mietverhältnis) oder "Wohn" (Wohnraum, Wohnrecht),
die eigenständig keine Wörter sind, aber trotzdem im Wörterbuch sein müssen, wenn ihre
Trennung funktionieren soll.
- Der Algorithmus kennt das Fugenelement "s" wie in "Verlagshaus", aber er trennt
auch falsche oder seltene Wörter wie "Verlaghaus".
- Der Algorithmus funktioniert auch für andere Sprachen. Um eine weitere Sprache zu unterstützen, muss die Klasse
AbstractWordSplitter erweitert werden.
Stichwörter: zusammengesetzte Wörter, Nominalkomposita, Kompositum, Worttrennung, Wortzerlegung
|