XML パースツール
ツールごとに学習
XML パースには、「ツールごとに学習」が用意されています。 サンプルワークフロー を参照して、このサンプルを含むさまざまなサンプルを Alteryx Designer で直接利用する方法をご確認ください。
XML パースを使用して、Extensible Markup Language (XML) を個々のフィールドに解析します。Alteryx が XML を読み込んで解析する方法の詳細については、 XML の読み込み を参照してください。
重要
XML に
w:document
のような名前空間が含まれている場合、その名前空間は出力で取り除かれ、
w:document
が返されます。
ツールの設定
解析する XML データを含むフィールド を選択します。入力に含まれる文字列フィールドから選択します。
[ 出力に含める ] (既定で選択済み) を使用して、ワークフローの実行時に解析済みフィールドを下流のツールに渡すかどうかを決定します。
[ 解析する XML 要素 ] を選択します。オプションには以下が含まれます。
ルート 要素。
子要素を自動判別 : 入力データ内の要素の子要素を解析します。解析する XML の要素を指定しない場合の検出方法です。1 つの親ノードの下で最も多く検出された要素が、解析対象となります。
子要素名を指定 : 解析する子要素の名前を入力します。XML 要素は大文字と小文字を区別します。
以下の追加オプションを選択します。
子要素の値を返す : オンにすると、最初の子要素値のセットが返されます。子要素の値を除外する場合はオフにします。
外部 XML を返す : :オンにすると、外部 XML タグが返されます。これで、解析された各フィールドの追加フィールドが、接尾辞
_OuterXML
で作成されます。このタグはデータテーブルの値の周りに含まれます。XML エラーを無視して続ける : XML によるエラーをすべて無視して、解析を続行します。
「子要素を自動判別」の機能
1 つの親ノードの下で最も多く検出された要素が、解析対象となります。要素が複数回発生しない場合、既定では単純にルートの最初の子要素が選択されます。
例
以下のコード例では、
record
要素が、1 つの親ノードの下で 3 回発生しているため、自動で検出されます。root
要素とfirstchild
要素は、それぞれ 1 回発生しています。field1
、field2
、field3
の要素は、それぞれ 3 回発生してますが、1 つの親ノードの下では発生していません (親の record ノードごとに 1 回ずつ発生しています)。
<root> <firstchild> <record><field1/><field2/><field3/></record> <record><field1/><field2/><field3/></record> <record><field1/><field2/><field3/></record> </firstchild> </root>
重要
「 子要素を自動判別 」の検出対象は、入力のすべての行ではなく、入力の最初の行だけです。XML パースツールの出力の [メッセージ] タブに、既定として自動検出された要素を示すメッセージが表示されます。