[ATL] Multiple output models with the same metamodel, possible? [message #104968] |
Wed, 13 May 2009 05:55  |
Eclipse User |
|
|
|
Hi,
I have a transformation that must produce a central model (.aaxl) + other
models that have inter-model references with the central one. I have this
module declaration:
module MarteToAAXL;
create
OUT : AAXL,
InstanceSpec_Xilinx_multiproc : INSTANCE1 ,
instanceTest : INSTANCE2
from
IN : UML2,
OUT_VERIF : VERIF,
IN_AAXL_Properties : AAXL_PROPERTIES;
--
And i have two rules, one for each INSTANCE output model:
-- Instance rule for InstanceSpec_Xilinx_multiproc
rule InstanceSpec_Xilinx_multiproc {
from
x : UML2!InstanceSpecification
(
x.name = 'InstanceSpec_Xilinx_multiproc'
)
to
y : INSTANCE1!SystemInstance (
name <- x.name.debug('instanceName')
)
} -- End of Instance rule for InstanceSpec_Xilinx_multiproc
-- Instance rule for instanceTest
rule instanceTest {
from
x : UML2!InstanceSpecification
(
x.name = 'instanceTest'
)
to
y : INSTANCE2!SystemInstance (
name <- x.name.debug('instanceName')
)
} -- End of Instance rule for instanceTest
---------------
The problem is that only the second INSTANCE Model is produced with an
incorrect name. The first INSTANCE model is not produced at all. And i get
this error message:
No Resource found, unable to extract to path:
platform:/resource/fr.ubs.labsticc.marte2aaxl/models/Destina tionModel/instance1.aaxl
org.eclipse.m2m.atl.core.ATLCoreException: No Resource found, unable to
extract to path:
platform:/resource/fr.ubs.labsticc.marte2aaxl/models/Destina tionModel/instance1.aaxl
at org.eclipse.m2m.atl.core.emf.EMFExtractor.extract(EMFExtract or.java:63)
at org.eclipse.m2m.atl.core.emf.EMFExtractor.extract(EMFExtract or.java:77)
at
org.eclipse.m2m.atl.core.service.LauncherService.launch(Laun cherService.java:140)
at
org.eclipse.m2m.atl.core.ui.launch.AtlLaunchConfigurationDel egate.launch(AtlLaunchConfigurationDelegate.java:196)
at
org.eclipse.debug.internal.core.LaunchConfiguration.launch(L aunchConfiguration.java:764)
at
org.eclipse.debug.internal.core.LaunchConfiguration.launch(L aunchConfiguration.java:614)
at
org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(D ebugUIPlugin.java:865)
at
org.eclipse.debug.internal.ui.DebugUIPlugin$8.run(DebugUIPlu gin.java:1068)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
----
Looks like the virtual machine couldn't create the output file.
Is ATL supposed to support multiple output files? Especially when some of
them have the same metamodel?
I gave different names to the metamodel INSTANCE so that to specify which
model is the real target in my rules.
Can anybody help with this issue?
thanks
|
|
|
Re: [ATL] [Resolved] Multiple output models with the same metamodel, possible? [message #104972 is a reply to message #104968] |
Wed, 13 May 2009 11:58  |
Eclipse User |
|
|
|
my problem is now resolved and the origin of the error was not on ATL, but
a constraint had to be respected with the output instance metamodel of
AAXL (AADL). This constraint is that a SystemInstance must have the same
name as the file in which it is added.
Another constraint that must be respected is the module declaration in
ATL, the instance model name must also be the same as the name of the
file, my transformation only works when this is respected, but i did not
understand where this last constraint comes from.
Skander.
|
|
|
Powered by
FUDForum. Page generated in 0.22474 seconds