[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.modeling.m2m] Re: [ATL] dealing with XMLInjector / XMLExtractor with ATL 3.0

Hello,

Answers below:

Guillaume a écrit :
Hi,

I found the new version very easy to use with the new version thanks to the specific "Injector/Extractor" to perform model loading and saving. I use ATL programmatically to include it as part on an IDE developped with Eclipse.
But I have two questions :
why using this terms, Injector/Extractor, as Injector are yet defined for XML injection but they are two different elements since they do not inherit of the same classes ?

Historically, the ATL RegularVM was defining a specific inject/extract api, strongly based on RegularVM concepts. The ATL 3.0 API was inspired from that one but isn't strictly compatible with: for instance, the "ASM" injector/extractor you mention are used to wrap RegularVM models to the new API, which is not specific to only one VM (that was the main problem with the RegularVM API).


if these two kinds of elements are the same (bridging EMF, ASM, XML technical spaces) why is it not possible to access the XML injector using CoreService.getInjector() - on my platform only EMF, ATL and ASM are possible ?

At this time, under the new API, three injector/extractors have been implemented:
- EMF: to load/save basic EMF models (or XML files through EMF XSD)
- ASM: to make the new API compatible with old RegularVM models, in order to use same API to launch a transformation with both VMs
- ATL: to allow .atl files parsing/generation to/from an EMF model conforming to the ATL metamodel (in its .ecore form)


If I'm right, the XML injector must implement the same interfaces... ?

That's the point. As the injection/extraction system was strongly related to AM3/TCS components, which are now completly separated of ATL.


And for now, if i need to inject XML before performing a transformation with the EMF VM, how can I perform that : must I create ASM model first and inject them into EMF vm ?

This could have been a solution, but ASM models wrapping is not as strong as to allow EMFVM / RegularVM interactions.


Currently the quickest solution is to use EMF XSD. But as several people encounter that problematic, it could interesting to open a bug about that issue. Then interested people should be able to merge their efforts in order to contribute an XML injector/extractor based on the new API.

Best regards,

William

Thanks for your help.
And I have to say that it is always a great tool, thanks guys !

Guillaume