Home
Home
Englische Version
Support
Impressum
25.2 Release ►

Start Chat with Collection

    Main Navigation

    • Vorbereitung
      • Einrichten InSpire G7 Primärsystem und Standby Appliances
      • Erstellen einer InSpire-VM auf Hyper-V
      • Initiale Inbetriebnahme für G7 Appliances
      • Konnektoren
    • Datenquellen
      • Anleitung zur Datenintegration mithilfe eines SQL Datenbank-Beispiels
      • Handbuch - Mindbreeze InSpire Insight Apps in Salesforce
      • Indizierung benutzerspezifischer Eigenschaften (SharePoint 2013 Connector)
      • Indizierung benutzerspezifischer Objekttypen (Documentum)
      • Installation & Konfiguration - Atlassian Confluence Sitemap Generator Add-On
      • Installation & Konfiguration - Caching Principal Resolution Service
      • Installation & Konfiguration - Mindbreeze InSpire Insight Apps in Microsoft SharePoint On-Prem
      • Konfiguration - Atlassian Confluence Connector
      • Konfiguration - Best Bets Connector
      • Konfiguration - Box Connector
      • Konfiguration - COYO Connector
      • Konfiguration - Data Integration Connector
      • Konfiguration - Documentum Connector
      • Konfiguration - Dropbox Connector
      • Konfiguration - Egnyte Connector
      • Konfiguration - GitHub Connector
      • Konfiguration - Google Drive Connector
      • Konfiguration - GSA Adapter Service
      • Konfiguration - HL7 Connector
      • Konfiguration - IBM Connections Connector
      • Konfiguration - IBM Lotus Connector
      • Konfiguration - Jira Connector
      • Konfiguration - JVM Launcher Service
      • Konfiguration - LDAP Connector
      • Konfiguration - Microsoft Azure Principal Resolution Service
      • Konfiguration - Microsoft Dynamics CRM Connector
      • Konfiguration - Microsoft Exchange Connector
      • Konfiguration - Microsoft File Connector (Legacy)
      • Konfiguration - Microsoft File Connector
      • Konfiguration - Microsoft Graph Connector
      • Konfiguration - Microsoft Loop Connector
      • Konfiguration - Microsoft Project Connector
      • Konfiguration - Microsoft SharePoint Connector
      • Konfiguration - Microsoft SharePoint Online Connector
      • Konfiguration - Microsoft Stream Connector
      • Konfiguration - Microsoft Teams Connector
      • Konfiguration - Salesforce Connector
      • Konfiguration - SCIM Principal Resolution Service
      • Konfiguration - SemanticWeb Connector
      • Konfiguration - ServiceNow Connector
      • Konfiguration - Web Connector
      • Konfiguration - Yammer Connector
      • Mindbreeze InSpire Insight Apps in Microsoft SharePoint Online
      • Mindbreeze Web Parts in Microsoft SharePoint
      • Whitepaper - Web Connector Erweiterte JavaScript Anwendungsfälle
    • Konfiguration
      • CAS Authentifizierung
      • Cookie Authentifizierung
      • Handbuch - AI Chat
      • Handbuch - Erstellung einer AWS 10M InSpire Applikation
      • Handbuch - Erstellung einer AWS 1M InSpire Applikation
      • Handbuch - Erstellung einer AWS 2M InSpire Applikation
      • Handbuch - Erstellung einer Google Compute Cloud Virtual Machine InSpire Applikation
      • Handbuch - Erstellung einer Oracle Cloud 10M InSpire Applikation
      • Handbuch - Erstellung einer Oracle Cloud 1M InSpire Applikation
      • Handbuch - MMC_ Services
      • Handbuch - Natural Language Question Answering (NLQA)
      • Handbuch - SSO mit Microsoft AAD oder AD FS
      • Handbuch - Text Classification Insight Services
      • I18n Item Transformation
      • JWT Authentifizierung
      • Konfiguration - Alternative Suchvorschläge und automatische Sucherweiterung
      • Konfiguration - Backend Credentials
      • Konfiguration - Benachrichtigungen
      • Konfiguration - CJK Tokenizer Plugin
      • Konfiguration - CSV Metadata Mapping Item Transformation Service
      • Konfiguration - Entity Recognition
      • Konfiguration - Export Funktionalität
      • Konfiguration - External Query Service
      • Konfiguration - Filter Plugins
      • Konfiguration - Gesammelte Ergebnisse
      • Konfiguration - GSA Late Binding Authorization
      • Konfiguration - Identity Conversion Service - Replacement Conversion
      • Konfiguration - InceptionImageFilter
      • Konfiguration - Index-Servlets
      • Konfiguration - InSpire AI Chat und Insight Services für Retrieval Augmented Generation
      • Konfiguration - Item Property Generator
      • Konfiguration - Kerberos Authentfizierung
      • Konfiguration - Management Center Menü
      • Konfiguration - Metadata Reference Builder Plugin
      • Konfiguration - Metadaten Anreicherung
      • Konfiguration - Mindbreeze InSpire
      • Konfiguration - Mindbreeze Proxy Umgebung (Remote Connector)
      • Konfiguration - Outlook Add-In
      • Konfiguration - Personalisierte Relevanz
      • Konfiguration - Plugin Installation
      • Konfiguration - Principal Validation Plugin
      • Konfiguration - Profile
      • Konfiguration - Reporting Query Log
      • Konfiguration - Reporting Query Performance Tests
      • Konfiguration - Request Header Session Authentisierung
      • Konfiguration - Verteilte Konfiguration (Windows)
      • Konfiguration - Vokabulare für Synonyme und Autovervollständigung
      • Konfiguration von Vorschaubildern
      • Mindbreeze Personalization
      • Mindbreeze Property Expression Language
      • Mindbreeze Query Expression Transformation
      • SAML Authentifizierung
      • Spracherkennung mit dem LanguageDetector Plugin
      • Trusted Peer Authentication für Mindbreeze InSpire
      • Verwendung von InSpire-Snapshots in einer CI_CD-Umgebung
    • Betrieb
      • Anpassung der InSpire Host OpenSSH Einstellungen - LoginGraceTime auf 0 setzen (Mitigation für CVE-2024-6387)
      • app.telemetry Statistiken zu Suchanfragen
      • Bereitstellen von app.telemetry Informationen mittels SNMPv3 auf G7 Appliances
      • CIS Level 2 Hardening - SELinux in den Modus Enforcing versetzen
      • Handbuch - Administration von Insight Services für Retrieval Augmented Generation
      • Handbuch - Filemanager
      • Handbuch - Indizierungs- und Suchlogs
      • Handbuch - Kommandozeilenwerkzeuge
      • Handbuch - Sichern & Wiederherstellen
      • Handbuch - Updates und Downgrades
      • Handbuch - Verteilter Betrieb (G7)
      • Index Betriebskonzepte
      • Inspire Diagnose und Ressourcen Monitoring
      • Konfiguration - app.telemetry Dashboards für Nutzungsanalyse
      • Konfiguration - Nutzungsanalyse
      • Löschung der Festplatten
      • Wiederherstellen des Lieferzustandes
    • Anwenderhandbuch
      • Browser Extension
      • Cheat Sheet
      • iOS App
      • Tastaturbedienung
    • SDK
      • api.chat.v1beta.generate Schnittstellenbeschreibung
      • api.v2.alertstrigger Schnittstellenbeschreibung
      • api.v2.export Schnittstellenbeschreibung
      • api.v2.personalization Schnittstellenbeschreibung
      • api.v2.search Schnittstellenbeschreibung
      • api.v2.suggest Schnittstellenbeschreibung
      • api.v3.admin.SnapshotService Schnittstellenbeschreibung
      • Debugging (Eclipse)
      • Einbetten des Insight App Designers
      • Entwicklung eines API V2 Search Request Response Transformer
      • Entwicklung eines Query Expression Transformer
      • Entwicklung von Insight Apps
      • Entwicklung von Item Transformation und Post Filter Plugins mit der Mindbreeze SDK
      • Java API Schnittstellenbeschreibung
      • OpenAPI Schnittstellenbeschreibung
      • SDK Übersicht
    • Release Notes
      • Release Notes 20.1 Release - Mindbreeze InSpire
      • Release Notes 20.2 Release - Mindbreeze InSpire
      • Release Notes 20.3 Release - Mindbreeze InSpire
      • Release Notes 20.4 Release - Mindbreeze InSpire
      • Release Notes 20.5 Release - Mindbreeze InSpire
      • Release Notes 21.1 Release - Mindbreeze InSpire
      • Release Notes 21.2 Release - Mindbreeze InSpire
      • Release Notes 21.3 Release - Mindbreeze InSpire
      • Release Notes 22.1 Release - Mindbreeze InSpire
      • Release Notes 22.2 Release - Mindbreeze InSpire
      • Release Notes 22.3 Release - Mindbreeze InSpire
      • Release Notes 23.1 Release - Mindbreeze InSpire
      • Release Notes 23.2 Release - Mindbreeze InSpire
      • Release Notes 23.3 Release - Mindbreeze InSpire
      • Release Notes 23.4 Release - Mindbreeze InSpire
      • Release Notes 23.5 Release - Mindbreeze InSpire
      • Release Notes 23.6 Release - Mindbreeze InSpire
      • Release Notes 23.7 Release - Mindbreeze InSpire
      • Release Notes 24.1 Release - Mindbreeze InSpire
      • Release Notes 24.2 Release - Mindbreeze InSpire
      • Release Notes 24.3 Release - Mindbreeze InSpire
      • Release Notes 24.4 Release - Mindbreeze InSpire
      • Release Notes 24.5 Release - Mindbreeze InSpire
      • Release Notes 24.6 Release - Mindbreeze InSpire
      • Release Notes 24.7 Release - Mindbreeze InSpire
      • Release Notes 24.8 Release - Mindbreeze InSpire
      • Release Notes 25.1 Release - Mindbreeze InSpire
      • Release Notes 25.2 Release - Mindbreeze InSpire
    • Sicherheit
      • Bekannte Schwachstellen
    • Produktinformation
      • Produktinformation - Mindbreeze InSpire - Standby
      • Produktinformation - Mindbreeze InSpire
    Home

    Path

    Sure, you can handle it. But should you?
    Let our experts manage the tech maintenance while you focus on your business.
    See Consulting Packages

    Mindbreeze Property Expression Language

    EinleitungPermanenter Link zu dieser Überschrift

    Die Property Expression Language kann verwendet werden, um Metadaten zu extrahieren, oder Filterwerte zu erzeugen, auf die dann bei der Suche eingeschränkt werden kann.

    SprachelementePermanenter Link zu dieser Überschrift

    Diese Sprachelemente sind während der Invertierung als auch in der Suche verfügbar.

    LiteralePermanenter Link zu dieser Überschrift

    Konstante literale Werte wie Zahlen oder Zeichenketten können angegeben werden.

    Beispiel:

    Zeichenkette (String)

    "text"

    Ganzzahl (Integer)

    3

    Boolscher Typ (boolean)

    true

    IdentifiersPermanenter Link zu dieser Überschrift

    Ein Identifier bezieht sich immer auf den aktuellen Kontext. Dieser Kontext kann ein Dokument sein, aber auch ein Item.

    Wird eine Referenz nachverfolgt, so ist dies ein Verweis auf das referenzierte Dokument.

    Beispiel:

    Reguläres Metadatum eines Dokuments

    title

    Referenz-Metadatum eines Dokuments

    referenz

    Eigenschaft innerhalb eines Items

    itemProperty

    Zu beachten ist, dass folgende Character-Class ohne Escaping gültig ist: [A-Za-z0-9_:\-]

    Folgende Zeichen in einem Identifier müssen also nicht escaped werden:

    • Großbuchstaben (A-Z)
    • Kleinbuchstaben (a-z)
    • Folgende Sonderzeichen: „_“, „:“, „-“

    Alle anderen Zeichen müssen mit einem Backslash (\) escaped werden, damit die Zeichenkette als Identifier erkannt wird. Z. B. muss property.value folgendermaßen escaped werden: property\.value

    ListenPermanenter Link zu dieser Überschrift

    Eine Liste mehrerer Ausdrücke, die alle emittiert werden.

    Beispiel:

    Ausdruck

    Emittiert wird …

    list("text1", "text2", "text3")

    "text1", "text2", "text3"

    Entfernen von DuplikatenPermanenter Link zu dieser Überschrift

    Der unique-Operator entfernt Duplikate aus seinen Parametern, wobei die Reihenfolge beibehalten wird. Es kann auf alle Ausdrücke angewendet werden die eine String-Repräsentation besitzen.

    Beispiel:

    Ausdruck

    Emittiert wird …

    unique("a", "b", "c", "b")

    "a", "b", "c"

    unique("a", "a", "a")

    "a"

    FiltersPermanenter Link zu dieser Überschrift

    Mit dem Filter-Operator kann eine zusätzliche Einschränkung definiert werden, die für selektierte Ausdrücke (z. B. Vergleiche) gelten muss (i. d. R. für Items).

    Beispiel:

    Variante 1

    title[../mes:numericdate < 1444381468000]

    Der Titel des aktuellen Dokuments wird nur dann emittiert, falls dessen Datum vor 2015-10-09T09:04:28.000Z liegt (als Millisekunden seit 1970).

    VergleichsoperatorenPermanenter Link zu dieser Überschrift

    Folgende Vergleichsoperatoren können verwendet werden:

    • entweder in Kombination mit den logischen Verknüpfungen
    • oder innerhalb eines Filters

    Beispiele in Kombination mit logischen Verknüpfungen:

    Ausdruck

    Emittiert wird …

    Gleichheit

    3 = 3 && "true" || "false"

    "true"

    Ungleichheit

    3 != 3 && "true" || "false"

    "false"

    Kleiner

    3 < 3 && "true" || "false"

    "false"

    Kleiner oder gleich

    3 <= 3 && "true" || "false"

    "true"

    Größer

    3 > 3 && "true" || "false"

    "false"

    Größer oder gleich

    3 >= 3 && "true" || "false"

    "true"

    Beispiele in Kombination mit Filter:

    Ausdruck

    Emittiert wird …

    Gleichheit

    title[3 = 3]

    Titel des aktuellen Dokuments

    Ungleichheit

    title[3 != 3]

    nichts

    Kleiner

    title[3 < 3]

    nichts

    Kleiner oder gleich

    title[3 <= 3]

    Titel des aktuellen Dokuments

    Größer

    title[3 > 3]

    nichts

    Größer oder gleich

    title[3 >= 3]

    Titel des aktuellen Dokuments

    Logische VerknüpfungenPermanenter Link zu dieser Überschrift

    Und-Verknüpfung &&Permanenter Link zu dieser Überschrift

    Bei der Und-Verknüpfung wird nur das letzte Element in der &&-Kette genau dann emittiert, falls alle Elemente davor etwas emittiert hätten und ihr Wert nicht als false interpretiert wird.

    Beispiel:

    Ausdruck

    Emittiert wird …

    Literale 1

    "text" && "text2" && "text3"

    "text3"

    Boolsche Ausdrücke

    0 && "text2"

    nichts

    1=1 && "true" || "false"

    "true"

    1!=1 && "true" || "false"

    "false"

    Oder-Verknüpfung ||Permanenter Link zu dieser Überschrift

    Bei der Oder-Verknüpfung wird das erste Element in der ||-Kette emittiert, das etwas emittiert. In kombinierten Ausdrücken, die sowohl && als auch || enthalten, hat das && Vorrang vor dem ||.

    Beispiel:

    Ausdruck

    Emittiert wird …

    Literale 1

    "text1" || "text2" || "text3"

    "text1"

    Boolsche Ausdrücke

    0 || "text2"

    "text2"

    0=0 && "true" || "text2"

    "true"

    Arithmetische VerknüpfungenPermanenter Link zu dieser Überschrift

    Folgende arithmetische Operatoren können verwendet werden:

    Ausdruck

    Emittiert wird …

    Addition

    3 + 2

    3.2 + 5

    5

    8.2

    Subtraktion

    3 – 2

    3.2 – 5

    1

    -2.2

    Multiplikation

    3 * 2

    3.2 * 5

    6

    16.0

    Division

    3 div 2

    3.2 div 5

    1

    0.64

    Modulo

    mod(3, 2)

    1

    Bei zusammengesetzten Ausdrücken ist eine Operator-Präzedenz unterstützt, sodass Multiplikation und Division eine höhere Präzedenz als Addition und Subtraktion aufweisen. Durch den Einsatz von Klammern kann die Präzedenz von Teilausdrücken geändert werden:

    Ausdruck

    Emittiert wird …

    Präzedenz

    3 + 1 * 2 – 1

    (3 + 1) * 2 – 1

    (3 + 1) * (2 – 1)

    4

    7

    4

    ZeichenkettenPermanenter Link zu dieser Überschrift

    Regex-MatchPermanenter Link zu dieser Überschrift

    Mit der Funktion regex_match kann auf jene Zeichenketten eingeschränkt werden, die einem regulären Ausdruck entsprechen.

    Parameter

    Beschreibung

    Beispiel

    Parameter 1 – Property

    (Verpflichtend)

    Name des Identifers, der überprüft werden soll.

    title

    Parameter 2 – Regex Ausdruck

    (Verpflichtend)

    Der reguläre Ausdruck, der mit dem Wert des Identifiers abgeglichen werden soll.

    ^T.*$

    Parameter 3 – Optionen

    (Optional)

    Die verfügbaren Optionen für das Regex-Muster sind zum Beispiel:

    • i : case insensitive

    i

    Beispiel:

    Ausdruck

    Emittiert wird…

    Variante 1

    regex_match(title, "^T.*$")

    Titel, die mit “T” beginnen, werden emittiert (Groß-/Kleinschreibung wird implizit beachtet).

    Variante 2

    regex_match(title, "^T.*$", "i")

    Titel, die mit “T” beginnen, werden emittiert (Groß-/Kleinschreibung wird explizit nicht beachtet).

    Konvertierungen auf Groß-/KleinschreibungPermanenter Link zu dieser Überschrift

    Mit den Funktionen to_lower und to_upper können Ausdrücke auf Groß- oder Kleinschreibung konvertiert werden.

    Beispiel:

    to_lower("UPPER")

    "upper" wird emittiert.

    to_upper("lower")

    "LOWER" wird emittiert.

    Zeichenketten zusammenhängen (concat)Permanenter Link zu dieser Überschrift

    Mit der Funktion concat können mehrere Werte von Metadaten zusammengehängt werden.

    Beispiel:

    concat("Hauptplatz", " ", "123")

    "Hauptplatz 123" wird emittiert.

    Zeichen ersetzenPermanenter Link zu dieser Überschrift

    Mit der Funktion replace können Zeichen(-ketten) ersetzt werden, dabei können auch reguläre Ausdrücke verwendet werden.

    Parameter

    Beschreibung

    Beispiel

    Parameter 1 – Eingabe String

    (Verpflichtend)

    Der Eingabe String, der verändert werden soll.

    12ab34cd56

    Parameter 2 – Such String

    (Verpflichtend)

    Der String nach dem gesucht werden soll. Hier wird ein regulärer Ausdruck verwendet.

    [a-z]

    Parameter 3 – Ersatz String

    (Verpflichtend)

    Der String mit dem der Such-String ersetzt wird.

    1

    Beispiel:

    Ausdruck

    Emittiert wird…

    Buchstaben entfernen

    replace("12ab34cd56", "[a-z]", "")

    "123456"

    replace("0123456789","[0-9]{9}$","")

    "0"

    TypumwandlungenPermanenter Link zu dieser Überschrift

    Konvertierung zu IntegerPermanenter Link zu dieser Überschrift

    Mit der Funktion int kann eine Zeichenkette oder ein Datumswert auf eine Ganzzahl konvertiert werden.

    Beispiel:

    Ausdruck

    Emittiert wird…

    Variante 1

    int("3")

    Zahl 3

    Variante 2

    int(dateproperty)

    Datumswert der Eigenschaft "dateproperty" als Millisekunden seit 1970

    Variante 3

    int(now())

    Aktueller Zeitpunkt als Millisekunden seit 1970

    Konvertierung zu FließkommazahlPermanenter Link zu dieser Überschrift

    Mit der Funktion float kann eine Zeichenkette oder ein Datumswert auf eine Fließkommazahl konvertiert werden.

    Beispiel:

    Ausdruck

    Emittiert wird…

    Variante 1

    float("3.124")

    Zahl 3.124

    Variante 2

    float(10)

    10 als Fließkommazahl

    Variante 3

    float(now())

    Aktueller Zeitpunkt als Millisekunden seit 1970

    Aufteilen von ZeichenkettenPermanenter Link zu dieser Überschrift

    Mit der Funktion split kann ein String in mehrere Werte zerlegt werden.

    Parameter

    Beschreibung

    Beispiel

    Parameter 1 – Eingabe String

    (Verpflichtend)

    Der Eingabe String, der verändert werden soll.

    • a,b und c
    • /path/to/documents

    Parameter 2  - Such String

    (Verpflichtend)

    Der String nach dem gesucht werden soll. Hier wird ein regulärer Ausdruck verwendet.

    • *(und|,) *
    • /

    Beispiel:

    Ausdruck

    Emittiert wird…

    split("a,b und c", " *(und|,) *")

    Liste: a,b,c

    Mit der Funktion split_path(<string-expr>, <pattern>) kann ein String in eine hierachische Liste von Werten zerlegt werden. Diese Liste kann unter anderem als hierachische Facette angezeigt werden.

    Beispiel:

    Ausdruck

    Emittiert wird…

    split_path(“/path/to/documents”, “/”)

    Hierachische Liste: path, to, documents

    Parsen von JSON-AudrückenPermanenter Link zu dieser Überschrift

    Mit der Funktion json_parse(<json>) kann ein JSON-Ausdruck analysiert und strukturiert dargestellt werden.

    Beispiel:

    Ausdruck

    Emittiert wird…

    json_parse("\"a\"")

    a

    json_parse("[\"a\", \"b\"]")

    Liste: a,b

    json_parse("{\"int\": 1, \"str\": \"a\"}")

    Der analysierte JSON-Ausdruck wird hierarchisch als Item dargestellt.

    Parsen von DatumswertenPermanenter Link zu dieser Überschrift

    Mit der Funktion parse_date können Zeichenketten als Datumswert interpretiert werden.

    Parameter

    Beschreibung

    Beispiel

    Parameter 1 – Datumswert als String

    (Verpflichtend)

    Der Datumswert als String der geparsed werden soll.

    Hinweis: Der Datumswert als String muss mit dem definierten Muster in Parameter 2 übereinstimmen, da sonst der Datumswert nicht geparsed wird.

    • 1970-01-01 00:00:00 UTC
    • October 2015

    Parameter 2 - Datumsmuster-Parameter

    (Verpflichtend)

    Definiert das Muster bzw. die Struktur des Datums.

    Für eine vollständige Tabelle aller Date Field Symbole, siehe Formatting Dates and Times | ICU Documentation.

    Hinweis: Der Datumsmuster-Parameter muss mit dem Muster von Parameter 1 übereinstimmen, da sonst der Datumswert nicht geparsed wird.

    • yyyy-MM-dd HH:mm:ss zzz
    • MMMM y

    Parameter 3 – Locale

    (Optional)

    Definiert die Lokalität bzw. die Sprache. Dieser Parameter ist sinnvoll anzugeben, wenn der String in Parameter 1 je nach Sprache unterschiedlich interpretiert werden könnte.

    Beispiel:

    • Oktober (de)
    • October (en)
    • Octobre (fr)

    Für Parameter-Beispiele, siehe Locales and Resources | ICU Documentation.

    en

    Beispiele:

    Ausdruck

    Emittiert wird:

    Variante 1

    parse_date("1970-01-01 00:00:00 UTC", "yyyy-MM-dd HH:mm:ss zzz")

    Entsprechender Datumswert

    Variante 2

    parse_date("October 2015", "MMMM y", "en")

    Entsprechender Datumswert

    Datumswerte formatierenPermanenter Link zu dieser Überschrift

    Die Funktion format_date kann verwendet werden, um Datumswerte in einen String umzuwandeln.

    Parameter

    Beschreibung

    Beispiel

    Parameter 1 – Datumswert

    (Verpflichtend)

    Wert als Datumsstring oder als Integer (in Millisekunden seit dem 1. Januar 1970).

    1000

    Parameter 2 - Datumsformat-String

    (Verpflichtend)

    Siehe https://unicode-org.github.io/icu/userguide/format_parse/datetime/ - datetime-format-syntax.

    • yyyy-MM-dd HH:mm:ss zzz
    • dd MMMM y HH:mm zzz

    Parameter 3 – Zeitzone

    (Optional)

    Siehe https://unicode-org.github.io/icu/userguide/format_parse/datetime/ - time-zone-display-names  und https://www.unicode.org/reports/tr35/ - Time_Zone_Identifiers.

    • UTC
    • Europe/Vienna

    Parameter 4 – lokal

    (Optional)

    Siehe https://unicode-org.github.io/icu/userguide/locale/examples.html.

    en

    Beispiel:

    Ausdruck

    Emittiert wird…

    Variante 1

    format_date(1000, "yyyy-MM-dd HH:mm:ss zzz", "UTC")

    Das Datum 1000ms nach dem 1. Januar 1970, in der Zeitzone UTC: "1970-01-01 00:00:01 UTC"

    Variante 2

    format_date(store:modificationdate, "dd MMMM y HH:mm zzz", "Europe/Vienna", "en")

    Das Datum, an dem der Eintrag im Index zuletzt geändert wurde, in der Zeitzone Wien und in englischer Sprache: z.B. "13 June 2024 09:03 GMT+2"

    Variante 3

    format_date(parse_date("13.06.24","dd.MM.yy"), "EEEE dd MMMM y", "en")

    Ändern des Formats eines als String angegebenen Datums: "Donnerstag, 13. Juni 2024"

    Variante 4

    int(format_date(store:modificationdate, "y"))

    Extrahieren von Werten, z. B. das Jahr des letzten Änderungsdatums, als Ganzzahl: z. B. 2024

    Now (aktueller Zeitpunkt)Permanenter Link zu dieser Überschrift

    Die Funktion now kann verwendet werden, um auf den aktuellen Zeitpunkt Bezug zu nehmen. Der Wert ist gegeben in Millisekunden seit 1. Jänner 1970, was bei arithmetischen Ausdrücken wichtig ist.

    Beispiel:

    Ausdruck

    Emittiert wird…

    Variante 1

    now()

    aktueller Zeitpunkt

    Variante 2

    now() - 3600000

    Zeitpunkt vor einer Stunde

    Variante 3

    mes:date[../mes:date < now()]

    Datumswerte von Dokumenten, die in der Vergangenheit liegen

    Variante 4

    now() - dateproperty > 3600000 && "true" || "false"

    "true"

    Gegeben, dass der Datumswert der Eigenschaft "dateproperty" älter als eine Stunde ist

    AnnotationenPermanenter Link zu dieser Überschrift

    Die Funktion annotation kann verwendet werden, um Werte von Annotationen zu extrahieren. Die entsprechenden Annotationen müssen aggregierbar sein.

    Beispiel:

    Ausdruck

    Emittiert wird…

    annotation(author, "mes:key")

    Der Wert der Anmerkung mes:key für die Eigenschaft mit dem Namen author wird ausgegeben. Im folgenden Eigenschaftsbeispiel wird der folgende String-Wert ausgegeben:

    "https://myorganization.com/people/id/1447"

    Property:

    property {

      name: "author"

      value {

        kind: STRING

        string_value: "John Doe"

      }

      annotation {

        name: "mes:key"

        value {

          kind: STRING

          string_value: "https://myorganization.com/people/id/1447"

        }

        flags: 24
      }
    }

    Spezifische Sprachelemente für die SuchePermanenter Link zu dieser Überschrift

    Diese Sprachelemente sind nur für die Suche verfügbar. Im Gegensatz zu allgemeinen Elementen sind diese Sprachelemente während der Inversion nicht verwendbar.

    PfadePermanenter Link zu dieser Überschrift

    Soll auf Metadaten des referenzierten Dokuments zugegriffen werden, kann der Pfad-Operator „/“ verwendet werden:

    Beispiel:

    Variante 1

    referenz/title

    Falls das aktuelle Dokument die Referenzeigenschaft referenz hat, wird der Titel des referenzierten Dokumentes emittiert

    Variante 2

    referenz1/referenz2/title

    Falls das aktuelle Dokument die Referenzeigenschaft referenz1 hat, und das referenzierte Dokument wiederum die Referenzeigenschaft referenz2 hat, das auf ein weiteres Dokument verweist, wird dessen Titel emittiert.

    Inverse ReferenzenPermanenter Link zu dieser Überschrift

    Um inversen Referenzen zu folgen, kann der rev-Operator verwendet werden. Dafür ist es notwendig in den „Reference Settings“ des Index die Referenzeigenschaft als Inverted Reference Metadata Keys zu konfigurieren. Siehe auch den Abschnitt „Reference Settings“ in Konfiguration Mindbreeze InSpire – Registerkarte Indices.

    Beispiel:

    rev(parent)/mes:key

    Es werden alle mes:key Werte der invertieren Referenz parent emittiert.

    String ReferenzenPermanenter Link zu dieser Überschrift

    Um String Referenzen zu folgen, kann der lookup Operator in Kombination mit dem Pfad-Operator „/“ verwendet werden. Dafür ist es notwendig, in den Reference Settings des Index die Referenzeigenschaft als Inverted Hash Reference Metadata Keys und Hash Reference Target Metadata Keys zu konfigurieren. Siehe auch den Abschnitt „Reference Settings“ in Konfiguration Mindbreeze InSpire – Registerkarte Indices.

    Beispiel:

    lookup(author_email)/name

    Falls das aktuelle Dokument eine author_email Eigenschaft hat, wird der Name der referenzierten Person emittiert.

    lookup(creator_email,last_edited_email)/name

    Falls das aktuelle Dokument eine creator_email oder last_edited_email Eigenschaft hat, werden die Namen der referenzierten Personen emittiert.

    Hinweis: Es müssen ein oder mehrere Parameter für den lookup Operator angegeben werden.

    Bei der Verwendung des lookup Operators sind folgende Einschränkungen zu beachten:

    • Der lookup Operator unterstützt nur String-Metadaten. Built-In Metadaten werden nicht unterstützt. Eine Liste aller Built-In Metadaten kann in Index Betriebskonzepte – Built-In Metadata Keys gefunden werden.
    • Bezüglich der Referenzen kann der lookup Operator keine Referenzen unterstützen, die indexübergreifend sind. Daher müssen sich die Referenzen innerhalb eines Index befinden.

    Außerdem wird empfohlen, die Anzahl der unterschiedlichen Werte aus Hash Reference Target Metadata Keys zu begrenzen, um Mehrdeutigkeiten zu vermeiden und eine angemessene Performance zu gewährleisten. Eine solche Begrenzung kann mittels „Precomputed Synthesized Metadata“ durchgeführt werden. Nachfolgend wird dies anhand eines Anwendungsbeispiels demonstriert:

    Anwendungsbeispiel: Den Namen des Autors eines Dokuments synthetisieren.

    Im folgenden Beispiel befinden sich Dokumente und Personen im Index. Auf den Dokumenten existiert bereits das Metadatum author_email mit der E-Mail-Adresse des Autors. Das Ziel ist es das Metadatum author_fullname für alle Dokumente zu synthetisieren, indem Referenzen zu den Personen (Autoren) hergestellt wird.

    Dokument 1 mit folgenden Metadaten: key: "doc1", datasource/category: "DataIntegration", author_email: "max.mustermann@mindbreeze.com"

    Person 1 mit folgenden Metadaten: key: "person1", datasource/category: "Microsoft Graph", fullname: "Max Mustermann", email: "max.mustermann@mindbreeze.com"

    Als Ergebnis soll das Metadatum author_fullname: "Max Mustermann" auf Dokument 1 erhalten werden. Dazu sind folgende Konfigurationsschritte in der Index-Konfiguration notwendig:

    Precomputed Synthesized Metadata

    Name

    target_email

    Property Expression

    regex_match(datasource\/category, "Microsoft Graph") && email

    Reference Settings

    Inverted Hash Reference Metadata Keys

    author_email

    Hash Reference Target Metadata Keys

    target_email

    Synthesized Metadata

    Name

    author_fullname

    Property Expression

    lookup(author_email)/fullname

    Ergebnis

    Dokument 1 mit folgenden Metadaten: key: "doc1", datasource/category: "DataIntegration", author_email: "max.mustermann@mindbreeze.com", author_fullname: "Max Mustermann"

    Person 1 mit folgenden Metadaten: key: "person1", datasource/category: "Microsoft Graph", fullname: "Max Mustermann", email: "max.mustermann@mindbreeze.com", target_email: "max.mustermann@mindbreeze.com"

    Für weitere Informationen siehe Metadaten-Anreicherung – Precomputed Synthesized Metadata.

    Inverse String ReferenzenPermanenter Link zu dieser Überschrift

    Um inversen String Referenzen zu folgen, kann der rev_lookup-Operator in Kombination mit dem Pfad-Operator „/“ verwendet werden. Dazu ist es notwendig, in den Reference Settings des Index die Refernzeigenchaft als Inverted Hash Reference Metadata Keys und Hash Reference Target Metadata Keys zu konfigurieren. Siehe auch den Abschnitt „Reference Settings“ in Konfiguration Mindbreeze InSpire – Registerkarte Indices.

    Beispiel:

    rev_lookup(email,author_email)/title

    Es werden alle title Werte der invertieren String Referenz email emittiert.

    Beispiel für einen Anwendungsfall:

    Dokumente referenzieren Personen (Dokumentmetadatum author_email referenziert Person mit Metadatum email). Die Property Expression (siehe linke Spalte) liefert die Titel aller Dokumente, die von der ausgehenden Person geschrieben wurde.

    rev_lookup(list(email,email_alias),
               c
    reator_email,
               l
    ast_edited_email)/title

    Es werden alle title Werte der invertieren String Referenzen email und email_alias emittiert.

    Beispiel für einen Anwendungsfall:

    Dokumente referenzieren Personen (Dokumentmetadatum creator_email und last_edited_email referenzieren Person mit Metadatum email und email_alias). Die Property Expression (siehe linke Spalte) liefert die Titel aller Dokumente, die von der ausgehen Person erstellt oder das letzte Mal bearbeitet wurden.

    Hinweis: Es müssen zwei oder mehr Parameter für den rev_lookup Operator angegeben werden. Der erste Parameter von rev_lookup ist das Ziel-Metadatum, auf das die Referenz zeigt. Mithilfe von list können hier mehrere Eigenschaften angegeben werden. Alle weiteren Parameter stehen für die Eigenschaften, von denen die Referenzen ausgehen.

    Transitive ClosurePermanenter Link zu dieser Überschrift

    Der dfs-Operation kann verwendet werden, um alle Items zu emittieren die mittels eines Ausdrucks mittels Tiefensuche („DFS“ = Depth First Search) beschritten werden. Zwei oder drei Argumente müssen für den dfs Operator angegeben werden:

    Beispiel:

    dfs(.,parent)/mes:key

    Emittiert alle mes:key Werte die ausgehend vom aktuellen Kontext mit dem Ausdruck parent erreicht werden können.

    dfs(.,rev(parent))/mes:key

    Emittiert alle mes:key Werte die ausgehend vom aktuellen Kontext mit dem Ausdruck rev(parent) erreicht werden können.

    dfs(.,parent,"terminal")/mes:key

    Emittiert den mes:key Wert des letzten  (terminal) Items das vom aktuellen Kontext mit dem Ausdruck parent erreichbar ist. Wenn der Graph baumförmig ist, wird der mes:key Wert der Wurzel emittiert.

    dfs(.,rev(parent),"terminal")/mes:key

    Emittiert den mes:key Wert des letzten  (terminal) Items das vom aktuellen Kontext mit dem Ausdruck rev(parent) erreichbar ist. Wenn der Graph baumförmig ist, werden alle mes:key Werte der Blätter emittiert, die vom akuellen Kontext aus erreichbar sind.

    Parent-KontextPermanenter Link zu dieser Überschrift

    Mit dem Parent-Operator .. kann auf den übergeordneten Kontext zugegriffen werden.

    Dieser Operator ist besonders im Kombination mit dem Filter-Operator nützlich, siehe Inverse Referenzen.

    Beispiel:

    Variante 1

    referenz/title/..

    Entspricht referenz .

    Variante 2

    referenz/title/../..

    Entspricht dem evaluierten Dokument selbst.

    NamePermanenter Link zu dieser Überschrift

    Mit der Funktion name  kann von einem Value-Kontext auf den Namen des Metadatums oder der Item-Eigenschaft zurückgeschlossen werden.

    Beispiel:

    Variante 1

    name(regex_match(title, "^T.*$"))

    title wird emittiert, falls der Titel des aktuellen Dokuments dem regulären Ausdruck entspricht.

    PDF herunterladen

    • Mindbreeze Property Expression Language

    Inhalt

    • Einleitung
    • Sprachelemente
    • Spezifische Sprachelemente für die Suche

    PDF herunterladen

    • Mindbreeze Property Expression Language