このセクションでは XML Transformer ツールの構成および適用の方法について説明します。このツールは XML を変換するために XSLT のような機能を提供します。
このセクションの内容:


XML Transformer ツールの構成

以下のオプションを設定できます:


XPath のパラメータライズ

XPath が レスポンダー スイートの 変数、環境変数、およびデータ ソース値を参照するようにパラメータライズできます。  変数を参照するための構文は、${myVariableName} です。 XML Data Bank の値と XML Data Source の値を参照する構文は ${myColumnName} です。${myColumnName}. 

たとえば、データ ソース列名が ${XPath Key} の場合、次の構文を使用できます。

/*[local-name(.)="bookstore" and namespace-uri(.)=""]/*[local-name(.)="book" and

namespace-uri(.)=""][child::node()[local-name(.)="title" and text()="${XPath Key}"]]

空要素を処理して XML レスポンスの完全性を維持

デフォルトでは空要素は抽出されません。  したがって、書き込み可能なデータ ソースで使用する XML レスポンスの完全性に影響をあたえる可能性があります。たとえば、

<e>5</e>
<e/>
<e>6</e>
は、次のような書き込み可能データ ソースを作成します。


ROW 1 = 5
ROW 2 = 6
空要素を含む、すべての抽出されるノードが欲しい場合は、次の操作を行います。
  1. [空要素の抽出方法] をオンにします。
  2. (任意) すべての空の抽出された要素に追加するプレースホルダー値が欲しい場合、任意のプレースホルダー文字列を隣のテキスト フィールドに指定します。


     
  3. 抽出対象を指定する XPath を選択し、 [修正] をクリックします。
  4. 抽出オプションが [内容のみ] であることを確認します。
  5. 関連する XPath の最後にある /text() を削除します。たとえば、現在の XPath が以下の場合、 

    /*[local-name(.)="Envelope" and namespace-uri(.)="http://schemas.xmlsoap.org/soap/envelope/"]/.../*[local-name(.)="i" and namespace-uri(.)=""][1]/text()

    次のように修正します。

    /*[local-name(.)="Envelope" and namespace-uri(.)="http://schemas.xmlsoap.org/soap/envelope/"]/.../*[local-name(.)="i" and namespace-uri(.)=""][1]




  6. 必要に応じて追加の XPath にステップ 3-5 を繰り返します。