---
title: "トランスフォーマー"
slug: "transformers"
abstract: "トランスフォーマーを使ってドキュメントのプロパティや値にアクセスする方法。"
---
# トランスフォーマー

Sitecore Searchでは、トランスフォーマーを使ってCSV、XML、JSONなどの構造化文書をインデックスできます。 [フィードクローラー](https://doc.sitecore.com/search/ja/users/search-user-guide/index-items/configure-indexing/configure-a-feed-crawler.html "Configure a feed crawler")、[APIクローラー](https://doc.sitecore.com/search/ja/users/search-user-guide/index-items/configure-indexing/configure-an-api-crawler.html "Configure an API crawler")、[高度なウェブクローラー](https://doc.sitecore.com/search/ja/users/search-user-guide/index-items/configure-indexing/configure-an-advanced-web-crawler.html "Configure an advanced web crawler") と組み合わせて使うと、トランスフォーマーは特定のドキュメントプロパティやオブジェクトプロパティにアクセスし、その値を操作し、それをエンティティの属性の値として設定できます。

CSV、XML、JSONのデータは通常、オブジェクトのリストです。Searchでは、トランスフォーマーを使って以下のように含まれたプロパティや値にアクセスできます:

-   [ドキュメントトランスフォーマーは](https://doc.sitecore.com/search/ja/users/search-user-guide/index-items/additional-configurations-and-settings/transformers/create-document-and-attribute-transformers.html "Create document and attribute transformers") ドキュメントレベルでプロパティにアクセスできます。また、その値を操作することもできます。例えば、JavaScriptを使ってトップレベルのノードをインデックス可能なオブジェクトに変換することができます。ドキュメントトランスフォーマーはフラットリストで表示されます。
-   [Attributeトランスフォーマー](https://doc.sitecore.com/search/ja/users/search-user-guide/index-items/additional-configurations-and-settings/transformers/create-document-and-attribute-transformers.html#UUID-bcf01ac1-2bed-616f-5560-66978a328f39_section-idm1743454764193594 "Add an attribute transformer") はリスト内のすべてのオブジェクトの同じプロパティにアクセスできます。また、各オブジェクトをエンティティとしてインデックスする前に値を操作することもできます。例えば、 movies.jsonをインデックスする際、トランスフォーマーはすべての映画の release\_date プロパティをエンティティの属性に必要なフォーマットにフォーマットできます。Attributeトランスフォーマーは属性名のもとでグループとして表示されます。

> !重要ドキュメントトランスフォーマーはリストされた順に最初に動作し、その後に属性トランスフォーマーグループが続きます。ここでネストされたトランスフォーマーはリストされた順序で動作します。

以下の例は、ドキュメントおよび属性トランスフォーマーのユースケースを説明しています。

## トランスは不要です

CSVのオブジェクトや行をインデックス項目としてインデックスするクローラーの場合、以下の場合にトランスフォーマーは不要です。

-   カラム名またはフィールド名はエンティティの属性に一致します。
-   列の値は属性を埋めるために必要な形式で設定されています。

## HTMLページに掲載されている商品をインデックス化するために変換してください

HTMLページに掲載されている商品をインデックス化するために変換するには:

1.  *JavaScript*ドキュメントトランスフォーマーを作成しましょう。
2.  JSのソーステキスト領域で、製品をJSON配列のオブジェクトとして抽出するJSコードを追加します。
3.  必要に応じて属性トランスを追加して商品をインデックス化します。

## フォーマットタイトル

*タイトル*属性の値をCSVの*タイトル*列から*Snake*形式で設定するには:

-   属性 *タイトル*については、*Change case* to *Snake*に列変換を作成します。
    
    トランスはCSVに *タイトル* 列があると仮定しています。
    

## 列と属性は同じ名前ではありません

CSVの*在庫列のユニット*から*利用可能な在庫*属性の値を設定するには:

-   *利用可能な在庫*属性については、*在庫列のユニット*を*Copy from*する属性変換を作成します。

## 限定在庫のために旗を設定

CSVの在庫列の*ユニット*を使って*限定在庫*属性の値を設定するには:

1.  属性*限定在庫*については、*在庫欄のユニット*を属性変換*Copy from*作成します。
2.  限定*株式*属性については、*限定在庫*列の値が100*Less Than*時、*True/False*を*True*に設定して属性変換を作成します。