# tWriteXMLField

入力XMLファイルを読み取り、構造を抽出してそれを出力XMLファイルの定義済みフィールドに挿入します。

## tWriteXMLFieldの標準プロパティ

これらのプロパティは、標準ジョブのフレームワークで実行されているtWriteXMLFieldを設定するために使われます。

標準のtWriteXMLFieldコンポーネントは、XMLファミリーに属しています。

このフレームワーク内のコンポーネントは、すべてのTalend製品で利用できます。

## 基本設定

| [Properties] (プロパティ) | 説明 |
| --- | --- |
| Output Column | XMLストラクチャーを書き込む出力コンポーネントのデスティネーションフィールドを選択します。 |
| Configure XML Tree (XMLツリーの設定) | フィールドに書き込むXMLストラクチャーの作成をサポートするインターフェイスを開きます。インターフェイスの詳細は、[XMLツリーの定義](https://help.qlik.com/talend/ja-JP/components/8.0/xml-connectors/defining-xml-tree)をご覧ください。 |
| [Schema] (スキーマ)と[Edit Schema] (スキーマを編集) | <ul> <li> <p>スキーマとは行の説明で、処理された後に次のコンポーネントに渡されるフィールドの数を定義するものです。スキーマは組み込まれるか、リポジトリーにリモートで保存されます。 </p> <p>スキーマを変更するには<span>[Edit schema] (スキーマを編集)</span>をクリックします。現在のスキーマが<span>リポジトリー</span>タイプの場合は、3つのオプションを利用できます。</p> <ul> <li> <p> <span>[View schema] (スキーマを表示)</span>: スキーマのみを表示する場合は、このオプションを選択します。</p> </li> <li> <p> <span>[Change to built-in property] (組み込みのプロパティに変更)</span>: ローカルで変更を行うためにスキーマを<span>組み込み</span>に変更する場合は、このオプションを選択します。</p> </li> <li> <p> <span>[Update repository connection] (リポジトリー接続をアップデート)</span>: リポジトリーに保存されているスキーマに変更を加え、変更後にそのコンテンツをすべてのジョブにプロパゲートするかどうかを決める場合は、このオプションを選択します。</p> <p>変更を現在のジョブにのみ反映する場合は、変更後、<span>[No] (いいえ)</span>を選択し、<span>[Repository Content] (リポジトリーコンテンツ)</span>ウィンドウで再びこのスキーマのメタデータを選択します。</p> </li> </ul> </li> <li> <p> <span>[Built-In] (組み込み)</span>: このコンポーネントに対してのみスキーマを作成し、ローカルに保管します。<span>[Basic settings] (基本設定)</span>タブにあるコンポーネントスキーマの詳細は、<a href="https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/basic-settings-tab" target="_blank">[Basic settings] (基本設定)</a>をご覧ください。</p> </li> <li> <p> <span>[Repository] (リポジトリー)</span>: スキーマを既に作成し、リポジトリーに保管していると、さまざまなプロジェクトやジョブフローチャートで再利用できます。<span>[Basic settings] (基本設定)</span>タブにあるコンポーネントスキーマの詳細は、<a href="https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/basic-settings-tab" target="_blank">[Basic settings] (基本設定)</a>をご覧ください。</p> </li> </ul> |
| [Sync columns] (カラムを同期) | クリックすると、出力ファイルのスキーマと入力ファイルのスキーマが同期されます。同期機能は、[Row] (行)接続が入力コンポーネントにリンクされている場合にのみ表示されます。 |
| [Group by] (グループ基準) | 集計セット、データの再グルーピングに使用するカラムを定義します。 |

## 詳細設定

| [Properties] (プロパティ) | 説明 |
| --- | --- |
| XML宣言を削除 | XMLヘッダーを含めたくない場合は、このチェックボックスをオンにしてください。 |
| Create empty element if needed (必要に応じて空のエレメントを作成) | このチェックボックスは、デフォルトで選択されています。XMLツリーエディタの[Related Column] (関連カラム)にNULL値がある場合、または列がXMLノードに関連付けられていない場合、このオプションは予想される場所に開閉タグを作成します。 |
| [Ignore service attributes for empty elements] (空のエレメントのサービス属性を無視する) | このオプションを選択すると、入力ノードがnullであるにもかかわらずサービス属性(@type、@class、@arrayなど)を持つ場合に、コンポーネントがXMLノードを生成することを防止できます。<br><br>このオプションは、[Create empty element if needed] (必要に応じて空のエレメントを作成)オプションが選択されていない場合に利用可能です。 |
| 必要に応じて空のエレメントを展開する(dom4jの場合) | このオプションを選択すると、nullエレメントをタグペアの形式で表示できます。例: &lt;element&gt; &lt;/element&gt; そうでない場合は、そのようなエレメントはソロタグとして表示されます。例: &lt;element/&gt;。XMLタグの詳細は、http://www.tizag.com/xmlTutorial/xmltag.phpをご覧ください。<br><br>情報メモ注: このオプションを使う場合、生成モードDom4Jを選択する必要があります。[Create empty element if needed] (必要に応じて空のエレメント作成)が選択されている場合に使用可能です。 |
| Create associated XSD file (関連するXSDファイルの作成) | XMLエレメントの1つがNamespaceエレメントとして定義されている場合、このオプションにより対応するXSDファイルが作成されます。<br><br>情報メモ注: このオプションを使う場合、生成モードDom4Jを選択する必要があります。 |
| [Advanced separator (for number)] (高度な区切り文字:数値) | 数字にデフォルトで使用される区切りを変更する場合は、このチェックボックスをオンにします。<br><br>数千の区切り文字: 括弧の間に千単位で使用する区切りを入力します。<br><br>小数点の区切り文字: 小数点の間に使用する区切り文字を括弧で囲んで入力します。 |
| Generation mode (生成モード) | 利用可能なメモリに応じて、適切な生成モードを選択します。利用可能モードは以下のとおりです:<br><br><ul> <li> <span>Slow and memory-consuming (Dom4j) (低速およびメモリ消費多)</span> <div><span>情報メモ</span><span>注:</span> このオプションでは、dom4jを使用して、複雑なXMLファイルを処理できます。 </div> </li> <li> <span>[Fast with low memory consumption] (高速およびメモリ消費少)</span> </li> </ul> |
| [Encoding] (エンコーディング) | 一覧からエンコードの種類を選択するか、[Custom] (カスタム)を選択して手動で定義します。データベースを扱う場合は、このフィールドは必須です。 |
| [tStatCatcher Statistics] (tStatCatcher統計) | このチェックボックスをオンにすると、ジョブレベルやコンポーネントレベルでジョブ処理メタデータが収集されます。 |

## [Global Variables] (グローバル変数)

| 変数 | 説明 |
| --- | --- |
| グローバル変数 | ERROR\_MESSAGE: エラーが発生した時にコンポーネントによって生成されるエラーメッセージ。これはAfter変数で、文字列を返します。この変数はコンポーネントにこのチェックボックスが存在し、[Die on error] (エラー発生時に強制終了)がオフになっている場合のみ機能します。<br><br>NB\_LINE: 入力コンポーネントによって読み取られた行の数、または出力コンポーネントに転送された行の数。これはAfter変数で、整数を返します。<br><br>Flow変数はコンポーネントの実行中に機能し、After変数はコンポーネントの実行後に機能します。<br><br>フィールドまたは式に変数を入力する場合は、Ctrl + スペースを押して変数リストにアクセスし、使用する変数を選択します。<br><br>変数の詳細は、[コンテキストと変数を使用](https://help.qlik.com/talend/r/ja-JP/8.0/studio-user-guide/contexts-and-variables)をご覧ください。 |

## 使用方法

| 使用方法のガイダンス | 説明 |
| --- | --- |
| **使用ルール** | このコンポーネントは、データフローの中間ステップとして使用できます。 |

**関連概念**

* [XMLファイルの構造を抽出してデータベーステーブルのフィールドに挿入する](https://help.qlik.com/talend/ja-JP/components/8.0/xml/twritexmlfield-tfileinputxml-tmysqloutput-tmysqloutput-extracting-structure-of-xml-file-and-inserting-it-into-fields-of-database-table-standard-component "この3つのコンポーネントからなるシナリオでは、XMLファイルを読み取り、XML構造を抽出して、最後にその構造をデータベーステーブルのフィールドに出力します。")