[IDS-Logo] Online-Hilfe zu COSMAS II: Suchanfragesprache - Operator ABSTAND
Syntax der grafischen EingabeSuchoperatorenKombinationsoperatorenOperator ABSTAND

Operator ABSTAND

deutsche Bezeichnung interne Bezeichnung
ABSTAND X VON Y PROX(<R>,<P>,<R>)

Allgemeine Beschreibung

Beispiele für die Formulierung von Abständen

Siehe Beschreibung von Typ <P>.

Spezielle Suchanfragen mit dem Abstandsoperator

1. Suchanfragen am Satzende

Für die Satzgrenzen greift man auf Element-Operatoren zurück, um die Annotationen <s> im Text zu suchen. Die Suche nach beispielsweise dem Wort "Hürde" am Satzende sieht so aus:

ABSTAND('Hürde',w0,RECHTS(ELEM(S)))

Der 0-Wortabstand wird eingesetzt, weil das gesuchte Wort mit dem Wort am Satzende (das Ergebnis von RECHTS(ELEM(S))) zusammenfallen muss.

Sucht man hingegen nach einem Wort am Satzende in Kombination mit einem bestimmten Satzzeichen, so wird die Suche wie folgt formuliert:

ABSTAND('Hürde',w0,'.')

In diesem Fall wird der Wortabstand 0 verwendet, weil das gesuchte Wort und der Punkt in derselben Zeichenkette vorkommen.

2. Suchanfragen am Satzanfang

Analog zum Satzende wird auch hier die Annotation <s> im Text gesucht und eingesetzt:

ABSTAND(LINKS(ELEM(S)),w0,'und')

Sucht man nach einem Wort, das maximal 3 Wörter nach dem Satzanfang erscheint, so sieht die Suchanfrage so aus:

ABSTAND(LINKS(ELEM(S)),+w0:2,'Hürde')

Durch die Angabe des Bereichs +w0:2 wird Hürde an den Wortpositionen 1, 2 und 3 am Satzanfang gesucht.

Sucht man nach beispielsweise und maximal 3 Wörter nach Satzanfang und maximal 3 Wörter vor Satzende, so wird die Suchanfrage wie folgt formuliert:

ABSTAND(ABSTAND(LINKS(ELEM(S)),+w3,'und'),+w3,RECHTS(ELEM(S)))

was in Teilsuchen zerlegt besser verständlich wird:

Q1 = ABSTAND(LINKS(ELEM(S)),+w3,'und')
Q2 = RECHTS(ELEM(S))
Q3 = ABSTAND(Q1,+w3,Q2)

3. Suchanfragen mit Komma

Suchanfragen bestehend aus einer Kombination von einem Wort und einem Komma werden analog zu den Suchanfragen mit Satzzeichen formuliert.

ABSTAND('dass daß',w0,',')

4. Suchanfragen am Anfang eines Nebensatzes

Wenn sich der Nebensatz mit Hilfe des Kommas ausdrücken lässt, wird die Suchanfrage analog zu den Suchanfragen am Satzbeginn formuliert:

ABSTAND(',',+w1:1,'dass daß')

5. Suchanfragen unter Vermeidung eines Satzzeichens

Sucht man nach einem Wort, das nicht nach z.B. einem Komma geschrieben steht, wird der Ausschließungsoperator % im Wortabstand eingesetzt. Dabei geht man gedanklich zuerst von der positiven Formulierung aus, das Wort dass folgt auf ein Komma (Bsp. A1 und B1), und wandelt diese Suchanfrage in eine das Komma ausschließende Formulierung um, indem man % einsetzt.

Bei der Verwendung des Abstandsoperators mit % muss man zusätzlich beachten, dass nur der erste Operand des Operators zurückgeliefert wird:

a) problematischer Einsatz von %:

ABSTAND(',',+w1:1,'dass daß')

(A1): liefert alle Stellen zurück, bei denen ein Komma von dass oder daß gefolgt wird.

ABSTAND(',',%+w1:1,'dass daß')

(A2): Liefert alle Kommata zurück, auf die dass und daß nicht folgen. Das ist nicht das erwartete Ergebnis.

b) korrekter Einsatz von %:

ABSTAND('dass daß',-w1:1,',')

(B1): das gesuchte Wort steht hier als erster Operand, deshalb muss mit -w1:1 die Reihenfolge des Abstands umgedreht werden. Soweit liefern (B1) und (A1) die gleichen Treffer zurück.

ABSTAND('dass daß',%-w1:1,',')

(B2): liefert alle dass und daß zurück, die nicht nach einem Komma geschrieben stehen.

6. Gerichtete Abstandssuche innerhalb eines Satzes

Sucht man nach einer Kombination von 2 oder mehreren Wörtern innerhalb eines Satzes, wird der Satzabstand mittels s0 angegeben. Im Gegensatz zum Wortabstand kann hier auch ein gerichteter Satzabstand mittels eines + oder - angegeben werden:

ABSTAND('wird',+s0,'nicht')

Es werden die Stellen gefunden, in denen wird und nicht im selben Satz vorkommen und wird vor nicht steht.

7. Suchanfragen bei Verdoppelung von Wörtern oder Wortklassen

Sucht man Verdoppelungen von Wörtern (z.B. "… nicht nicht …") oder Wortklassen (z.B. "… ADJ ADJ …"), so muss darauf geachtet werden, dass der 0-Wortabstand ausgeschlossen wird. Ansonsten erhält man alle Treffer, bei denen nicht oder ADJ je einmal vorkommt, ebenfalls dazu (Grund: "nicht" /w0 "nicht" = "nicht").

Korrekte Formulierungen lauten:

ABSTAND('nicht',+w1:1,'nicht')
ABSTAND('nicht',+w1:5,'nicht')
ABSTAND(MORPH('ADJ'),+w1:1,MORPH('ADJ'))

Falsch hingegen ist:

ABSTAND('nicht',+w1,'nicht')

weil +w1 = +w0:1.

Soll ein Wort innerhalb eines Satzes doppelt vorkommen, aber nicht direkt hintereinander, so kann dies mit folgendem Trick formuliert werden:

ABSTAND('nicht',+w2:1000,s0,'nicht')

Die Angabe s0 sorgt dafür, dass beide Wörter innerhalb desselben Satzes gefunden werden. Die Angabe w2:1000 sorgt dafür, dass die beiden Wörter mindestens einen Wortabstand von 2 haben. Als maximaler Wortabstand wird ein beliebig großer Wert genommen (hier 1000), der sicherstellt, dass alle Sätze bis zu einer Länge von 1000 Wörtern durchsucht werden.

8. Wortabstand 0 und Überlappungen von Textbereichen

der 0-Wortabstand kann auch eingesetzt werden, um eine Überlappung zwischen mehreren Textbereichen zu erkennen. Dabei ist es nicht notwendig, dass die Textbereiche gemeinsame Wörter enthalten.

Typische Fallen

1. Abstand +w1:1 statt +w1

Bei der Suche nach einem Muster wie »es scheint, dass es« wird der Suchbegriff »es« zweimal verwendet. Falls Sie dieses Muster mit der folgenden Suchanfrage suchen, werden Sie falsche Ergebnisse erhalten:

falsch: ABSTAND(ABSTAND(ABSTAND('es',+w1,'scheint'),+w1,'dass'),+w1,'es')))

Obwohl COSMAS II korrekt gearbeitet hat, werden Sie unter den Ergebnissen folgende Textpassagen erhalten:

richtig: Doch es scheint, dass es sich der Vatikan…

falsch : und es scheint, dass dieser Wellenschlag …

falsch : Ob als Produzent oder Musiker, es scheint, dass seine Leidenschaft…

Aus Ihrer Sicht sind die Passagen 2 und 3 falsch. Dass Sie von COSMAS II zurückgeliefert werden, liegt daran, dass die gewählte Formulierung zulässt, dass »es scheint, dass« mit »es« mit der Bedingung +w1 kombiniert wird, die gleichbedeutend ist wie +w0:1. Da »es« innerhalb von »es scheint, dass« erscheint, ist die Bedingung +w0 erfüllt.

Um diese Falle zu vermeiden, formulieren Sie das gesuchte Muster wie folgt unter Einsatz von +w1:1:

korrekt: ABSTAND(ABSTAND(ABSTAND('es',+w1,'scheint'),+w1,'dass'),+w1:1,'es')))

Achtung: auch wenn Sie für das gesuchte Muster die Wörter anders miteinander kombinieren, müssen Sie das erste »es« unter Einsatz von +w1:1 mit »scheint, dass es« kombinieren:

korrekt: ABSTAND('es',+w1:1,ABSTAND('scheint',+w1,ABSTAND('dass',+w1,'es')))

COSMAS II, Zentrale DV-Dienste - 18. 01. 2018