Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Archived » M2M (model-to-model transformation) » [ATL] BPMN to BPEL simple rules transformation problem
[ATL] BPMN to BPEL simple rules transformation problem [message #512339] Thu, 04 February 2010 12:31 Go to next message
François B. is currently offline François B.
Messages: 5
Registered: February 2010
Junior Member
Hello everybody,

I'm working on some issues I'm meeting trying to make transformation rules from BPMN to BPEL.

Here are 3 very simple rules:

rule GenerationProcess {
from
pool:BPMN!Pool
to
sequence:BPEL!Sequence1 (
name <- pool.name,
activities <- pool.vertices
)
}

rule GenerationInvoke {
from
activity:BPMN!Activity (
activity.activityType = #Task
)
to
invoke:BPEL!Invoke (
name <- activity.name
)
}

rule GenerationSubProcess {
from
subprocess:BPMN!SubProcess
to
sequence:BPEL!Sequence1 (
name <- subprocess.name,
activities <- subprocess.vertices
)
}

The problem is that I get this error when executed:

org.eclipse.m2m.atl.engine.emfvm.VMException: Trying to register several rules as default for element org.eclipse.emf.ecore.impl.DynamicEObjectImpl@dc8b55 (eClass: org.eclipse.emf.ecore.impl.EClassImpl@16fb175 (name: SubProcess) (instanceClassName: null) (abstract: false, interface: false)) : GenerationInvoke and GenerationSubProcess

I took a look on the BPMN metamodel and I saw that the propriety "Instance Type Name" of the Subprocess is empty, do you think that this is the problem? Do I need to modify the metamodel? or maybe some other solutions exists...

Thank you very much.

François
Re: [ATL] BPMN to BPEL simple rules transformation problem [message #512342 is a reply to message #512339] Thu, 04 February 2010 12:43 Go to previous messageGo to next message
Sylvain EVEILLARD is currently offline Sylvain EVEILLARD
Messages: 522
Registered: July 2009
Senior Member
I don't know which meta-model you're using but this looks like an inheritance problem.

try :

from
activity:BPMN!Activity (
activity.activityType = #Task and activity.oclIsTypeOf(BPMN!Activity)
)

and

from
subprocess:BPMN!SubProcess (subprocess.oclIsTypeOf(BPMN!SubProcess))
Re: [ATL] BPMN to BPEL simple rules transformation problem [message #512345 is a reply to message #512339] Thu, 04 February 2010 12:50 Go to previous messageGo to next message
François B. is currently offline François B.
Messages: 5
Registered: February 2010
Junior Member
It works, thank you very much. I am trying to resolve this problem for hours now. May you explain to me my mistake? So I will not do it again.
Especially the code you added to mine : .oclIsTypeOf()

Thank you very much again...
Re: [ATL] BPMN to BPEL simple rules transformation problem [message #512347 is a reply to message #512339] Thu, 04 February 2010 12:54 Go to previous messageGo to next message
François B. is currently offline François B.
Messages: 5
Registered: February 2010
Junior Member
I think that I will meet the same problems for other rules that I wrote:

rule GenerationReceive {
from
activity:BPMN!Activity (
activity.activityType=#EventIntermediateTimer
)
to
wait:BPEL!Wait (
name <- 'waitId:' + activity.iD
)
}

rule GenerationReceive {
from
activity:BPMN!Activity (
activity.activityType=#EventIntermediateMessage
)
to
receive:BPEL!Receive (
name <- 'receiveId:' + activity.iD
)
}

rule GenerationGateway {
from activity:BPMN!Activity (
activity.activityType=#GatewayDataBasedExclusive
)
to
receive:BPEL!If (
name <- 'gatewayExcl' + activity.iD
)
}

I will work on it.
Re: [ATL] BPMN to BPEL simple rules transformation problem [message #512455 is a reply to message #512339] Fri, 05 February 2010 03:47 Go to previous messageGo to next message
Sylvain EVEILLARD is currently offline Sylvain EVEILLARD
Messages: 522
Registered: July 2009
Senior Member
If a class B inherits from a class A, then if you have an ATL rule on class A, every instance of B will also match this rule.

If you don't want this behavior, then you can specify in the filter if the rule on class A should match only instances of A by indicating .oclIsTypeOf(MM!A)
Re: [ATL] BPMN to BPEL simple rules transformation problem [message #689373 is a reply to message #512339] Mon, 27 June 2011 10:24 Go to previous messageGo to next message
Deepak  is currently offline Deepak
Messages: 2
Registered: June 2011
Location: India
Junior Member
Please tell me which metamodels you have used for these transformations

Regards
Deepak
Re: [ATL] BPMN to BPEL simple rules transformation problem [message #689753 is a reply to message #689373] Tue, 28 June 2011 05:41 Go to previous message
Deepak  is currently offline Deepak
Messages: 2
Registered: June 2011
Location: India
Junior Member
Hi Sylvain,

Would you please tell me what metamodels to use for transformation of bpmn to bpel using ATL. It would also be helpful if you provide one sample transformation.

Thanks,

Deepak
Previous Topic:[ATL]Inter Model References
Next Topic:[QVTO] Black-box problem with XML
Goto Forum:
  


Current Time: Sun Aug 31 00:37:23 EDT 2014

Powered by FUDForum. Page generated in 0.02085 seconds