Benutzerdefinierte Inhaltsverarbeitung mit der Content Enrichment-Webdienstlegende

Informationen Sie zu den Content inhaltsanreicherung in SharePoint, die Entwickler zum Erstellen eines externen Webdiensts um verwaltete Eigenschaften für durchforsteten Elemente während der inhaltsverarbeitung ändern können.

Suche in SharePoint ermöglicht Benutzern, die verwalteten Eigenschaften der durchforsteten Elemente zu ändern, bevor sie durch Aufrufen von an einen Webdienst externe inhaltserweiterung indiziert sind. Die Möglichkeit zum Ändern von verwalteter Eigenschaften für Elemente während der inhaltsverarbeitung ist hilfreich, beim Ausführen von Aufgaben wie DatenBereinigung, entitätsextraktion, Klassifizierung und Kategorien.

Inhaltserweiterung innerhalb der Inhaltsverarbeitung

Abbildung 1: Inhaltserweiterung innerhalb der Inhaltsverarbeitung

Abbildung 1 zeigt einen Teil des Prozesses, der in der inhaltsverarbeitungskomponente stattfindet. Der inhaltserweiterung-Webdienst ist eine SOAP-basierten Dienst, den Sie erstellen können, um eine Legende aus dem Web-Service-Client innerhalb der inhaltsverarbeitungskomponente empfangen. Basierend auf Abbildung 1 verweist der Webdienstclient auf den Inhaltsanreicherungsoperator innerhalb der Inhaltsverarbeitungskomponente. Der Webdienst verweist auf den SOAP-Webdienst, den Sie implementieren. Der Webdienst empfängt eine konfigurierbare Nutzlast von der Inhaltsverarbeitungskomponente. Klicken Sie dann, wird die resultierende Antwort vom Webdienst mit durchforsteten Elements zusammengeführt, bevor es dem Suchindex hinzugefügt wird.Der Dienst WebClient arbeitet mit verwalteten Eigenschaften, die Sie als Eingabeeigenschaften oder als Ausgabeeigenschaften konfigurieren können. Eingabeeigenschaften werden an den Webdienst gesendet. Ausgabeeigenschaften werden durch den Webdienst zurückgegeben. Bestimmte verwalteten Eigenschaften werden ausgeblendet oder sind schreibgeschützt und können nicht an den Webdienst gesendet oder empfangen aus dem Webdienst werden. Informationen zum Überprüfen, welche verwalteten Eigenschaften schreibgeschützt sind, finden Sie unter Auflisten aller schreibgeschützten verwalteten Eigenschaften für den Webdienst für die Inhaltsanreicherung .

Wichtig

Der Aufrufschritt zur Inhaltsanreicherung kann nur mit einem einzelnen Webdienstendpunkt konfiguriert werden. Jegliche Art von Fehlertoleranz oder Routingfunktionen zur Unterstützung mehrerer Implementierungen müssen vom Entwickler bei der Implementierung des Webdiensts behandelt werden. Darüber hinaus kann der Entwickler über verschiedene Webdienstimplementierungen verfügen, die auf unterschiedlichen Endpunkten gehostet werden. Es kann jedoch immer nur einer dieser Endpunkte in der Konfiguration verwendet werden.

Vertrag für den Inhaltserweiterungs-Webdienst

Web-Service-Client ist ein SOAP (Version 1.1) RPC-Client mit einer vordefinierten Verhalten. Servicevertrag Web weist folgende Merkmale auf:

  • Die inhaltsverarbeitungskomponente sendet einen SOAP-RPC-Aufruf an einen konfigurierbaren Endpunkt über HTTP.
  • Nutzlast enthält ein Array von Property-Objekten.
  • Der Webdienst führt eine benutzerdefinierte Logik für das Array von Property-Objekte und gibt ein Array von geänderten oder neuen Property-Objekten.
  • Der Webdienst muss eine Antwort an den Dienst WebClient einer angegebenen Timeout senden.
  • Keine bestimmten Authentifizierung oder Verschlüsselung Mechanismen werden im Rahmen des Vertrags unterstützt. Sie können jedoch eigene Sicherheit des Transport-Mechanismus anwenden.

Konfigurieren des Inhaltserweiterung Web Service-Clients

Um die Webdienstclients zu konfigurieren, verwenden Sie die folgenden Windows PowerShell-Cmdlets:

Tabelle 1 enthält die Eigenschaften, die Sie über die weiter oben erwähnten Windows PowerShell-Cmdlets konfigurieren können.

Tabelle 1. Eigenschaften, die mit Windows PowerShell Cmdlets für den Client konfigurierbar sind

Configuration-Eigenschaft Beschreibung Standardwert
Endpunkt Gibt die URL des externen Webdiensts. Leer
InputProperties Die verwalteten Eigenschaften, die der externen Webdienst empfängt. Leer
OutputProperties Die verwalteten Eigenschaften, die vom externen Webdienst zurückgegeben. Leer
Timeout Die Zeitdauer, bis die Web Servicezeiten in Millisekunden. Je nach FailureMode das Element kann nicht verarbeitet werden, oder eine Warnung ausgegeben wird in den ULS-Protokolldateien geschrieben. 5000 Millisekunden; Gültige Bereich [100, 30000].
SendRawData Aktiviert oder deaktiviert unformatierte Daten an den Webdienst senden. Falsch.
MaxRawDataSize Die maximale Größe des unformatierte Daten an den Webdienst in Kilobyte (KB) gesendet. Wenn die binären Daten eines Elements diesen Grenzwert überschreitet, wird das Element nicht gesendet. Dies verhindert nicht die InputProperties gesendet werden, und die OutputProperties empfangen wird. 5120 KB.
FailureMode Steuert das Verhalten des Web Service-Clients treten Fehler auf. Wenn FailureMode auf ERRORfestgelegt ist, Senden von Problemen, die während der Verarbeitung inhaltserweiterung auftreten einen fehlerhaften Rückruf für den betreffenden Artikel. Wenn FailureMode auf WARNINGfestgelegt ist, das Element wird ohne Modifikationen vom Webdienst indiziert und eine Warnung ausgegeben wird in den ULS-Protokolldateien geschrieben. Fehler
DebugMode Ein Modus, die bei Festlegung auf true ermöglicht den Client die inhaltserweiterung alle verwaltete Eigenschaften an den Client gesendet, ohne alle Eigenschaften in den Rückgabetypen erwartet. Alle konfigurierten Trigger -Eigenschaft, die InputProperties -Eigenschaft und die OutputProperties -Eigenschaft werden ignoriert. Falsch.
Trigger Ein Boolean -Prädikat, das für alle durchforsteten Elemente ausgeführt wird. Wenn das Prädikat true ergibt, wird der Datensatz an den Webdienst gesendet. Andernfalls wird das Element über dem Suchindex übergeben. Leer

Gewusst wie: Auflisten aller schreibgeschützte verwaltete Eigenschaften für den Webdienst Inhaltserweiterung

Bestimmte verwalteten Eigenschaften sind schreibgeschützt und können nicht aus dem Webdienst ausgegeben werden. Diese Eigenschaften können mithilfe der Cmdlets Get-SPEnterpriseSearchServiceApplication und Get-SPEnterpriseSearchMetadataManagedProperty Windows PowerShell aufgelistet werden, wie im folgenden Beispiel gezeigt:

$ssa = Get-SPEnterpriseSearchServiceApplication
Get-SPEnterpriseSearchMetadataManagedProperty -SearchApplication $ssa  | ?{$_.IsReadOnly -or $_.MappingDisallowed -or $_.DeleteDisallowed}

Informationen zu Trigger Bedingungen für die Konfiguration des Webdienst-callout

Eine Triggerbedingung ist ein Ausdruck, der zum Konfigurieren der Webdienst-Legende verwendet wird. Wenn eine Triggerbedingung als true ausgewertet wird, führt der Webdienstclient eine Legende für diesen Datensatz aus. Wenn eine Triggerbedingung als false ausgewertet wird, führt der Webdienstclient keine Legende aus und übergibt das durchforstete Element an den Suchindex. Alternativ, wenn keine Triggerbedingung konfiguriert ist; alle Elemente werden an den Webdienst gesendet.

Trigger verwendet eine Ausdruckssprache verweisen auf die Werte der verwalteten Eigenschaften. Sie können Operatoren und Funktionen in der Ausdruckssprache verwenden, einfache oder komplexe Trigger Conditions erstellen, damit Sie ermitteln können, wenn ein Webdienst-Callout ausführen.

Tabelle 2 enthält Beispiele für Trigger Bedingungen.

Tabelle 2. Triggerbedingungsbeispiele für die Konfiguration des Webdiensts "Inhaltsanreicherung"

Ausdruck Beschreibung Anforderungen
MP1 > 2 Gibt true zurück, wenn der Wert der verwalteten Eigenschaft namens MP1 größer als 2 ist. MP1 muss es sich um einen numerischen Typ verfügen.
IsNull(MP2) Gibt die true zurück, wenn die verwaltete Eigenschaft namens MP2 nicht für die durchforsteten Element vorhanden ist, oder leere/Null ist. MP2 kann eines beliebigen Typs sein.
StartsWith(MP1, "sample") und MP2! = 18 Gibt true zurück, wenn der Wert in der verwalteten Eigenschaft MP1 mit "Sample beginnt" und des Werts der verwalteten Eigenschaft MP2 nicht 18. MP1 muss vom Typ string und MP2 muss einen numerischen Typ.
IsDay (MP1, 2009, 12, 24) Überprüft, ob die verwaltete Eigenschaft MP1 eine DateTime enthält, die auf 24 Dezember 2009 fällt. MP1 muss vom Typ DateTimesein.

Unter Triggerausdruckssyntax in SharePoint finden Sie die Elemente, die in einem Triggerausdruck verwendet werden können, und eine Liste der unterstützten Funktionen.

Implementieren den externen Webdienst Inhaltserweiterung

Führen Sie für eine einfache Implementierung folgende Schritte aus:

  1. Enthalten Sie die Microsoft.Office.Server.Search.ContentProcessingEnrichment.dll befindet sich im C:\\Program Files\\Microsoft Office Servers\\15.0\\Search\\Applications\\External in Ihrem Projekt als Referenz.
  2. Implementieren Sie IContentProcessingEnrichmentService als Webdienst.

Siehe auch