XLANG-s to BPEL4WS Type Conversions
The following tables detail the conversions between various XLANG/s constructs and BPEL4WS constructs.
Caution
XPath 1.1 does not support numbers in exponential or double formats. Literal values in these formats in XLANG/s orchestrations are exported to BPEL4WS using the %f format, and a loss of precision might result.
Literals (if the literal is part of an expression)
XLANG/s | BPEL4WS |
---|---|
String, character | XPath string |
Integer, real | XPath number |
Boolean "true", "false" | XPath true(), false() functions |
Literals (standalone assignment)
XLANG/s | BPEL4WS |
---|---|
Literal constant | XSD equivalent |
Variables
XLANG/s | BPEL4WS |
---|---|
Variable reference | bpws:getContainerData(%varName%, part, %locationPath%) |
Message reference (.NET type) | bpws:getContainerData(%msgName%, part, %locationPath%) |
Message-part reference | bpws:getContainerData(%msgName%, %locationPath%) |
Distinguished-field reference | bpws:getContainerData(%msgName%, %partName%, %locationPath%) |
Message data-property reference | bpws:getContainerProperty(%msgName%, %propertyQName%) |
Operators
XLANG/s | BPEL4WS |
---|---|
Unary + | Ignored |
Unary - | XPath unary - |
Unary ! | XPath not() function |
Binary &&, || | XPath 'and', 'or' operators |
Binary ==, !=, <=, <, >=, > | XPath '=', '! =', '<=', '<', '>=', '>' operators |
Binary +, -, *, % with both integral operands | XPath '+', '-', '*', 'mod' operators |
XLANG/s constructs that are disallowed in BPEL4WS
Message context-property reference
Service-property reference
Port-property reference
Service link-property reference
Unary – with non-integral type
Unary ~
Cast operator
Binary / with integral operands
Binary +, -, *, %, / with non-integral operands
Binary <=, <, >=, > with non-string operands
Bitwise operators &, ^, |
Shift operators <<, >>
Checked expression
Intrinsic expression
Pre- and post- increment and decrement ++, --
Object invocation (with our without out and/or ref params)
'new' operator