Query Expression Transformation Mindbreeze Query Transformer Plug-Ins Version 2016 Fall Release Status: 4. Mai 2016
Copyright Mindbreeze GmbH, A-4020 Linz, 2017. Alle Rechte vorbehalten. Alle verwendeten Hard- und Softwarenamen sind Handelsnamen und/oder Marken der jeweiligen Hersteller. Diese Unterlagen sind streng vertraulich. Durch die Übermittlung und Präsentation dieser Unterlagen alleine werden keine Rechte an unserer Software, an unseren Dienstleistungen und Dienstleistungsresultaten oder sonstigen geschützten Rechten begründet. Die Weitergabe, Veröffentlichung oder Vervielfältigung ist nicht gestattet. Aus Gründen der einfacheren Lesbarkeit wird auf die geschlechtsspezifische Differenzierung, z.b. Benutzer/- innen, verzichtet. Entsprechende Begriffe gelten im Sinne der Gleichbehandlung grundsätzlich für beide Geschlechter. Mindbreeze Query Transformer Plug-Ins 2
Inhaltsverzeichnis 1 Mindbreeze Query Transformation 4 2 Query Transformation Plug-Ins 4 2.1 Synonym Transformer Plug-In 4 2.1.1 Installation 4 2.2 Replacement Transformer Plug-In 5 2.2.1 Installation 5 2.3 Generelle Anmerkungen zu den Transformer Plug-Ins (Replacement / Synonym) 6 2.4 Stemmer Transformer Plug-In 6 2.4.1 Installation 7 2.5 Term2DocumentBoost Transformer Plug-In 7 2.5.1 Installation 8 2.5.2 CSV-Dateiformat 8 3 Zusätzliche Features 9 3.1 Did you mean? (Meinten Sie?) 9 3.2 Entity Recognition (Namenerkennung) 9 3.3 CSV Transformation 9 3.3.1 Konfiguration 9 Mindbreeze Query Transformer Plug-Ins 3
1 Mindbreeze Query Transformation Mindbreeze stellt eine Liste von Query Transformation Services zur automatischen Modifikation von Suchanfragen für bessere Suchergebnisse bereit. Auf der einen Seite gibt es Plug-In-basierte Extension Points, die bei Bedarf in eine Mindbreeze- Installation geladen werden können: Synonym Transformer Replacement Transformer Auf der anderen Seite gibt es integrierte Produkt-Features, die dazu beitragen, gewünschte Suchergebnisse finden zu können (z.b. indem indizierte Dokumente mit zusätzlichen Metadaten angereichert werden): Meinten Sie? ( Did you mean? ) Namenerkennung (Entity Recognition) CSV Transformation 2 Query Transformation Plug-Ins Um eines der Query Transformation Services benutzen zu können, muss dieses zu Ihrer Mindbreeze-Installation hinzugefügt werden, indem das entsprechende Plug-In geladen wird (die Query Transformation Services werden mit dem Paket Mindbreeze Query Transformation Plugins.zip ausgeliefert). Das Plug-In muss auch in Ihrer Mindbreeze Lizenz inkludiert sein. 2.1 Synonym Transformer Plug-In Das Synonym Transformer Plug-In ermöglicht einem Suchergebnisse zu finden, indem nach verschiedenen Synonymen für ein Wort gesucht wird. Die Suchanfrage wird so transformiert, damit nach jedem Begriff in der Synonymliste gesucht wird. Verwendung: Die Synonyme können in einer CSV-Datei definiert werden, in dem eine Menge an Synonyme in eine Zeile geschrieben werden, getrennt mit einem Semikolon (;). Beispiel einer kleinen synonym.csv Datei: auto;waagen;kraftfahrzeug flugzeug;flieger;aeorplan Beispiel 1: Eine Suche nach auto sendet die transformierte Suchanfrage: auto OR waagen OR kraftfahrzeug Beispiel 2: Eine Suche nach flugzeug sendet die transformierte Suchanfrage: flugzeug OR flieger OR aeorplan Anmerkung: Der Begriff in der ersten Spalte wird mit der Suchanfrage verglichen. Es werden nur einzelne Wörter ohne Abstände in der ersten Spalte unterstützt. 2.1.1 Installation Installieren Sie das Plug-In (entweder mit der Manager UI oder mit dem Kommandozeilenwerkzeug mesextension) mesextension --interface=plugin --type=archive --file=synonymtransformer- <version>.zip install Mindbreeze Query Transformer Plug-Ins 4
Aktivieren Sie das Plug-In für jeden gewünschten Index mithilfe der Manager UI: o Wechseln Sie zum Reiter Indices und aktivieren Sie Advanced Settings o Scrollen Sie runter zum Abschnitt Query Transformation Services o Wählen Sie das SynonymTransformer Plug-In und klicken Sie auf Add Fügen Sie den Pfad, der zur CSV-Datei mit den Synonymdefinitionen zeigt, als Custom Plugin Properties hinzu. o Fügen Sie eine neue Eigenschaft (Property) mit dem Namen SYNONYM_CSV_FILE_PATH hinzu o Weisen Sie einen Wert mit dem Pfad zur CSV-Datei zu (entweder als lokalen Dateipfad oder als Netzwerkpfad, der für das verwendete Betriebssystem angemessen ist) Beispiel 1: SYNONYM_CSV_FILE_PATH C:\data\synonyms.csv Beispiel 2: SYNONYM_CSV_FILE_PATH \\fileserver.mydomain.com\mes-config\synonyms.csv Speichern Sie schließlich die Änderungen und starten Sie die Mindbreeze Node neu, damit die Änderungen wirksam werden. Anmerkung: Alle Änderungen in der Synonym-CSV-Datei werden sofort angewendet und werden bei der nächsten Suche miteinbezogen. 2.2 Replacement Transformer Plug-In Das ReplacementTransformer Plug-In wird oft verwendet, um unangemessene Suchbegriffe mit besseren zu ersetzen oder sogar um Suchbegriffe zu verweigern. Der Hauptunterschied zum Synonym Transformer Plug-In ist, dass die originale Suchanfrage wirklich mit einer Neuen ersetzt wird, wobei sie nicht im Bericht der Suchbegriffe angezeigt wird. Der Replacement Transformer kann deswegen verwendet werden, um Suchresultate, die von Benutzern gefunden wurden, zu verbergen und ersetzt sie mit etwas anderem (z.b. Verstecken von veralteten Seiten und Zeigen der neuen Version). Verwendung: Die zu ersetzenden Begriffe können in einer CSV-Datei definiert werden, wobei die erste Spalte den zu ersetzenden Begriff definiert. Die folgenden Spalten werden als mit OR getrennte Ersetzungswerte verwendet (wenn leer, wird der Begriff nicht gesucht). Jeder neue Suchbegriff, der ersetzt werden soll, muss in eine neue Zeile geschrieben werden, wobei die Spalten mit einem Semikolon (;) getrennt werden müssen. Beispiel für eine kleine replacement.csv Datei: auto;mercedes;bmw;audi party Beispiel 1: eine Suche nach auto sendet die transformierte Suchanfrage: mercedes OR bwm OR audi Beispiel 2: eine Suche nach party wird keine Resultate finden, da sie mit einer leeren Suche ersetzt wird. 2.2.1 Installation Installieren Sie das Plugin (entweder mit der Manager UI oder mit dem Kommandozeilenwerkzeug mesextension) mesextension --interface=plugin --type=archive --file=replacementtransformer- <version>.zip install Aktivieren Sie das Plug-In für jeden gewünschten Index mithilfe der Manager UI: o Wechseln Sie zum Reiter Indices und aktivieren Sie Advanced Settings o Scrollen Sie runter zum Abschnitt Query Transformation Services Mindbreeze Query Transformer Plug-Ins 5
o Wählen Sie das ReplacementTransformer Plug-In und klicken Sie auf Add Fügen Sie den Pfad, der zur CSV-Datei mit den Ersetzungsdefinitionen zeigt, als Custom Plugin Properties hinzu. o Fügen Sie eine neue Eigenschaft (Property) mit dem Namen REPLACEMENT_CSV_FILE_PATH hinzu o Weisen Sie einen Wert mit dem Pfad zur CSV-Datei zu (entweder als lokalen Dateipfad oder als Netzwerkpfad, der für das verwendete Betriebssystem angemessen ist) Beispiel 1: SYNONYM_CSV_FILE_PATH C:\data\synonyms.csv Beispiel 2: SYNONYM_CSV_FILE_PATH \\fileserver.mydomain.com\mes-config\synonyms.csv Speichern Sie schließlich die Änderungen und starten Sie die Mindbreeze Node neu, damit die Änderungen wirksam werden. Anmerkung: Alle Änderungen in der Ersetzungs-CSV-Datei werden sofort angewendet und werden bei der nächsten Suche miteinbezogen. 2.3 Generelle Anmerkungen zu den Transformer Plug-Ins (Replacement / Synonym) Anmerkung: Wenn Sie beide Plug-Ins (Synonym Transformer und Replacement Transformer) verwenden, wird der Replacement-Transformer zuerst angewendet! Die beiden Screenshots zeigen die Konfiguration der beiden Plug-In auf der Mindbreeze Manageroberfläche. Anmerkung: Alle Änderungen in den CSV Dateien werden sofort angewendet und werden bei der nächsten Suche miteinbezogen. 2.4 Stemmer Transformer Plug-In Das Stemmer Transformer Plug-In erlaubt Ihnen, Suchresultate zu finden, indem nach verschiedenen Wortstämmen eines Wortes gesucht wird, basierend auf sprachliche Charakteristiken der definierten Sprache. Verwendung: Der Basisalgorithmus, um passende Wortstämme zu finden, ist im ausgelieferten Plug-In implementiert. Ein zusätzliches Wörterbuch mit Vokabularen einer bestimmten Sprache ist für die geläufigsten Sprachen verfügbar und wird verwendet, um die Suchresultate zu verbessern. Des Weiteren können mit Hilfe des Stemmer Transformer auch sogenannte Transliterationen durchgeführt werden. Dabei werden mit Hilfe von Regeln Zeichen umgeschrieben. Es werden dann sowohl der originale Begriff als auch der umgeschriebene Begriff bei der Suche berücksichtigt. Mindbreeze Query Transformer Plug-Ins 6
Beispiel: eine Suche nach blatt wird Übereinstimmungen wie blatt und blätter finden 2.4.1 Installation/Konfiguration Installieren Sie das Plug-In (falls noch nicht vorhanden) Aktivieren Sie das Plug-In für jeden gewünschten Index mithilfe der Manager UI: o Wechseln Sie zum Reiter Indices und aktivieren Sie Advanced Settings o Scrollen Sie runter zum Abschnitt Query Transformation Services o Wählen Sie das StemmerTransformer Plug-In und klicken Sie auf Add Konfiguration der Eigenschaften (je nach Verwendung) Language: Die Sprache des Stemmers Path to vocabulary: Ein lokaler Pfad auf der Appliance der ein Vokabular enthält, damit auch die Erweiterung nicht nur die Reduktion auf Stämme durchgeführt werden kann. (zb Suche nach Baum soll auch Bäume finden). Stemmer enabled: Wenn angehakt wird der Stemmer verwendet. TransliterationRule: Regeln zum Umschreiben von Zeichenfolgen in den Begriffen. Es können folgende Regln verwendet weden: http://icuproject.org/apiref/icu4j/com/ibm/icu/text/rulebasedtransliterator.html Speichern Sie schließlich die Änderungen und starten Sie die Mindbreeze Node neu, damit die Änderungen wirksam werden. 2.5 Term2DocumentBoost Transformer Plug-In Das Term2DocumentBoost Plug-In ermöglicht Relevance Tuning auf Suchanfragen. Z.B. kann eine Suche nach hilfe so zugeschnitten werden, damit Dokumente mit bestimmten Schlüsselwörtern bei dieser Suche eine höhere Relevanz bekommen. Mindbreeze Query Transformer Plug-Ins 7
2.5.1 Installation Installieren Sie das Plug-In (entweder mit der Manager UI oder mit dem Kommandozeilenwerkzeug mesextension) mesextension --interface=plugin --type=archive --file=term2documentboost- <version>.zip install Aktivieren Sie das Plug-In für jeden gewünschten Index mithilfe der Manager UI: o Wechseln Sie zum Reiter Indices und aktivieren Sie Advanced Settings o Scrollen Sie runter zum Abschnitt Query Transformation Services o Wählen Sie das Term2DocumentBoost Plug-In und klicken Sie auf Add Fügen Sie den Pfad, der zur CSV-Datei mit den Boostings zeigt, als Custom Plugin Properties hinzu. o Fügen Sie eine neue Eigenschaft (Property) mit dem Namen CSV_FILE_PATH hinzu o Weisen Sie einen Wert mit dem Pfad zur CSV-Datei zu (entweder als lokalen Dateipfad oder als Netzwerkpfad, der für das verwendete Betriebssystem angemessen ist) Beispiel 1 (Windows): CSV_FILE_PATH C:\data\term2documentboost.csv \\fileserver.mydomain.com\mes- Beispiel 2 (Windows): CSV_FILE_PATH config\term2documentboost.csv Beispiel 3 (Linux): CSV_FILE_PATH /data/term2documentboost.csv Speichern Sie schließlich die Änderungen und starten Sie die Mindbreeze Node neu, damit die Änderungen wirksam werden. 2.5.2 CSV-Dateiformat Die CSV-Datei beinhaltet eine Zeile für jedes Boosting, die wiederum folgende Spalten enthält: Term: der Suchbegriff Metadata Key: der Name der Metadaten-Property, auf die das Boosting angewendet werden soll Pattern: ein Pattern, das den Wert bestimmt, der geboostet werden soll Boost: der Boost-Faktor Als Property könen hier nur DocumentInfo Metataten (also jene die entweder aggregierbar oder regexmatchable sind) verwendet werden. Eine Liste dieser Properties ist im Designer unter Filter verfügbar. Beispiel einer CSV-Datei: Term;Metadata Key;Pattern;Boost help;title;portal help intranet help;5 Wenn ein Benutzer nach help sucht, werden Dokumente, die im Titel die Begriffe portal help oder intranet help enthalten, mit dem Faktor 5 geboostet. Wenn Term leer ist, wird das Dokument ohne Rücksicht auf die Suchanfrage des Benutzers geboostet. Z.B. kann jedes Dokument in der Datenquelle Web hoch- bzw. runter-geboostet werden. Wenn mehrere Regeln gleichzeitig übereinstimmen, wird die Regel mit dem größten Boost-Faktor verwendet. Dieses Verhalten könnte sich aber in zukünftigen Versionen ändern. Anmerkung: Jede Änderung in der CSV-Datei wird sofort angewendet und wird in der nächsten Suche berücksichtig. Mindbreeze Query Transformer Plug-Ins 8
3 Zusätzliche Features 3.1 Did you mean? (Meinten Sie?) Wenn Sie keine Resultate finden oder das Wort in der Suche nur falsch geschrieben haben, bietet Mindbreeze einen alternativen Suchbegriff an (basierend auf interne Indexstatistiken und analysen), die bessere Ergebnisse finden würden. Diese Feature heißt Did you mean?. 3.2 Entity Recognition (Namenerkennung) Entity Recognition kann verwendet werden, um Metadaten vom Dokumenteninhalt oder von anderen Metadateneigenschaften des Dokuments zu extrahieren, damit diese später für effizientere Suchen verwendet werden können. Dieses Thema wird in der Dokumentation Mindbreeze Inspire im Detail beschrieben. Für Details lesen Sie bitte das Kapitel Registerkarte Indices in der Dokumentation. 3.3 CSV Transformation Um indizierte Dokumente mit zusätzlichen Metadaten für einfacheres Finden von Ergebnissen zu erweitern, erlaubt die CSV Transformation das Abbilden von klar definierten Werten auf andere Werte, die in der CSV-Datei gespeichert sind. Dieses Feature kann sehr hilfreich sein, um Ihren Index mit technischen Begriffen, Abkürzungen, Themen oder sogar kurzen Beschreibungen zu Ihren Dokumenten in speziellen Fällen zu erweitern. Beispiel: Postleitzahlverzeichnis ZIP;City;Province 4020;Linz;Oberösterreichischer Zentralraum 1020;Wien;Hauptstadt von Österreich 9861;Krems;Waldviertel 4400;Steyr;Traunviertel Die erste Zeile dieser Beispiel-CSV-Datei beinhaltet die Spaltennamen, um die Daten darauf abzubilden. Die anderen Zeilen beinhalten die Werte für jede Spalte. Wenn Sie also nach dem Begriff viertel suchen, werden Sie als Suchresultat die beiden Städte Steyr und Krems finden. Ein anderes Beispiel wäre das Abbilden von technischen Produktdaten der Artikel Ihrer Website in einer CSV-Datei. Das Abbilden dieser Daten könnte realisiert werden, indem die Produkt-IDs von den Artikeln Ihrer Website extrahiert und verwendet werden, wobei die CSV-Datei dann eine Menge an Spalten enthält, die ein Produkt beschreiben kann (Produkt-ID, Kategorie, Preis, Größe, etc.). 3.3.1 Konfiguration Alle diese Features sind Teile des Mindbreeze Basisprodukts, bei denen Sie keine zusätzlichen Plug-Ins benötigen, jedoch müssen Sie die Features folgendermaßen konfigurieren: Wechseln Sie zum Reiter Indices und aktivieren Sie Advanced Settings. Scrollen Sie runter zum Abschnitt CSV Transformationen Spezifizieren Sie den Pfad zur CSV-Datei, die die Mappings beinhaltet (entweder als Pfad im lokalen Dateisystem oder als Netzwerkpfad, der für das verwendete Betriebssystem angemessen ist. Beispiel 1: CSV File Path Beispiel 2: CSV File Path C:\data\csv-mappings.csv \\fileserver.x.y\config\csv-mappings.csv Mindbreeze Query Transformer Plug-Ins 9
Für jede Metadateneigenschaft (Property, in den Spalten), die Sie von der CSV-Datei extrahieren wollen, müssen Sie einen neue Metadatendefinition (in Add Metadata Definitions ) mit den folgenden Property-Settings hinzufügen: If Expression Matches: {{ZIP}} dies ist der Name der Spalte in der CSV-Datei, der als Schlüssel dienen soll, um Dokumente darauf abzubilden. In Property: customer_zipcode dies ist die Metadaten-Property des indizierten Dokuments, die mit dem angegebenen Wert in If Expression Matches verglichen wird (hier könnte z. B. auch mes:key oder eine andere Property verwendet werden). Name: City dies ist der Name der gewünschten neuen Property in den Metadaten. Dieser wird beim Suchen verfügbar sein und wenn im categorydescriptor gelistet, wird dieser auch in den Suchresultaten sichtbar sein. Value: {{City}} die ist der Name der gewünschten Zielspalte in der CSV-Datei (Überschrift der Spalte, die extrahiert werden soll). Mindbreeze Query Transformer Plug-Ins 10