[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [InetBib] Syntax von Suchanfragen: best practices



Hallo,

Am 12.08.12 19:31, schrieb Sascha Szott:
[...]

Mich würden diesbezüglich "best practices" interessieren. Welche
Variante haben Sie in ihrem System gewählt (und warum)? Sollte man nicht
besser standardmäßig auf die spezielle Interpretation der Zeichen
verzichten (um den Normalbenutzer nicht zu verwirren). Wenn ja, wie kann
man dem Expertennutzer dann aber dennoch die Möglichkeit bieten,
Wildcard- oder Phrase-Queries zu formulieren?

Beste Grüße,
Sascha Szott



die übliche Art und Weise für die Suche nach speziellen Symbolen wie '*' 
ist das Einschliessen in Hochkommata.

Beispiel Googlesyntax:

"a* algorithm"
"b+-trees"

Beispiel SRU / CQL-Syntax:

title = "\"a* algorithm\""
title = "\"b+-trees\""

Beispiel Lucene-Syntax:

title:+"\"a* algorithm\""
title:+"\"b+-trees\""

Dabei kann die dahinter liegende Suchmaschine sich aussuchen, ob 
innerhalb einer Phrase die Wörter als mittel- oder unmittelbare Folge 
gematcht werden ("sloppy phrasing"), oder bei einem nicht randständigem 
'*'-Symbol eine Mittentrunkierung durchgeführt wird ("wildcard infix 
operator"), oder andere Mechanismen greifen (etwa Proximitätssuche, 
Lucene bietet z.B. sog. "span queries" an).

Sollte die gezielte Suche nach Wörtern gewünscht sein, die sowohl aus 
Buchstaben als auch aus speziellen Symbolen (wie *, +, -, Interpunktion 
usw.) bestehen, so muss die Suchmaschine zunächst dazu gebracht werden, 
die gewünschten Symbole auch tatsächlich zu indexieren (die normalen 
Lucene-Analyzer tun dies nämlich nicht). Danach kann dann in 
Suchanfragen das zu suchende Symbol mit einem vorangestellten 
linksseitigen Schrägstrich ("backslash")  angegeben werden. Eine 
Dokumentation ist zu empfehlen, denn es ist nicht zu erwarten, dass jede 
Benutzerin oder jeder Benutzer die speziellen Symbole auswendig kennt. 
Siehe auch 
http://lucene.apache.org/core/3_6_1/queryparsersyntax.html#Escaping%20Special%20Characters

Viele Grüße

Jörg Prante

-- 
http://www.inetbib.de


Listeninformationen unter http://www.inetbib.de.