11.8.12 XPathを指定する
(1) 代入アクティビティサブダイアログでの指定
[代入アクティビティ]サブダイアログの[コピー元]の[値]に指定するXPathは,定義済みの変数がメッセージ型の場合とメッセージ型以外の場合で異なります。
(a) メッセージ型の変数の場合
[値]には拡張関数を指定します。指定できる拡張関数は,「11.8.12(3) 拡張関数」の(i)または(ii)の拡張関数です。
- (i)の拡張関数を指定する場合
- 拡張関数の引数には,次のように指定します。
- variableName:変数名を指定します。
- propertyName:variableNameで指定した変数内で定義されている,messageType型以外の部分名を指定します。
- 指定例
- bpws:getVariableProperty('VariableX','PropertyY')
- (ii)の拡張関数を指定する場合
- 拡張関数の引数には,次のように指定します。
- variableName:変数名を指定します。
- locationPath:[変数の表示]ダイアログの[選択パス]で取得したパスを指定します。
- 指定例
- csc:getVariableData('VariableX','input/forInvoke/depositData/id')
(b) メッセージ型以外の変数の場合
[値]には拡張関数を指定します。指定できる拡張関数は,「11.8.12(3) 拡張関数」の(ii)の拡張関数です。
拡張関数の引数には,変数名だけを指定します。
- 指定例
- csc:getVariableData('VariableX')
(2) 条件設定ダイアログでの指定
[条件設定]ダイアログの[条件式]に指定するXPathは,定義済みの変数がメッセージ型の場合とメッセージ型以外の場合で異なります。
(a) メッセージ型の変数の場合
[条件式]には拡張関数を指定します。指定できる拡張関数は,「11.8.12(3) 拡張関数」の(i)または(ii)の拡張関数です。
- (i)の拡張関数を指定する場合
- 拡張関数の引数には,次のように指定します。
- variableName:変数名を指定します。
- propertyName:variableNameで指定した変数内で定義されている,messageType型以外の部分名を指定します。
- 指定例
- bpws:getVariableProperty('VariableX','PropertyY') = "HITACHI"
- (ii)の拡張関数を指定する場合
- 拡張関数の引数には,次のように指定します。
- variableName:変数名を指定します。
- locationPath:[変数の表示]ダイアログの[選択パス]で取得したパスを指定します。
- 指定例
- csc:getVariableData('VariableX','input/forInvoke/depositData/userName/firstName') = "Taro"
(b) メッセージ型以外の変数の場合
[条件式]には拡張関数を指定します。指定できる拡張関数は,「11.8.12(3) 拡張関数」の((ii)の拡張関数です。
拡張関数の引数には,変数名だけを指定します。
- 指定例
- csc:getVariableData('VariableX') = false()
- 注 VariableXがboolean型の場合です。
(3) 拡張関数
拡張関数には,次に示す(i)および(ii)の二つの拡張関数があります。拡張関数の形式,引数,および拡張関数を使用する場合の注意事項を説明します。
- (i) bpws:getVariableProperty
- 形式
- bpws:getVariableProperty('variableName','propertyName')
- 引数
- variableName
- 変数名を指定します。
- propertyName
- variableNameで指定した変数内で定義されている,messageType型以外の部分名を指定します。
-
- (ii) csc:getVariableData
- 形式
- csc:getVariableData('variableName','locationPath')
- 引数
- variableName
- 変数名を指定します。
- locationPath
- XMLスキーマのノードを示すパスを指定します。
-
- 注意事項
- 変数がメッセージ型以外の場合,引数にはvariableNameだけを指定してください。
- 変数がメッセージ型以外の場合,関数は変数の型に応じたデータ型を返します。
- variableNameで指定した変数のデータに対して,locationPathで指定したパスを評価した結果は,文字列型(java.lang.Stringへマッピング)で返します。
- locationPathに「'」を含む場合,locationPathを「"」で囲んでください。