メイン コンテンツをスキップする 補完的コンテンツへスキップ

JSONスキーマを使ってJSONファイルを検証

tJSONValidatorコンポーネントを使ってJSONカラムを検証できます。

このシナリオはTalend Data IntegrationTalend Data Management PlatformTalend Big Data PlatformTalend Real-Time Big Data PlatformTalend MDM PlatformTalend Data Services PlatformTalend MDM PlatformTalend Data Fabricにのみ適用されます。

情報メモ注: tJSONValidatorコンポーネントは、Talendが提供するR2024-11以降のTalend Studioマンスリーアップデートをインストール済みである場合のみ利用できます。詳細は管理者にお問い合わせください。

このタスクについて

JSONファイルを使用すれば、ファイルからのデータをすべて検証できます。スキーマに対して1つのレコードが検証されなかった場合、すべてのレコードが無効と見なされます。

レコードを別々に検証し、有効なレコードと無効なレコードを専用の出力コンポーネントに送信したい場合は、未加工の入力データを使用します。詳細は、未加工の入力データを使ってJSONスキーマを検証をご覧ください。

このシナリオのジョブでは、以下のコンポーネントを使用しています:
  • JSONファイルを入力として使用するためのtFileInputRawコンポーネント。
  • JSONカラムを検証するためのtJSONValidatorコンポーネント。
  • 結果を出力するためのtLogRowコンポーネント。
tFileInputRawコンポーネント、tJSONValidatorコンポーネント、2つのtLogRowコンポーネントを使用したジョブ。

ジョブを設定

手順

  1. [Palette] (パレット)から、tFileInputRawtJSONValidator、2つのtLogRowをデザインワークスペースにドロップします。
  2. [Main] (メイン)リンクを使って、tFileInputRawtJSONValidatorに接続させます。
  3. [FLOW] (フロー)リンクを使って、tJSONValidatorを1つのtLogRowに接続させます。
  4. [Reject] (リジェクト)リンクを使って、tJSONValidatorをもう1つのtLogRowに接続させます。

入力コンポーネントを設定

手順

  1. [Component] (コンポーネント)タブで、tFileInputRawをダブルクリックして[Basic settings] (基本設定)ビューを開きます。
  2. [Edit Schema] (スキーマを編集)をクリックします。
  3. 開くダイアログボックスで[+]ボタンをクリックし、初期入力データを保持するカラムを追加します。
    この例では、contentというカラムを1つ追加し、[Type] (タイプ)として[Object] (オブジェクト)を選択します。
  4. OKをクリックしてダイアログボックスを閉じます。
  5. [Read the file as a string] (文字列として読み取る)を選択します。
  6. ドロップダウンリストから、エンコーディング形式を選択します。この例では、ISO-8859-15です。

tJSONValidatorコンポーネントを設定

手順

  1. tJSONValidatorをダブルクリックし、その[Basic settings] (基本設定)ビューを表示させて、コンポーネントのプロパティを定義します。
  2. 必要な場合は、[Sync columns] (カラムを同期)タブをクリックし、入力コンポーネントで定義されているスキーマを取得します。
  3. [Add] (追加)をクリックし、[Allocate] (割り当て)エリアに行を追加します。
  4. ドロップダウンリストから入力カラムを選択します。
  5. スキーマファイルへのパスを二重引用符で囲んで入力し、データを検証するスキーマを定義します。
    この例では、"inputSchema.json"です。
    tJSONValidatorの設定
    情報メモ注: スキーマで$schemaダイアレクトが定義されていない場合は、[Advanced settings] (詳細設定)[JSON schema draft version] (JSONスキーマドラフトバージョン)を定義します。

出力コンポーネントの設定とジョブの実行

手順

  1. tLogRowコンポーネントをダブルクリックして、[Basic settings] (基本設定)ビューを表示させます。
  2. どちらのコンポーネントにも[Table (print values in cells of a table)] (テーブル(テーブルのセルの出力値))を選択します。
  3. F6を押すと、ジョブを保存して実行します。

タスクの結果

レコードがtLogRowコンポーネントの1つに送信されます:
  • レコードがすべて有効であれば、[FLOW] (フロー)リンク経由で送信されます。
  • 無効なレコードが1つでもあれば、レコードはすべて[Reject] (リジェクト)リンク経由で送信されます。

このページは役に立ちましたか?

このページまたはコンテンツにタイポ、ステップの省略、技術的エラーなどの問題が見つかった場合はお知らせください。