David, I haven't fully thought this through yet, but I think the idea of nodetypes to define workflows and workflowsteps would be a good start as a way to define workflow templates. That definition would define the state transition information between workflowsteps. However, it may be necessary to separately model an instance of a workflow template for a specific target, and a mixin that simply points from nodes to workflowsteps as a many to one relationship might not be sufficient for all applications.
The scenario I have in mind would require each node to (potentially) be in a different state for multiple releases. Thus a node might be approved for publication in Release 1, but still require approval for Release 2. It's also possible that multiple workflows could apply to a single node (e.g. standard release workflow vs. emergency release workflow). Thus the mixin type may need to define a collection of workflowstepinstances that apply to the node, where each workflowstepinstance would define the state of the node with respect to a specific target. Does that make any sense or is it too complex for a generic case? Any comments? Cheers, Miro -----Original Message----- From: David Nuescheler [mailto:[EMAIL PROTECTED] Sent: 04 June 2005 17:01 To: [email protected] Subject: Re: Workflow hi miro, > In the spirit of using JSR-170 as a component service in a larger CMS > application, has anyone had any experience with open source workflow > engines that could be integrated into a JSR-170 based application? I've > googled a bit and found quite a few out there, but I wondered if anyone > in this community had any experiences (good or bad) they could share? I > wouldn't for a minute suggest that workflow should be built into JSR-170 > itself, but friendly co-existence could be very useful. i completely agree, and i think quite a while ago we already started a discussion about that on this list. my personal take on this matter would be: a) have a couple of nodetypes that define the nodes needed to describe a workflow, like a workflow, a workflowstep, ... with anything needed to express parallel workflows, nested workflows etc... b) have a mixin "workflowable" to point (using references) to the the individual workflow steps, to refect which step a particular node is in plus a set of historical information. i think this would allow to put any node into a workflow. and with respect to making applications interoperable, i think the best thing would be to just publish this set of nodetypes somewhere (for example in jackrabbit ;)) together with the respective wrapper java classes to manipulate things... thoughts? regards, david _________________________________________________________________________________________________________________________ Internet communications are not secure and therefore Oyster Partners Ltd does not accept legal responsibility for the contents of this message. Any views or opinions presented are solely those of the author and do not necessarily represent those of Oyster Partners Ltd.
