- From: Costello, Roger L. <costello@mitre.org>
- Date: Wed, 22 Apr 2009 15:52:38 -0400
- To: "'xproc-dev@w3.org'" <xproc-dev@w3.org>
Hi Folks,
Many thanks for your excellent comments!
Okay, comparing XProc and BPEL is an apples-to-oranges comparison.
I think that sometimes it's useful to hold up next to each other two unrelated things to see where they differ and where they overlap. So, I persist. :-)
I've incorporated the changes you suggested. Aside from the apples-to-oranges problem, are there any factual errors in the information?
/Roger
XProc (XML Pipeline Language)[1] is a general utility for defining XML pipelines. BPEL (Business Process Execution Language)[2] is a declarative orchestration language for business processes. At some level both languages are workflow languages, and with that in mind, here is a side-by-side comparison.
------------------------------------------------
XProc BPEL
------------------------------------------------
W3C technology OASIS technology
XML-based XML-based
general utility, goal business process level, goal
is to provide an 80% is to provide a 100%
solution solution
supports orchestration of only supports orchestration
both REST and SOAP-based of SOAP-based web services
web services
XProc processors: BPEL processors:
Calabash[3] Oracle BPEL Process Manager[4]
Apache ODE (Orchestration
Director Engine)[5]
Sonic Software[6]
kinds of flows supported: kinds of flows supported:
- sequential - sequential
- conditional - conditional
- iterative - iterative
- parallel - parallel
can orchestrate both can only orchestrate (SOAP-based)
web services and web services
applications (e.g.
XML Schema validators,
XSLT processors)
Does not support Supports event-driven workflows,
event-driven workflows e.g. a process may specify that
a workflow task is to be executed
when a certain message is received,
or when a certain time is reached
synchronous workflows only synchronous and asynchronous workflows
Single-run workflows, Supports long-running workflows
i.e. no infinitely (days, months, years), i.e. supports
looping workflows infinitely looping workflows
does not support workflows does not support workflows
that have humans in the that have humans in the
loop, i.e. automated loop, i.e. automated
workflows only workflows only
[1] XProc: http://www.w3.org/TR/2008/WD-xproc-20080814/
[2] BPEL: http://docs.oasis-open.org/wsbpel/2.0/OS/wsbpel-v2.0-OS.pdf
[3] Calabash: http://xmlcalabash.com/
[4] Oracle BPEL PM: http://www.oracle.com/technology/products/ias/bpel/index.html
[5] Apache ODE: http://ode.apache.org/
[6] Sonic Software: http://www.sonicsoftware.com/products/sonic-bpel-server/index.ssp
Received on Wednesday, 22 April 2009 19:53:14 UTC