1.11 Solr Queries
Allgemein
Immer wieder wird im Backend des Goobi viewers auf die Notwendigkeit der Formulierung von Solr-Queries verwiesen, wenn es darum geht eine Funktionalität nur für bestimmte Werke zur Verfügung zu stellen. Auf dieser Seite sollen ein paar Fragen in diesem Kontext beantwortet werden.
Formulierung von Solr-Queries
Eine Solr-Query wird immer als FELDNAME:WERT
formuliert, zum Beispiel MD_PLACEPUBLISH:Berlin
. Enthält der Wert ein Leerzeichen oder ein sonstiges Trennzeichen muss er in Anführungsstriche gesetzt werden MD_PLACEPUBLISH:"New York"
.
Mehrere Bedingungen können mit Leerzeichen getrennt hintereinander geschrieben werden. Diese sind automatisch als ODER
verknüpft.
Beispiel
Die Query bedeutet: "Finde alle Treffer, bei denen im Feld MD_PLACEPUBLISH
der Wert Berlin
oder der Wert New York
enthalten ist".
Wenn Bedingungen mit UND
verknüpft werden sollen, dann muss dem Feld-Wertpaar ein +
Zeichen vorgestellt werden.
Beispiel
Die Query bedeutet: "Finde alle Treffer bei denen im Feld MD_AUTHOR
der Wert John Doe
und in dem Feld MD_PLACEPUBLISH
der Wert New York
enthalten ist.
Wenn Bedingungen negiert werden sollen geschieht das mit einem vorgestellten -
Zeichen
Beispiel
Die Query bedeutet: Finde alle Treffer in denen im Feld MD_AUTHOR
der Wert John Doe
enthalten ist und gleichzeitig das Feld MD_PLACEPUBLISH
nicht den Wert Washington
enthält.
Auch Klammersetzung ist unter der Angabe von einfachen Klammern möglich. Dies kann für die Verknüpfung von UND
und ODER
Bedingungen genutzt werden.
Beispiel
Die Query bedeutet: Finde mir alle Werke vom Publikationstyp Monographie die als Erscheinungsort entweder Berlin oder New York angegeben haben.
Herausfinden der Solr-Felder
Für die Formulierung der Solr-Queries ist es notwendig zu wissen welche Solr-Felder es überhaupt gibt. Hierfür stehen zwei Informationsquellen zur Verfügung.
Zum einen ist in Kapitel 2.10 der Goobi viewer Indexer Dokumentation das Solr Schema grob erklärt:
Zum anderen bringt jede Goobi viewer Installation einen API Endpunkt mit, bei dem die vorhandenen Solr-Felder inklusive deren Übersetzungen aufgelistet werden. Der Endpunkt ist unter der URL /index/fields
zu erreichen, zum Beispiel hier:
Last updated