[Zope3-dev] Re: WORKFLOW: Notes on WFMC and XPDL
Lennart Regebro
regebro at nuxeo.com
Wed Dec 1 11:12:32 EST 2004
I've now taken a look at XPDL, Jims texts, and YAWL.
First, YAWL vs XPDL.
I have to commend YAWL for an excellent and pedagogical website, which
had the initial result that I understood YAWL perfectly, but the more I
read about XPDL the less informed I got. If this reflects poorly on
XPDL, the XPDL doumentation or my intellect, I am unable to say.
I really like YAWL. However, it seems to me after further digging, that:
The YAWL language, being completely symbolic, lacks a standard digital
format for it (maybe I missed it), and the only editor there is the
reference one, ment to be used with the reference engine, which I don't
know if it is even possible to use in Zope3. That means that in worst
case, we have to reimplement the engine, and the editor, and in best
case, we have tied ourself to one editor.
On the other hand, XPDL misses some of YAWLs features, especially the
deferred choice (can an XOR split be used instead?), but also
cancellation activities and OR joins and splits. I don't know if the
YAWL concept of a token can be applied on XPDL either, and it seems to
be to be a darn good concept. Also, it feels like XPDL is a model that
is hard to understand. The XPDL split into activities, applications and
partcicipants is not at all obvious.
On the third hand, some of the YAWL features would be easy to extend
XPDL with (like the OR joins and splits), other might take more work,
but it seems to me that extending XPDL so that it can support YAWL
workflows would be a good thing, and a reasonable future path for XPDL.
If this is possible then the choice does not have to be made. ;)
Of course, with Zope3s fantastic pluggability the choice doesn't have to
be made anyway. I can see no reason why one couldn't make a YAWL
implementation too. But of course, this is a question of what should be
default. So although YAWL seems to be a much better concept, it doesn't
seem quite useful yet, since it lacks a standardized file format,
third-party editors and a finished Python engine. ;)
When it comes to ZCML implementation, I also prefer Jims first option.
Overriding one participant or application without overriding the whole
definition seems to me as a very unusual case.
After that, with the "humhum_relevant_data" stuff you lost me. I didn't
get it. Maybe tomorrow. ;-)
--
Lennart Regebro, Nuxeo http://www.nuxeo.com/
CPS Content Management http://www.cps-project.org/
More information about the Zope3-dev
mailing list