list のインデックスおよび map のキーとしての XPath 式の使用

プロセスの list 変数や map 変数を XPath 式で参照する際は、リストの index 値またはマップの key 値に対して他のプロセス変数を使用することができます。

例えば、 listvar という名前の list 変数に一連の顧客名が格納されているとします。 listvar に含まれている目的のデータ項目のインデックスが、 intvar という名前の integer 変数に格納されています。次の XPath 式を使用すると、 listvar から目的のデータ項目を取得することができます。

/process_data/listvar[number(/process_data/@intvar)]
注意: number 関数が使用されているので、 /process_data/@intvar ノード内のデータは必ず数値として解釈されます(「 number 」を参照)。リストのインデックスとして string 値が使用された場合でも、この式からは、リスト内の 1 つ目の項目が返されます。

mapvar という名前の map 変数には、顧客の住所が格納され、そのキーとして顧客名が使用されています。目的の住所に対応する顧客名は、 stringvar という名前の string 変数に格納されています。 stringvar に格納された顧客名をキーとして、 mapvar から住所を取得する XPath 式は次のとおりです。

/process_data/mapvar[@id='/process_data/@stringvar']