Read from XML ステージでは、XML ファイルがジョブまたはサブフローに読み込まれます。ここでは、ファイルのパスとデータ フォーマット (XML スキーマとデータ要素の詳細など) が定義されます。
単純 XML 要素はフラット フィールドに変換され、次のステージに渡されます。単純 XML データは、データのみを含み、子要素を含まない XML 要素からなるレコードで構成されます。例えば、以下は単純 XML データ ファイルです。
<customers> <customer> <name>Sam</name> <gender>M</gender> <age>43</age> <country>United States</country> </customer> <customer> <name>Jeff</name> <gender>M</gender> <age>32</age> <country>Canada</country> </customer> <customer> <name>Mary</name> <gender>F</gender> <age>61</age> <country>Australia</country> </customer> </customers>
この例では、各レコードに <name>
、<gender>
、<age>
、<country>
などの単純な XML 要素が含まれています。子要素を含んでいる要素はありません。
大部分のステージではフラット形式のデータが必要とされるので、Read from XML ステージはこのような単純データを自動的にフラット化します。階層構造を保持する場合は、Read from XML ステージの後で Aggregator ステージを使用して、データを階層データに変換します。
複合 XML 要素は階層形式のままで、リスト フィールドとして渡されます多くのステージはフラット形式のデータを必要とするので、下流のステージでデータを使えるようにするために、複合 XML 要素のフラット化が必要になることがあります。詳細については、複合 XML 要素のフラット化を参照してください。
xs:anyType
および xs:anySimpleType
をサポートしていません。[ファイル プロパティ] タブ
オプション名 |
説明 |
||
---|---|---|---|
スキーマ ファイル |
XSD スキーマ ファイルへのパスを指定します。省略記号ボタン (...) をクリックし、目的のファイルを見つけます。データ ファイルがスキーマに照らして検証されるようにするためには、スキーマ ファイルをサーバ上に置いておかなければなりません。スキーマ ファイルがサーバ上に存在しないと検証が無効になります。 別のやり方として、XSD ファイルの代わりに XML ファイルを指定してもかまいません。XML ファイルを指定した場合は、その XML ファイルの構造に基づいてスキーマが推定されます。XSD ファイルの代わりに XML ファイルを使用する場合は、次の制限があります。
注: なお、Spectrum Technology Platform サーバを実行しているプラットフォームが Linux の場合、このプラットフォームではファイル名およびパスの大文字と小文字が区別されることに注意してください。
|
||
データ ファイル |
XML データ ファイルへのパスを指定します。省略記号ボタン (...) をクリックし、目的のファイルを見つけます。 注: なお、Spectrum Technology Platform サーバを実行しているプラットフォームが Linux の場合、このプラットフォームではファイル名およびパスの大文字と小文字が区別されることに注意してください。
|
||
プレビュー |
スキーマまたは XML ファイルのプレビューを表示します。XSD ファイルを指定すると、選択した XSD がツリー構造に反映されます。スキーマ ファイルとデータ ファイルの両方を指定したら、太字のスキーマ要素をクリックして、その要素に含まれるデータのプレビューを見ることができます。 |
[フィールド] タブ
オプション名 |
説明 |
---|---|
フィルタ |
参照のしやすさを考慮して要素や属性の一覧をフィルタリングします。フィルタを設定しても、どのフィールドが出力されるかには影響しません。あくまでも参照のために要素や属性の一覧をフィルタリングするだけです。 |
XPath |
XPath 列には要素または属性の XPath 式が表示されます。これは専ら情報表示のためのものです。XPath の詳細については、こちらのページを参照してください。 |
フィールド |
データフローで要素または属性のために使われる名前。フィールド名を変更するには、ダブルクリックして新しいフィールド名を入力します。 |
タイプ |
フィールドで使用するデータ タイプ。詳細については、「フィールド データ型」を参照してください。 |
含める |
このフィールドをデータフローで使えるようにするか除外するかを指定します。 |
変更 |
このボタンをクリックして、フィールド名を変更します。数値または日付データ タイプを含むフィールドの場合、このボタンを使用して、数値および日付/時間形式を変更することもできます。 |
例: 簡単な XML ファイル
この例では、次のファイルをデータフローに読み込みます。
<addresses> <address> <addressline1>One Global View</addressline1> <city>Troy</city> <state>NY</state> <postalcode>12128</postalcode> </address> <address> <addressline1>1825B Kramer Lane</addressline1> <city>Austin</city> <state>TX</state> <postalcode>78758</postalcode> </address> </addresses>
この例で、<addressline1>
、<city>
、<state>
、および <postalcode>
を含めたとします。その場合は、<address>
要素ごとに 1 つのレコードが生成されます。<address>
が <addressline1>
、<city>
、<state>
、および <postalcode>
の共通の親要素だからです。