Suchen Suche und Such-Syntax Standardsuche Bei der einfachen Suche oder Standardsuche werden ein oder mehrere Begriffe durch Leerzeichen getrennt eingegeben. Dabei steht das Leerzeichen für ein «oder». Die Suchergebnisse umfassen bei mehreren Wörtern also mindestens einen Suchbegriff. So erhält man bei der Suche nach «Haus Bagger Pflanze» auch alle Einträge, die nur «Haus», «Bagger» oder «Pflanze» enthalten. Suche mit Operatoren Operatoren können bei der Suche bestimmte Bedingungen definieren, um diese spezifischer zu gestalten. Die Operatoren «OR», «AND», «+», «-», «NOT», «(», «[» erscheinen auch in der Vorschlagsliste und können dort ausgewählt werden. Soll das Suchergebnis alle drei Begriffe «Haus Bagger Pflanze» enthalten, sind diese bei der Eingabe durch den Operator «AND» zu verbinden: «Haus AND Bagger AND Pflanze». Es ist auch möglich, beliebig komplexe Klammerausdrücke mit «OR», «AND» und «NOT» zu kombinieren, wie z. B. «(wert1 OR NOT (wert2 AND wert3) )». Auf jede öffnende Klammer muss eine schließende Klammer folgen. Komplexe Klammerausdrücke sind auch als Werte für Felder möglich, z. B. «feld1: (wert1 OR NOT (wert2 AND wert3) )». Suche nach Feldwerten Das implizite «oder» kann auch auf der Ebene eines Kriteriums für einen Feldnamen angewendet werden, z. B. «feld1:(wert1 wert2 wert3)», d. h. hier wird gefordert, dass feld1 entweder wert1, wert2 oder wert3 ist. Will man nach Feldwerten suchen, die Leerzeichen enthalten, ist der Wert in Anführungszeichen zu setzen, z. B. «feld1: "Wert mit Leerzeichen"» oder einfach nur «"Wert mit Leerzeichen"». Will man nach Feldwerten suchen, die Anführungszeichen enthalten, ist ein Backslash «\» vor das Anführungszeichen zu setzen. Der Backslash ist auch immer dann nötig, wenn hier schon eine andere Funktionalität definiert wurde (wie z. B. «*» oder «(» oder «?»). Vorschlagsliste Bei der Eingabe eines Suchbegriffs öffnet sich eine Liste mit passenden Vorschlägen. Hier wird der Text bis zum vorigen Leerzeichen genommen und in der Vorschlagsliste als Filter angewendet, um diese Liste auszudünnen. Dabei wird ein Eintrag in der Liste gelassen, wenn der Text entweder im ersetzten Text vorkommt (Groß- und Kleinschreibung sowie diakritische Zeichen (z.B. ê, æ, á) werden nicht berücksichtigt) oder im dahinter in Klammern befindlichen Beschreibungstext enthalten ist. Das heißt, man kann in der Vorgangsliste «nummer» tippen und bekommt Einträge aufgelistet, wie z. B. «operationNumber: (Vorgangsnummer)», nicht aber «status: (Status)». Wählt man den Eintrag mit «Vorgangsnummer» aus, wird der Text «Vorgangsnummer» ersetzt mit «operationNumber:». Befindet sich der Cursor an einer Stelle, an der vom Kontext klar ist, dass es sich um eine Feldwert-Position für ein konkretes Feld handelt, werden Vorschläge für mögliche Feldwerte angezeigt, falls vorhanden und implementiert. Dies betrifft vor allem Felder mit einer limitierten Anzahl von Feldwerten, wie z. B. den Status. Dies funktioniert auch bei der oben erwähnten Schreibweise «feld: (<Cursor>». Intervallsuche Es ist auch möglich, nach Intervallen für ein Feld zu suchen. Dabei sucht man für ein Feld nach Werten, die lexikografisch mindestens Startwert und höchstens Endwert sind. Auch Datumswerte lassen sich auf diese Art und Weise suchen, da sie so gespeichert sind, dass die lexikografische Sortierung der zeitlichen Einordnung entspricht. «feld: [A TO N]» sucht nach Einträgen, bei denen das Feld «feld» Wörter enthält, die lexikografisch zwischen den Buchstaben A und N liegen. So befindet sich «Created» dazwischen, aber nicht «New» da «New» auf «N» folgt. Um eine Intervallsuche zu starten, welche die angegebenen Buchstaben/Wörter/Zeiten ausschließt, werden «{» und «}» benutzt. «feld: {firstName TO lastName}» sucht nach Feldern welche lexikografisch zwischen den angegebenen Feldern liegen, aber sie ausschließt. Möchte man Felder einschränken, die Datumswerte oder Zeitpunkte gespeichert haben, ist es fast immer notwendig, eine Intervallsuche durchzuführen. Die Vorschläge dafür werden so angeordnet, dass die Syntax für Intervalle («[» startet ein Intervall) weiter unten aufgelistet sind als die Vorschläge für Werte (wie z. B. «NOW-7DAYS/DAY»). Um nach Einträgen zu suchen, bei denen ein Datumsfeld zwischen dem heutigen Tag und den nächsten 7 Tagen liegt, muss ein Intervall wie folgt formuliert werden: «datumsfeld: [NOW/DAY TO NOW+8DAYS/DAY]». Wichtig ist hier die Angabe der Zahl 8 statt der Zahl 7, weil diese den ersten Wert enthält, der nicht mehr erwünscht ist, aber noch mit selektiert wird. Suche mit Platzhalterzeichen Verwendung von «*» als Ersatz für eines oder mehrere Zeichen: Um nach unvollständigen Wörtern zu suchen, kann man als Platzhalter einen «*» an den Anfang, das Ende oder Wortanfang und -ende setzen: «*bau» oder «Um*» bei der Suche nach Umbau. Verwendung von «?» als Ersatz für ein einzelnes Zeichen: Man kann nach Wörtern suchen, bei denen einzelne Zeichen beliebig sind, indem man als Platzhalter ein «?» anstelle eines Zeichens setzt: So sucht «SA?» nach allen Wörtern, die aus drei Buchstaben bestehen und bei denen die ersten zwei Buchstaben «SA» sein müssen und der dritte Buchstabe beliebig sein darf. ×