Skip to content

bmel:switch

Category: Logic & Control Flow · Returns: bmel:any

bmel:switch(subject: bmel:any, case: bmel:any, result: bmel:expression, [otherwise: bmel:expression])

Description

Evaluates bmel:subject against one or more case/result pairs (left to right) and returns the result of the first matching case. If no case matches, returns bmel:otherwise or null if omitted.

Arguments

Parameter Type Required Description
subject bmel:any The expression or field value to match against each case.
case bmel:any A candidate value to compare against bmel:subject. Repeat case/result pairs for additional branches.
result bmel:expression Expression returned when bmel:subject equals the immediately preceding bmel:case value.
otherwise bmel:expression Fallback expression returned when no case matches. Returns null if omitted.

Example

bmel:switch({order:Response Payload}.$.status, "SUCCESS", 1, "FAILURE", 0, -1)

Back to BMEL Reference