This conversion takes a Webmodeler file and converts it to WS-BPEL* 2.0 files with a WSDL file if required.
* "OASIS", "WS-BPEL" and "Web Services Business Process Execution Language" are trademarks of OASIS, the open standards consortium where the WS-BPEL specification is owned and developed. Copyright © 1993-2010 OASIS ®. All Rights Reserved.
- Each page having content is considered to represent one process with the following exceptions:
- If a page contains more than one pool with content, then one process by pool is considered.
- If matching link event can be found between pages and if those link events are in no pool or in a pool with the same name, then they are considered to be the same process and their parent pool are considered to be the same pool.
- Current conversion to WS-BPEL supports only the basic mapping as described in section 14.1 of BPMN 2.0 specification available at http://www.omg.org/spec/BPMN/2.0/.
- Every construct that does not have a direct mapping is placed in a Flow and its sequence flows are represented by Links.
- One WS-BPEL file is created by BPMN process
- If there’s pertinent information in the Webmodeler file, one WSDL file is also created to present implementation details of the whole file.
- Process must have one entry point (a start event, an event based gateway or one activity with no incoming sequence flows). If this is not the case, conversion will create an empty activity as an entry point related to every element having no incoming sequence flows.
- When an activity has more than one outgoing sequence flows, mapping is done as if the activity was followed by either an inclusive gateway (if there is condition on the outgoing sequence flows) or a parallel gateway (if there is no condition)
- When a gateway has many incoming and many outgoing sequence flows, mapping is done as if there was one merging gateway and one diverging gateway of the same type.
- Every event and task having no WS-BPEL mapping is transformed into a WS-BPEL Empty activity.
- Artifacts, data stores, process data input and data outputs are ignored
(They do not have a defined mapping)