Skip To Content

Verwenden von Lucene-Suchtextabfragen

Verwenden von Lucene-Suchtextabfragen

Im Geoportal wird eine ausgereifte Suchmaschine verwendet, die sich durch viele Suchoptionen, Gewichtungsoptionen, eine schnelle Performance und Erweiterbarkeit auszeichnet. Die Suchmaschine basiert auf der Open-Source-Suchmaschine Apache Lucene. Denken Sie an die folgenden Features für die Lucene-Suchsyntax. Dann können Sie die Geoportal-Suchseite optimal nutzen:

  1. Begriffe

    Eine Abfrage wird in Begriffe und Operatoren unterteilt. Es gibt zwei Arten von Begriffen: Einzelne Begriffe und Ausdrücke. Ein Einzelner Begriff ist ein einzelnes Wort, z. B. air oder quality. Ein Ausdruck ist eine Gruppe von Wörtern, die in Anführungszeichen gesetzt sind, z. B. "air quality". Mit booleschen Operatoren können mehrere Begriffe miteinander kombiniert werden, sodass eine komplexe Abfrage entsteht. Beispiele:

    • Eine Suche nach air kann 35 Treffer ergeben (Elemente, die das Wort air enthalten).
    • Eine Suche nach quality kann 123 Treffer ergeben (Elemente, die das Wort quality enthalten).
    • Eine Suche nach air quality (ohne Anführungszeichen) führt zu 148 Treffern (Elemente, die die Wörter air oder quality oder beide Wörter enthalten).
    • Eine Suche nach air AND quality führt zu 10 Treffern (die Ergebnisse enthalten beide Wörter air und quality).
    • Eine Suche nach "air quality" (mit Anführungszeichen) führt zu 7 Treffern (Elemente, die die Wörter air und quality direkt nacheinander enthalten).
    • Eine Suche nach title:air führt zu 5 Treffern (Elemente, die das Wort air im Titel enthalten).
    • Eine Suche nach title:quality führt zu 14 Treffern (Elemente, die das Wort quality im Titel enthalten).
    • Eine Suche nach +title:air +title:quality oder title:"air quality" führt zu 2 Treffern (beide Elemente enthalten beide Wörter air und quality im Titel).

  2. Sonderzeichen

    Das Geoportal unterstützt das Verwenden von Escape-Zeichen vor Sonderzeichen, die Teil einer Abfragesyntax sind. Folgende Sonderzeichen werden derzeit unterstützt: + - && || ! ( ) { } [ ] ^ " ~ * ? : \ Geben Sie bei Verwendung dieser Zeichen bei einer Suche \ vor dem Zeichen ein. Wenn Sie beispielsweise nach Elementen suchen möchten, die Treffer mit dem Maßstab 1:250k enthalten, verwenden Sie die folgende Abfrage: \1\:250k.

  3. Felder

    Lucene unterstützt Felddaten. Beim Durchführen einer Suche können Sie entweder ein Feld angeben oder das Standardfeld verwenden. Die Feldnamen und das Standardfeld sind implementierungsspezifisch. Sie können beliebige Felder durchsuchen, indem Sie den Namen des Feldes, anschließend einen Doppelpunkt und den gewünschten Suchbegriff eingeben. Eine Abfrage, bei der ein bestimmtes Feld genau angegeben wird, kann genauer sein als eine Abfrage, bei der nur mit Begriffen gesucht wird. Beachten Sie, dass bei einigen Feldern zwischen Groß- und Kleinschreibung unterschieden wird. Denken Sie daran, dass bei Abfragen vor einigen Sonderzeichen ein umgekehrter Schrägstrich (\) als Escape-Zeichen eingefügt werden muss oder Sonderzeichen in Anführungszeichen ("") gesetzt werden müssen, wenn sie Teil eines zu suchenden Textes sind. Beispiele:

    • title:"The Right Way" AND text:"don't go this way"
    • uuid:"{550E8400-E29B-41D4-A716-446655440000}"
    • uuid:\{550E8400\-E29B\-41D4\-A716\-446655440000\}
    • resource.url:"http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer"
    Hinweis:

    Das Feld ist nur für den Begriff gültig, der dem Feld direkt folgt. Bei der Abfrage title:Do it right wird deshalb nur nach "Do" im Titelfeld gesucht.

  4. Platzhaltersuche

    Das Geoportal unterstützt Platzhaltersuchvorgänge für ein oder mehrere Zeichen, die sich innerhalb von einzelnen Begriffen befinden (nicht innerhalb von Abfragen mit Ausdrücken).

    Vorsicht:

    Die Symbole * und ? können bei einer Suche nicht als erstes Zeichen verwendet werden.

    • Verwenden Sie bei Platzhaltersuchen für ein Zeichen das Symbol "?". Bei einer Platzhaltersuche für ein Zeichen wird nach Begriffen gesucht, die dem gesuchten Begriff entsprechen und das einzelne Zeichen ersetzt wird. Beispielsweise können Sie mit der Suchabfrage Te?t nach Text oder Test suchen.
    • Verwenden Sie bei Platzhaltersuchen für mehrere Zeichen das Symbol "*". Bei Platzhaltersuchen für mehrere Zeichen wird nach 0 oder mehreren Zeichen gesucht. Beispielsweise können Sie mit der Suchabfrage test* nach "Test", "Tests" oder "Tester" suchen. Sie können das Platzhalterzeichen auch innerhalb eines Suchbegriffs verwenden: te*t.
  5. Fuzzy-Suche

    Das Geoportal unterstützt Fuzzy-Suchvorgänge, die auf der Levenshtein-Distanz bzw. einem Algorithmus für die Bearbeitungsinstanz basieren. Verwenden Sie bei einer Fuzzy-Suche am Ende eines Einzelnen Begriffs das Tilde-Symbol "~". Beispielsweise können Sie mit der Fuzzy-Suche air~ nach Begriffen suchen, die so ähnlich wie air geschrieben werden. Bei dieser Suche werden nicht nur Begriffe gefunden wie air und airplane sondern auch aid. Das Geoportal unterstützt das Angeben einer notwendigen Ähnlichkeit. Der Wert hierfür liegt zwischen 0 und 1, wobei bei einem Wert, der näher an 1 liegt, nur Begriffe mit einer höheren Ähnlichkeit gefunden werden. Beispiel: air~0.8. Wenn hierfür kein Parameter angegeben wird, wird der Standardwert 0,5 verwendet.

  6. Umkreissuche

    Das Geoportal unterstützt die Suche nach Wörtern, die innerhalb einer bestimmten Distanz liegen. Verwenden Sie bei einer Umkreissuche am Ende eines Ausdrucks das Tilde-Symbol "~". Um beispielsweise nach air und quality innerhalb von 10 Wörtern in einem Dokument zu suchen, verwenden Sie die folgende Suche: air quality"~10.

  7. Bereichssuche

    Das Geoportal unterstützt Bereichsabfragen für Envelope und Zeitstempel. Damit können Benutzer Dokumente suchen, deren Feldwerte zwischen der in der Bereichsabfrage angegebenen unteren und oberen Grenze liegen. Bei Bereichsabfragen können die oberen und unteren Grenzen eingeschlossen werden oder nicht.

    • Envelope-Beispiele:
      • envelope:[-80,-70 TO +30,+70] Bei dieser Suche werden Dokumente zurückgegeben, die einen räumlichen Envelope mit einer Südwest-Grenzkoordinate von -80° W und -70° S und einer Nordost-Grenzkoordinate von 30° W und 70° N überschneiden.
      • envelope:{-80,-70 TO +30,+70} Bei dieser Suche werden Dokumente zurückgegeben, die genau in den Bereich eines räumlichen Envelopes mit einer Südwest-Grenzkoordinate von -80° W und -70° S und einer Nordost-Grenzkoordinate von 30° W und 70° N fallen.
      Hinweis:

      Hier ist die Syntax entscheidend. Zuerst wird der Feldname angegeben (Envelope), dann folgt ein Doppelpunkt (:) und anschließend entweder eine einschließende oder ausschließende Bereichsdefinition. Bei einer einschließenden Suche werden eckige Klammern ([ ]) und bei einer ausschließenden Suche geschweifte Klammern ({ }) verwendet. Der Unterschied besteht darin, dass bei einer ausschließenden Bereichssuche nur die Ressourcen ausgewählt werden, bei denen der Envelope genau in den angegebenen Bereich fällt. Bei einer einschließenden Suche werden hingegen Ressourcen ausgewählt, die den Bereich überschneiden, aber auch außerhalb des Bereichs fallen. Das erste Wertepaar sind die Koordinaten in der linken unteren Ecke, danach folgt das Schlüsselwort TO (in Großbuchstaben) und dann die Koordinaten der oberen rechten Ecke. Koordinaten werden stets im Projektionssystem WGS 1984 (4236) angegeben. Außerdem können anstelle einer einzelnen Koordinate oder eines Eckkoordinatenpaares Platzhalter verwendet werden, z. B.: envelope:[*,-70 TO +30,*] oder envelope:{-80,-70 TO *} .

    • Zeitstempel-Beispiele:
      • dateModified:[2009-10-11 TO 2009-11-10]
      • dateModified:[2006 TO 2010]
      • dateModified:2009-12
      Bei der Zeitstempelsyntax lautet der angegebene Feldname dateModified, dann folgen ein Doppelpunkt und eine einschließende Bereichsdefinition. Im ersten Beispiel werden Ressourcen ausgewählt, bei denen dateModified zwischen 11.10.2009 und 10.11.2009 liegt und diese Bereichsdaten eingeschlossen werden. Im zweiten Beispiel werden Ressourcen ausgewählt, bei denen dateModified zwischen dem Jahr 2006 und 2010 liegt Im letzten Beispiel werden Ressourcen ausgewählt, bei denen dateModified im Dezember 2009 liegt (keine Klammern erforderlich).
  8. Erhöhen der Relevanz für einen Begriff

    Das Geoportal stellt auf Basis der gefundenen Begriffe die Relevanzebene der entsprechenden Dokumente zur Verfügung. Verwenden Sie zum Erhöhen der Relevanz das Caret-Zeichen ^, und geben Sie am Ende des zu suchenden Begriffs den Faktor (Zahl) an, um den die Relevanz erhöht werden soll. Je höher der Verstärkungsfaktor, desto höher ist die Relevanz des Begriffs. Durch Erhöhen der Relevanz können Sie die Relevanz eines Dokuments zu steuern, indem die Relevanz eines Begriffs darin erhöht wird. Wenn Sie zum Beispiel nach air quality suchen und möchten, dass der Begriff air relevanter ist, erhöhen Sie seine Relevanz, indem Sie neben den Begriff das Symbol ^ und den Erhöhungsfaktor einfügen. Folgendes können Sie eingeben: air^4 quality. Dokumente mit dem Begriff "air" sind dann relevanter. Sie können auch die Relevanz von Ausdrücken erhöhen, wie im folgenden Beispiel: "air quality"^4 "water quality". Standardmäßig beträgt der Erhöhungsfaktor 1. Obwohl der Erhöhungsfaktor positiv sein muss, kann er kleiner als 1 sein (z. B. 0,2).

  9. Boolesche Operatoren

    Mit Booleschen Operatoren können Begriffe mit Logikoperatoren kombiniert werden. Das Geoportal unterstützt AND (UND), +, OR (ODER), NOT (NICHT) und - als Boolesche Operatoren.

    Hinweis:

    Boolesche Operatoren müssen in GROSSBUCHSTABEN geschrieben werden.

    • Der Operator OR ist der Standardoperator für die Kombination von Begriffen. Dies bedeutet, dass der OR-Operator verwendet wird, wenn kein anderer Boolescher Operator zwischen zwei Suchbegriffen angegeben wird. Der OR-Operator verknüpft zwei Begriffe und gibt ein übereinstimmendes Dokument zurück, wenn einer der Begriffe in einem Dokument vorhanden ist. Dies entspricht einer Vereinigungsmenge von Datensätzen. Das Symbol || kann anstelle des Wortes OR verwendet werden.
    • Mit dem AND-Operator können Sie Suchabfragen durchführen, bei denen sich beide Begriffe an einer beliebigen Position im Text eines einzelnen Dokuments befinden. Dies entspricht einer Schnittmenge von Datensätzen. Das Symbol && kann anstelle des Wortes AND verwendet werden.
    • Das Pluszeichen + (steht auch für "Alle Begriffe einbeziehen") gibt an, dass der Begriff nach dem +-Zeichen an einer beliebigen Stelle in einem Feld eines einzelnen Dokuments enthalten sein muss.
    • Der NOT-Operator gibt an, dass der Begriff nach NOT nicht in Dokumenten enthalten sein darf, die zurückgegeben werden. Dies entspricht einer Differenz von Datensätzen. Das Symbol ! kann anstelle des Wortes NOT verwendet werden.
      Hinweis:

      Der NOT-Operator kann nicht mit nur einem Begriff verwendet werden.

  10. Gruppieren

    Das Geoportal unterstützt das Verwenden von Klammern, um Wortgruppen zu gruppieren und so Unterabfragen zu erstellen. Dies kann sehr nützlich sein, wenn Sie für eine Abfrage die Boolesche Logik steuern möchten. Beispiel: Bei (air OR water) AND quality werden Dokumente gefunden, die die Wörter air und quality oder die Wörter water und quality enthalten.

  11. Gruppieren von Feldern

    Das Geoportal unterstützt das Verwenden von Klammern, um mehrere Wortgruppen für ein einzelnes Feld zu gruppieren. Beispiel: Mit title:(air OR water) werden Elemente gefunden, die die Wörter air oder water im Titel enthalten.

Weitere Informationen zur Lucene-Syntax und wie sie für die optimale Suche im Geoportal genutzt werden kann, finden Sie auf der Lucene-Website.