It is definitely possible to orchestrate all of these services with BPM. All you need to do is map the result of each invocation into a process variable inside your BPMN 2 process. For creating the response, you can: (1) add some logic to create the reply in an onExit in the final SY service task in your workflow, or (2) add a final task to the workflow which creates the response.
You will have to experiment a bit with the content model for your invocations to determine the best way to pass around the "XML lists". You might want to transform them to Java objects or you can always just leave them as XML.
Your best bet is to take an existing quickstart like bpm-service and modify it a bit to implement some of the behavior needed in your target application. That will give you a feel for how mapping between the process and service invocation works.