[Tustep-Liste] Wuensche an #Vergleiche

Michael Trauth trauth at uni-trier.de
Mi Mai 21 20:47:56 CEST 2003


Liebe Tustepianer,

ich habe ein Anliegen, das ich gerne ins Bewusstsein
*aller* TUSTEP-Anwender ruecken moechte. Grund dafuer
ist, dass die Sache, um die es geht, nach meiner Ueber-
zeugung von grossem allgemeinen Interesse ist und
trotzdem bisher keine rechte Beachtung, zumindest
nur wenig von mir beobachtbare Resonanz gefunden hat.

Kuerzlich richtete Herr Schaelkle ein unauffaelliges
Posting an die Liste, in dem er in wenigen Zeilen seine
Absicht bekundete, das TUSTEP-Vergleiche neu zu program-
mieren, und um Wuensche, Anregungen und Fehlerhinweise
bat, die bei der Neuprogrammierung Beachtung finden
sollten.

Das ist eine Riesenchance, die wir als Anwender uns kei-
nesfalls entgehen lassen duerfen.

Es ist mir dabei bewusst, dass das #Vergleiche nicht fuer
alle TUSTEPianer gleichermassen von Interesse ist (wobei
ich zugleich sicher weiss, dass viele Anwender das #ve
als typisch philologiehistorische Applikation links lie-
gen lassen, ohne zu ahnen, wie nutzbringend das Programm
auch fuer andere Zwecke eingesetzt werden kann). Dennoch
verkoerpert es eine Funktion, die in *jeder* Charakteri-
sierung von TUSTEP ruehmend hervorgehoben wird und auch
sonst in hohem Ansehen steht. Und obwohl es in seiner
derzeitigen Gestalt schon vor mehr als 25 Jahren ent-
standen ist, kann es nach wie vor in vieler Hinsicht
als vorbildlich und konkurrenzlos gelten.
   Das bedeutet aber (selbstverstaendlich) nicht, dass
keine Verbesserungen bzw. Erweiterungen dazu denkbar
waeren. Ich gebe dazu ein Beispiel: #ve protokolliert
mit aeusserster Praezision jeden, auch den kleinsten
Unterschied zweier Textzeugen. Fuer den Wissenschaftler
sind aber haeufig *bestimmte* Unterschiede vernachlaes-
sigbar. Das koennen Satzzeichen sein, bestimmte Diakri-
tika, Laute, ganze Zeichenfolgen, bis hin zur Gleich-
setzung von Woertern und Namen. Mit einer entsprechen-
den Filterfunktion kann sich der fuer die Kollation
Verantwortliche oft ausserordentlich viel Kaerrnerar-
beit sparen. Dem aktuellen #ve kann man aber die An-
weisung *nicht* geben, solche Strings unberuecksich-
tigt zu lassen oder sie mit anderen gleichzusetzen.
Ich habe fuer solchen (und anderen) Bedarf schon vor
15 Jahren ein Kommandomakro geschrieben, das genau
diese Funktion a posteriori substituiert. Seine Funk-
tionsweise ist simpel: Es prueft in den von #ve er-
zeugten Korrekturanweisungen, ob nach einer Reihe von
Austauscheanweisungen (mit der besagte Strings gleich-
gesetzt oder ganz einfach ganz geloescht werden) der
Wortlaut von Variante A derselbe ist wie der von Va-
riante B. Wenn ja, wird die Korrekturanweisung ge-
loescht, wenn nein, wird sie beibehalten. Das funk-
tioniert mit einer akzeptablen Erfolgsrate - aber bei
weitem nicht perfekt. Es setzt voraus, dass das #ve
die beiden Woerter ungeachtet ihres Unterschieds als
Entsprechungen erkennt. Das ist *keine* Kleinigkeit
und setzt eigentlich viel sprachliches Verstehen vor-
aus. (Man wundert sich dabei vielfach, wie gut das
Programm das schafft.) Beispiel gefaellig?
  9111 in irn  h(er)zen  zallir   zit
  ==== == irme herzen zu aller    ===
       == iren herczen   zu aller zeit
  ==== == ir   mute      zaller   ===
  ==== == irem herczen   zu allerczeit
Diese #va-Synopse (die natuerlich auf die #ve-Leistung
zurueckgeht) ist gut geeignet, das Leistungsvermoegen
von #ve zu illustrieren: Man beachte, dass dabei sogar
'mute' und 'herczen' als Entsprechungen erkannt wurden
- und DAS setzt doch wirklich viel Semantik voraus ;o)).
Da sich in den Korrekturanweisungen etwa
   h(er)zen   und   herzen
   h(er)zen   und   herczen
einander gegenueberstehen, ist es ziemlich leicht, durch
entsprechende Austauscheanweisungen (die Satzzeichen in
nichts austauschen und 'cz' und 'z' gleichsetzen usw.)
die 'Identitaet' von Var.A und Var.B festzustellen und
die evtl. vernachlaessigbare Variante zu eliminieren.
   Es versteht sich aber von selbst, dass das bei weitem
nicht immer klappen *kann*: Kleinere Umstellungen im Text
(Wortdreher und -auslassungen) machen die noetige Gleich-
setzung unmoeglich, und manchmal sorgen sogar ganz kleine
Unterschiede zwischen zwei Woertern dafuer, dass das #ve
die beiden Woerter nicht mehr als Entsprechungen erkennt
und in der Folge das eine Wort als Hinzufuegung und das
andere als Auslassung einstuft. Beispiele:
   9115 wan er  im vor in allen
   ==== vnde im ie === == =====
        === ==  == === == =====
   ==== vnd im  ie uor == =====
   ==== vnd im  ye === == =====
----------
   9127 einirhande   missetat
   ==== vf sie eine  ========
   einer hande       ========
   ==== einer leie   ========
   ==== einer hannde ========
----------
   9135 vnd uirkertin  alle  sine tat
   ==== === verkerten  sine  site
        === vercherten all   sein ===
   ==== === uerkerten        ==== sitte
   ==== === v(er)cherte sein site
-----------
Das sieht fuer den menschlichen Leser auf den ersten
Blick nicht weniger ueberzeugend aus als das erste
Beispiel - und doch sind die Ergebnisse fuer eine
nachgeordnete maschinelle Verarbeitung in einem ent-
scheidenden Punkt anders: In den Korrekturanweisungen
stehen sich naemlich viele der direkten Wort-Entspre-
chungen *nicht* gegenueber. An solchen Stellen versagt
mein Filtermechanismus zwangslaeufig.

Der langen Rede kurzer Sinn: Es waere von hoechstem
Wert, wenn man dem #ve solche 'Filteranweisungen' schon
von vornherein mitgeben koennte. Die Vergleiche-Ergeb-
nisse koennten aus der Sicht des Kollators wesentlich
verbessert und ggf. auch der Berg der zu pruefenden
protokollierten Unterschiede ganz erheblich verklei-
nert werden. Da es doch eine stattliche Zahl von Be-
nutzern meines Makros ZSYN auch ausserhalb Triers gibt,
bin ich zudem ueberzeugt, dass entsprechende Erweite-
rungen der #ve-Funktionalitaet auf breiteres Inter-
esse stossen. Es waere schoen, wenn sich dieses Inter-
esse hier - auf dem Forum der tustep-liste - einmal
vernehmlich zu Wort melden wuerde.

Ich lasse meiner Phantasie freien Lauf und rege an,
ueber eine zusaetzliche Variante des Filtermecha-
nismus' nachzudenken: Dass man dem #ve naemlich in
Form einer Liste alle moeglichen Woerter, Namen und
Varianten davon mitgeben kann, die es bei seiner Prue-
fung auf Unterschiede von vornherein ganz beiseite
lassen darf. (Ich meine mich undeutlich zu erinnern,
dass das eine beliebte Funktion bei COLLATE ist.)

Und wenn ich schon dabei bin, will ich auch gleich
noch etwas zu den einerseits sehr maechtigen, aber
zugleich auch in manchen Anwendungsfaellen ueberaus
umstaendlich zu bedienenden und deshalb - wie ich
sicher weiss - sehr unbeliebten Aufsatzpunkten los-
werden: Es kommt in Reimwerken *sehr* haeufig vor,
dass einzelne Verse, Strophen und ganze Passagen
davon in den Textzeugen an unterschiedlichen Stellen
stehen. Wer meine Schwierigkeiten im Umgang mit den
ASPs nicht recht nachvollziehen kann, moege nur ein-
mal in einem solchen Werk einige Zeilen und Strophen
gegeneinander vertauschen und sich dann daran machen,
die ASPs fuer den korrekten Vergleich der beiden Va-
rianten zu notieren. Das kann extrem zeitaufwendig,
ermuedend und fehleranfaellig sein. Dies zu kritisie-
ren, ist natuerlich *eine* Sache, eine wirkliche Ver-
besserung aber dafuer vorzuschlagen, eine andere. Wie
waere es denn mit ASP-Makros (etwa in spitzen Klammern
wie die Satzmakros eingeschlossen), die eindeutige
Markierungen (Zahlen, Buchstaben, Namen) enthalten
und vom Benutzer an den Stellen in die Texte selbst(!)
eingefuegt werden, die sich exakt entsprechen? Das #ve
wuerde diese Makros selbst nicht als (zu vergleichenden)
Text zur Kenntnis nehmen und sie nur dazu benutzen, sich
die benoetigten ASPs selbst zurechtzulegen.
   Wohlgemerkt, das ist alles nur laut (aus der Per-
spektive des Anwenders) gedacht, und ueber die Schwie-
rigkeiten der programmtechnischen Realisierung weiss
ich schon gar nichts. Aber es wuerde mich sehr freuen,
wenn andere Anwender an diesem Brainstorming teilhaben
wuerden. Kritik und Bedenken dagegen sind natuerlich
genauso willkommen wie ganz utopische Vorstellungen.
Eine Randbemerkungen zu den letzteren: Wenn mir je-
mand vor 15 Jahren von all dem erzaehlt haette, was
heute in TUSTEP moeglich ist, haette ich seine Einwei-
sung in eine geschlossene Anstalt vorgeschlagen. Also:
Keine falsche Scheu - her mit dem Vorschlag! Das muss
im uebrigen auch kein konkreter Vorschlag sein, sondern
darf auch ohne weiteres der Hinweis auf eine besondere
Schwierigkeit sein, von der man noch gar nicht absieht,
wie die Loesung beschaffen sein koennte. Und insbeson-
dere die Projekte, die viel mit Textvergleich befasst
sind oder sogar schwerpunktmaessig darauf basieren,
sind aufgefordert, auch ganz konkretes Material zur
Illustrierung ihrer Probleme zu liefern.

In der Hoffnung, damit den Anstoss zu einer regen Dis-
kussion gegeben zu haben, gruesst herzlich in die Runde

Michael Trauth


---------------------------------------------------------------
Dr. Michael Trauth                  e-mail: trauth at uni-trier.de
Rechenzentrum                       office: Tel. 0651-201-3413
der Universitaet                            Fax  0651-201-3921
Universitaetsring                secretary: Tel. 0651-201-3417
D-54286 Trier
---------------------------------------------------------------



Mehr Informationen über die Mailingliste Tustep-Liste