EMF and other Programming languages (C++/C#) [message #671958] |
Thu, 19 May 2011 13:02 |
Hauke Fuhrmann Messages: 333 Registered: July 2009 |
Senior Member |
|
|
Hi there,
I have to do metamodeling in a cross-platform environment, using mainly Java, but also C++ and/or C# in a Windows environment should be able to read/write instances of that model.
Does anybody has corresponding experience? Are there any useful approaches?
* Start with ecore, use XMI for persistence -> any C++/C# tool recommendations that would do a corresponding language binding to this XMI?
* Start with ecore, use XML for persistence -> any way to fine tune the XML resource factory for the used XML such that some arbitrary XML binding for C++/C# will be able to process it? I think especially cross-element references are a problem, aren't they?
* Start with a fine tunes XSD, generate genmodel in Java, use standard XML language binding for C++/C# -> Modeling in XSD is quite low-level. Additionally cross-references are a problem again in EMF. Is there any XSD-construct supported such that linking of references will be done correctly in EMF afterwards?
* Do modeling with some other tool and import into EMF for the java world and use the other tool for the other world -> Tool suggestions?
Any hints appreciated,
Hauke
|
|
|
|
Re: EMF and other Programming languages (C++/C#) [message #686813 is a reply to message #671958] |
Thu, 19 May 2011 17:50 |
Ed Merks Messages: 33142 Registered: July 2009 |
Senior Member |
|
|
Hauke,
Comments below.
Hauke Fuhrmann wrote:
> Hi there,
>
> I have to do metamodeling in a cross-platform environment, using
> mainly Java, but also C++ and/or C# in a Windows environment should be
> able to read/write instances of that model.
>
> Does anybody has corresponding experience? Are there any useful
> approaches?
I don't think there is a lot of experience with this.
>
> * Start with ecore, use XMI for persistence -> any C++/C# tool
> recommendations that would do a corresponding language binding to this
> XMI?
I don't know of any implementations of EMOF in those other languages.
Ecore is isomorphic to the OMG's EMOF so presumably any implementation
of XMI in those other languages would be able to deal with the XMI
produced by EMF. I don't think such implementations exist.
>
> * Start with ecore, use XML for persistence -> any way to fine tune
> the XML resource factory for the used XML such that some arbitrary XML
> binding for C++/C# will be able to process it? I think especially
> cross-element references are a problem, aren't they?
If they're cross document, you'd have to use anyURI. If it's same
document reference (non-proxy resolving EReference) you could use IDREF.
>
> * Start with a fine tunes XSD, generate genmodel in Java, use standard
> XML language binding for C++/C# -> Modeling in XSD is quite low-level.
> Additionally cross-references are a problem again in EMF. Is there any
> XSD-construct supported such that linking of references will be done
> correctly in EMF afterwards?
This is probably your best bet. Making use of IDREF and anyURI for
non-containment references...
>
> * Do modeling with some other tool and import into EMF for the java
> world and use the other tool for the other world -> Tool suggestions?
Perhaps other tools support UML and certainly EMF can import Ecore from
UML. But I don't know if such tools exist, and even if they do, you
still have a problem how to exchange serialized instance, i.e., the
above problem doesn't go away.
>
> Any hints appreciated,
> Hauke
Ed Merks
Professional Support: https://www.macromodeling.com/
|
|
|
Re: EMF and other Programming languages (C++/C#) [message #686989 is a reply to message #671958] |
Thu, 19 May 2011 17:50 |
Ed Merks Messages: 33142 Registered: July 2009 |
Senior Member |
|
|
Hauke,
Comments below.
Hauke Fuhrmann wrote:
> Hi there,
>
> I have to do metamodeling in a cross-platform environment, using
> mainly Java, but also C++ and/or C# in a Windows environment should be
> able to read/write instances of that model.
>
> Does anybody has corresponding experience? Are there any useful
> approaches?
I don't think there is a lot of experience with this.
>
> * Start with ecore, use XMI for persistence -> any C++/C# tool
> recommendations that would do a corresponding language binding to this
> XMI?
I don't know of any implementations of EMOF in those other languages.
Ecore is isomorphic to the OMG's EMOF so presumably any implementation
of XMI in those other languages would be able to deal with the XMI
produced by EMF. I don't think such implementations exist.
>
> * Start with ecore, use XML for persistence -> any way to fine tune
> the XML resource factory for the used XML such that some arbitrary XML
> binding for C++/C# will be able to process it? I think especially
> cross-element references are a problem, aren't they?
If they're cross document, you'd have to use anyURI. If it's same
document reference (non-proxy resolving EReference) you could use IDREF.
>
> * Start with a fine tunes XSD, generate genmodel in Java, use standard
> XML language binding for C++/C# -> Modeling in XSD is quite low-level.
> Additionally cross-references are a problem again in EMF. Is there any
> XSD-construct supported such that linking of references will be done
> correctly in EMF afterwards?
This is probably your best bet. Making use of IDREF and anyURI for
non-containment references...
>
> * Do modeling with some other tool and import into EMF for the java
> world and use the other tool for the other world -> Tool suggestions?
Perhaps other tools support UML and certainly EMF can import Ecore from
UML. But I don't know if such tools exist, and even if they do, you
still have a problem how to exchange serialized instance, i.e., the
above problem doesn't go away.
>
> Any hints appreciated,
> Hauke
Ed Merks
Professional Support: https://www.macromodeling.com/
|
|
|
Powered by
FUDForum. Page generated in 0.02689 seconds