The BPEL process receives, manipulates, and sends data through XML variables. For example, the process receives a purchase order message from a buyer and puts the message in an input XML variable, and from there it can be copied to another operation.
Variables are defined in one of the following ways:
WSDL message types
XML schema types
XML schema elements
Variables allow processes to maintain state data, (such as time outs) and process history based on messages exchanged.