Procedure
- In the Studio, open the Job used in Extracting JSON data from a file using JSONPath without setting a loop node to display it in the design workspace.
-
Double-click the tFileInputJSON component to open
its Basic settings view.
- Select Xpath from the Read By drop-down list.
-
Click the [...] button next to Edit schema to open the schema editor.
Select the five columns added previously and click the x button to remove all of them.Click the [+] button to add five columns, store_name, book_title, book_category, and book_author of String type, and book_price of Double type.Click OK to close the schema editor. In the pop-up dialog box, click Yes to propagate the schema to the subsequent component.
- In the Loop XPath query field, enter the XPath query expression between double quotation marks to specify the node on which the loop is based. In this example, it is "/store/goods/book".
-
In the XPath query fields of the Mapping table, enter the XPath query expressions between
double quotation marks to specify the nodes that hold the desired data.
-
For the column store_name, enter the XPath query "../../name" relative to the name node.
-
For the columns book_title, book_category, book_author, and book_price, enter the XPath query expressions "title", "category", "author", and "price" relative to the four child nodes of the book node respectively.
-
- Press Ctrl+S to save the Job.
-
Press F6 to execute the Job.
As shown above, the store name and the book information are extracted from the source JSON data and displayed in a flat table on the console.