cancel
Showing results for 
Search instead for 
Did you mean: 

Using an RDF store as the backend for activiti engine.

manuel_b
Champ in-the-making
Champ in-the-making
Hello,
at the moment I am gathering requirements for a newsletter system which should send personalized newsletters. I have a requirement where a provider has to approve a newsletter before it is send out.

This is perfectly solvable with activiti and I already downloaded an early beta and tried the technology. Very impressive.

I am using an RDF store to store all the information that I have. I also want to store all informations from activiti in this RDF store. Especially users, groups, and task. On my side it is planned to use Empire (http://github.com/clarkparsia/Empire) for mapping normal Java Beans via JPA into rdf storage. Unfortunately activiti is using ibatis which only supports relational databases.

Are there any plans to replace ibatis with JPA or is there an easy way to replace the relational repository with a semantic one?

Here is the whole use case:

P2 Approve user interaction

Summary:
When the consultant wants to run or change an user interaction like sending a newsletter. The provider has to be informed by email and has to approve this action. The email contains 3 links:
  • approve user interaction change

  • approve user interaction change but add a comment and possible create a rule

  • decline user interaction change with a comment
Further he wants to see the expected goal results based on the last run user interaction. If this is not available the default example will be used for estimating goals.

It is possible to approve or decline a certain change or user interaction. A comment explaining this decision should be added. Afterwards the consultant will be informed by email about the decision. There can be default rules how to handle certain user interaction these rules can contain timing constraints like:
  • Always approve requests from Manuel after 24 hours

  • Always decline all other requests after 24 hours
If nothing happens the provider will get an automatic reminder about pending approvals.

The default rule is approve all user interactions.

Roles:
Provider

Precondition:
  • User is logged in

  • User has the provider role

  • User interaction is not approved yet
Postcondition:
  • User interaction is approved and ready to run
Wireframes: (attached)
P2 Approve user interaction, P2 Approve user interaction forecast

State Charts:
UserInteractionStates

Expected Usage:
10 times a week
2 REPLIES 2

falko_menge
Champ in-the-making
Champ in-the-making
There are no plans to replace MyBatis with JPA and I'd suspect the effort of switching to a semantic storage to be rather high.

If you just want to use users and groups from your RDF store, you can exchange the IdentitySession by an own implementation. See also: http://forums.activiti.org/en/viewtopic.php?t=345

manuel_b
Champ in-the-making
Champ in-the-making
Thanks Falko this already helps me to drive the direction of my project.