インジェストAPIドキュメント抽出ツールのリファレンス
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
インジェストAPIを使用して、属性抽出ロジックを渡してインデックス ドキュメントを作成する場合は、fieldパラメーターとextractorパラメーターを正確に書式設定することが重要です。これらのパラメーターはタイプstringですが、正確な抽出ルールを作成できるように、Sitecore Searchは特定の形式であることを期待しています。
このトピックでは、Swaggerリファレンスを補完して、これらの文字列を適切に書式設定する方法について説明します。
ドキュメント抽出ツールとは何か、XPathまたはJavaScriptドキュメント抽出ツールの作成方法について理解しておくことをお勧めします。
インジェストAPIを使用するため、これらのトピックに含まれる手順に従う必要はありませんが、説明されている概念とロジックを理解すると役立ちます。
fieldsパラメーター
fieldsを使用して、既存のドキュメント抽出ツールのルールをオーバーライドし、属性に固定値を割り当てます。属性名と属性値を渡す必要があります。
Passing an XPath document extractorとPassing a JavaScript document extractorに示すように、extractorパラメーター自体内で属性に固定値を指定できるため、新しい抽出器を渡すときにfields渡す必要はありません。
この形式を使用して、fieldsパラメーターを使用して属性の固定値を定義します。
たとえば、type属性とname属性に固定値を設定するには、CURL呼び出しで次の行を渡します。
エクストラクタパラメータ
extractorパラメーターを使用して、使用する抽出ロジックを渡します。
属性に対する複数のルールを持つXPathドキュメント抽出器の渡し
XPathドキュメント抽出器を定義するには、抽出器の種類(xpath)と、属性の値を抽出するために使用するルールを指定する必要があります。
この形式を使用して、extractorパラメーターを介してXPath抽出ロジックを渡します。
複数のセレクターを渡すと、Searchは渡された順序でそれらを適用します。最初のセレクターで属性値が得られない場合、Searchは2番目のセレクターを試行し、属性値を取得するか、試すセレクターがなくなるまで、以下同様です
例えば、XPathを使用してtitle、image_url、およびtype属性の抽出値を定義するには、cURL呼び出しで以下を渡すことができます。
この例では、次のロジックを使用して属性値を取得します。
-
title (最初のセレクター): property='dozen:page:id' で識別されるカスタム メタ タグから値を取得します。
-
title (2番目のセレクター):HTML <title> タグから値を取得します。
-
image_url: og:imageメタタグから値を取得します。
-
type: すべてのインデックスドキュメントに固定値のThe Coreを割り当てます。
JavaScriptドキュメント抽出器の受け渡し
JavaScriptドキュメント抽出器を定義するには、抽出器の種類 (js) と、オブジェクトの配列を返すcheerio構文JavaScript関数を指定する必要があります。
この形式を使用して、extractorパラメーターを使用して抽出ロジックJavaScript渡します。
たとえば、JavaScriptを使用してPDFファイルからtitle、description、およびtype属性の値を抽出するには、cURL呼び出しで次の値を渡します。
この例では、次のロジックを使用して属性値を取得します。
-
title: HTML <title> タグを対象とするCSSセレクターを使用します。
-
description: スペースと改行を正規化し、余分な句読点を削除し、テキストを最大7,000文字に切り捨てます。
-
type: すべてのインデックスドキュメントに固定値のPDFを割り当てます。