手順
- Studioで、ループノードを設定せずにJSONPathを使用してファイルからJSONデータを抽出するで使用されているジョブを開いてデザインワークスペースに表示します。
-
tFileInputJSONコンポーネントをダブルクリックして、[Basic settings] (基本設定)ビューを開きます。
- [Read By] (読み取り)ドロップダウンリストから[Xpath]を選択します。
-
[Edit schema] (スキーマを編集)の横の[...]ボタンをクリックし、スキーマエディターを開きます。
以前に追加した5列を選択し、[x]ボタンをクリックしてすべて削除します。[+]ボタンをクリックすると、String型のstore_name、book_title、book_category、book_authorの5つのカラムとDouble型のbook_priceが追加されます。[OK]をクリックして、スキーマエディターを閉じます。ポップアップダイアログボックスで、[Yes]をクリックしてスキーマを後続のコンポーネントに反映します。
- [Loop XPath query] (ループXPathクエリー)フィールドに、二重引用符で囲んだXPathクエリー式を入力して、ループの基になるノードを指定します。このサンプルでは、"/store/goods/book"です。
-
[Mapping] (マッピング)テーブルの[XPath query] (XPathクエリー)フィールドに、二重引用符で囲んだXPathクエリー式を入力して、目的のデータを保持するノードを指定します。
-
store_nameカラムには、[name] (名前)ノードに関連するXPathクエリー "../../name"を入力します。
-
book_title、book_category、book_author、book_priceの各列には、[book] (ブック)ノードの4つの子ノードを基準にしたXPathクエリー式"title"、"category"、"author"および"price"をそれぞれ入力します。
-
- Ctrl+Sを押し、ジョブを保存します。
-
[F6]を押してジョブを実行します。
前述のように、ストア名とブック情報はソースJSONデータから抽出され、コンソールのフラットテーブルに表示されます。