データコレクション内のデータへのアクセス

XPath 式の中で、プロセスの list 変数と map 変数は、他のタイプの変数を参照するときと同様に名前で参照されます。ただし、list 変数と map 変数の特定のデータ項目にアクセスするには、設定またはアクセスの対象となる list 変数内または map 変数内のデータ項目も指定する必要があります。

list 変数

list 変数全体を参照するには、対象の list 変数の名前を使用します。例えば、original_list という名前の list 変数から copy_list という名前の list 変数にすべてのデータをコピーするとき、original_list を参照するときに使用する XPath 式は /process_data/original_list となります。

list 変数内のデータ項目を指定するには、その項目のインデックス位置を使います。例えば、あるプロセスが、ドキュメントデータを listofdocs という名前の list 変数に格納するとします。Set Value サービスの execute 操作を使用すると、このリストの 1 つ目のドキュメントを取得して、firstdoc という名前の document 変数に保存することができます。リストの 1 つ目のドキュメントを返す XPath 式は /process_data/listofdocs[1] です。

注意: list 変数のインデックスは 1 ベースです。つまり、リストの 1 つ目の項目のインデックスは 1 です。
注意: サービス操作の結果を list 変数に格納した場合、返されたデータ項目は、そのリストの既存の項目の後に追加されます。リスト内の項目を置き換えるには、1 つ目の項目のインデックスを指定します(例:/process_data/listVar[1])。

map 変数

map 変数全体を参照するには、対象の map 変数の名前を使用します。例えば、original_map という名前の map 変数から copy_map という名前の map 変数にすべてのデータをコピーするとき、original_map を参照するときに使用する XPath 式は /process_data/original_map となります。

map 変数内のデータ項目を指定するには、キーと値のペアのキーを指定する必要があります。例えば、あるプロセスが、名前および電子メールアドレスを varmapofemails という名前の map 変数に格納するとします。名前はキーとして使用され、電子メールアドレスは、そのキーに対応する値です。Set Value サービスの execute 操作を使用すると、Tony の電子メールアドレスを取得して、tonyemail という名前の string 変数に格納することができます。tony というキーに対応する map 変数内の値を返す XPath 式は /process_data/mapofemails[@id='tony'] です。

注意: list 変数とは異なり、データ項目が map 変数に格納される順序は、map 変数を使用するごとに異なる場合があります。map 変数内のデータ項目を参照するとき、データ項目の順序は一切保証されません。