Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » UML2 » Can UML2 profiles/models/instances be manipulated via reflective EMF?
Can UML2 profiles/models/instances be manipulated via reflective EMF? [message #477896] Tue, 28 October 2008 18:17 Go to next message
Marc Moser is currently offline Marc MoserFriend
Messages: 66
Registered: July 2009
Member
Hi,

I have some (potentially stupid :-)...) questions about the UML2
implementation.

I'm currently using EMF together with OCL for all modeling activities.
I don't have experience with the UML2 implementation yet.
Now, there are cases where I would like to interoperate with UML
profile based models. As an example, we might consider a repository
that accepts content standardized by UML profiles. In these cases, I
would still want to work with EMF/OCL, but then transform instances of
my ecore meta-model into instances of UML profiles for persistence.
Thus, I would like to specify some kind of transformation rules. I do
not want to generate neither the ecore based meta-model nor the UML
profiles, they are both supposed to exist.

Now I had a look at some of the uml2 plugins and found the following
resources: Ecore.metamodel.uml, Ecore.profile.uml, UML.metamodel.uml,
UML2.profile.uml as well as Standard.profile.uml

Can someone give me some insight about how these metamodels/profiles
are used in the implementation? And where I can find the ecore model
of UML?

Another question is if it will be possible to manipulate all UML stuff
(models, profiles, instances of profiles) purely reflectively via EMF?

Thanks for your help,
Marc
Re: Can UML2 profiles/models/instances be manipulated via reflective EMF? [message #477905 is a reply to message #477896] Wed, 29 October 2008 18:55 Go to previous messageGo to next message
james bruck is currently offline james bruckFriend
Messages: 1724
Registered: July 2009
Senior Member
Hi Marc,

.... don't be afraid of asking a potentially stupid question...


Q: Another question is if it will be possible to manipulate all UML stuff
(models, profiles, instances of profiles) purely reflectively via EMF?

A: Yes indeed you can use purely reflective EMF api to get info about UML
models.
For some uml::NamedElement you can reference it via EObject and do a
eObject.eClass().getEAllAttributes() then do something like
eAttribute.getName() if the name of the attribute is something from UML you
can then do a eObject.eGet(eAttribute) etc...



Q: Now I had a look at some of the uml2 plugins and found the following
resources: Ecore.metamodel.uml, Ecore.profile.uml, UML.metamodel.uml,
UML2.profile.uml as well as Standard.profile.uml
Can someone give me some insight about how these metamodels/profiles are
used in the implementation? And where I can find the ecore model
of UML?

A: The Ecore.profile.uml is used to add extra ecore concepts to uml models.
The UML2.profile.uml is used to keep track of missing information
during migration.
The UML.metamodel.uml is used during profile creation. It is the
referenced UML metamodel.
The ecore model of UML is found in the org.eclipse.uml2.uml/model
directory.

I'll dig up some more specific information on these and post later.

- James.



"Marc Moser" <moser@montages.com> wrote in message
news:bckeg45m4ink27vrmvjavlk3i9til6o24k@4ax.com...
> Hi,
>
> I have some (potentially stupid :-)...) questions about the UML2
> implementation.
>
> I'm currently using EMF together with OCL for all modeling activities.
> I don't have experience with the UML2 implementation yet.
> Now, there are cases where I would like to interoperate with UML
> profile based models. As an example, we might consider a repository
> that accepts content standardized by UML profiles. In these cases, I
> would still want to work with EMF/OCL, but then transform instances of
> my ecore meta-model into instances of UML profiles for persistence.
> Thus, I would like to specify some kind of transformation rules. I do
> not want to generate neither the ecore based meta-model nor the UML
> profiles, they are both supposed to exist.
>
> Now I had a look at some of the uml2 plugins and found the following
> resources: Ecore.metamodel.uml, Ecore.profile.uml, UML.metamodel.uml,
> UML2.profile.uml as well as Standard.profile.uml
>
> Can someone give me some insight about how these metamodels/profiles
> are used in the implementation? And where I can find the ecore model
> of UML?
>
> Another question is if it will be possible to manipulate all UML stuff
> (models, profiles, instances of profiles) purely reflectively via EMF?
>
> Thanks for your help,
> Marc
Re: Can UML2 profiles/models/instances be manipulated via reflective EMF? [message #477926 is a reply to message #477905] Wed, 05 November 2008 05:34 Go to previous message
Marc Moser is currently offline Marc MoserFriend
Messages: 66
Registered: July 2009
Member
Thanks James,

your explanations about the different models helped me to better
understand these things.

Best,
Marc

>Hi Marc,
>
>... don't be afraid of asking a potentially stupid question...
>
>
>Q: Another question is if it will be possible to manipulate all UML stuff
>(models, profiles, instances of profiles) purely reflectively via EMF?
>
>A: Yes indeed you can use purely reflective EMF api to get info about UML
>models.
> For some uml::NamedElement you can reference it via EObject and do a
>eObject.eClass().getEAllAttributes() then do something like
>eAttribute.getName() if the name of the attribute is something from UML you
>can then do a eObject.eGet(eAttribute) etc...
>
>
>
>Q: Now I had a look at some of the uml2 plugins and found the following
>resources: Ecore.metamodel.uml, Ecore.profile.uml, UML.metamodel.uml,
>UML2.profile.uml as well as Standard.profile.uml
> Can someone give me some insight about how these metamodels/profiles are
>used in the implementation? And where I can find the ecore model
>of UML?
>
>A: The Ecore.profile.uml is used to add extra ecore concepts to uml models.
> The UML2.profile.uml is used to keep track of missing information
>during migration.
> The UML.metamodel.uml is used during profile creation. It is the
>referenced UML metamodel.
> The ecore model of UML is found in the org.eclipse.uml2.uml/model
>directory.
>
>I'll dig up some more specific information on these and post later.
>
>- James.
>
>
>
>"Marc Moser" <moser@montages.com> wrote in message
>news:bckeg45m4ink27vrmvjavlk3i9til6o24k@4ax.com...
>> Hi,
>>
>> I have some (potentially stupid :-)...) questions about the UML2
>> implementation.
>>
>> I'm currently using EMF together with OCL for all modeling activities.
>> I don't have experience with the UML2 implementation yet.
>> Now, there are cases where I would like to interoperate with UML
>> profile based models. As an example, we might consider a repository
>> that accepts content standardized by UML profiles. In these cases, I
>> would still want to work with EMF/OCL, but then transform instances of
>> my ecore meta-model into instances of UML profiles for persistence.
>> Thus, I would like to specify some kind of transformation rules. I do
>> not want to generate neither the ecore based meta-model nor the UML
>> profiles, they are both supposed to exist.
>>
>> Now I had a look at some of the uml2 plugins and found the following
>> resources: Ecore.metamodel.uml, Ecore.profile.uml, UML.metamodel.uml,
>> UML2.profile.uml as well as Standard.profile.uml
>>
>> Can someone give me some insight about how these metamodels/profiles
>> are used in the implementation? And where I can find the ecore model
>> of UML?
>>
>> Another question is if it will be possible to manipulate all UML stuff
>> (models, profiles, instances of profiles) purely reflectively via EMF?
>>
>> Thanks for your help,
>> Marc
>
Re: Can UML2 profiles/models/instances be manipulated via reflective EMF? [message #627114 is a reply to message #477896] Wed, 29 October 2008 18:55 Go to previous message
james bruck is currently offline james bruckFriend
Messages: 1724
Registered: July 2009
Senior Member
Hi Marc,

.... don't be afraid of asking a potentially stupid question...


Q: Another question is if it will be possible to manipulate all UML stuff
(models, profiles, instances of profiles) purely reflectively via EMF?

A: Yes indeed you can use purely reflective EMF api to get info about UML
models.
For some uml::NamedElement you can reference it via EObject and do a
eObject.eClass().getEAllAttributes() then do something like
eAttribute.getName() if the name of the attribute is something from UML you
can then do a eObject.eGet(eAttribute) etc...



Q: Now I had a look at some of the uml2 plugins and found the following
resources: Ecore.metamodel.uml, Ecore.profile.uml, UML.metamodel.uml,
UML2.profile.uml as well as Standard.profile.uml
Can someone give me some insight about how these metamodels/profiles are
used in the implementation? And where I can find the ecore model
of UML?

A: The Ecore.profile.uml is used to add extra ecore concepts to uml models.
The UML2.profile.uml is used to keep track of missing information
during migration.
The UML.metamodel.uml is used during profile creation. It is the
referenced UML metamodel.
The ecore model of UML is found in the org.eclipse.uml2.uml/model
directory.

I'll dig up some more specific information on these and post later.

- James.



"Marc Moser" <moser@montages.com> wrote in message
news:bckeg45m4ink27vrmvjavlk3i9til6o24k@4ax.com...
> Hi,
>
> I have some (potentially stupid :-)...) questions about the UML2
> implementation.
>
> I'm currently using EMF together with OCL for all modeling activities.
> I don't have experience with the UML2 implementation yet.
> Now, there are cases where I would like to interoperate with UML
> profile based models. As an example, we might consider a repository
> that accepts content standardized by UML profiles. In these cases, I
> would still want to work with EMF/OCL, but then transform instances of
> my ecore meta-model into instances of UML profiles for persistence.
> Thus, I would like to specify some kind of transformation rules. I do
> not want to generate neither the ecore based meta-model nor the UML
> profiles, they are both supposed to exist.
>
> Now I had a look at some of the uml2 plugins and found the following
> resources: Ecore.metamodel.uml, Ecore.profile.uml, UML.metamodel.uml,
> UML2.profile.uml as well as Standard.profile.uml
>
> Can someone give me some insight about how these metamodels/profiles
> are used in the implementation? And where I can find the ecore model
> of UML?
>
> Another question is if it will be possible to manipulate all UML stuff
> (models, profiles, instances of profiles) purely reflectively via EMF?
>
> Thanks for your help,
> Marc
Re: Can UML2 profiles/models/instances be manipulated via reflective EMF? [message #627135 is a reply to message #477905] Wed, 05 November 2008 05:34 Go to previous message
Marc Moser is currently offline Marc MoserFriend
Messages: 66
Registered: July 2009
Member
Thanks James,

your explanations about the different models helped me to better
understand these things.

Best,
Marc

>Hi Marc,
>
>... don't be afraid of asking a potentially stupid question...
>
>
>Q: Another question is if it will be possible to manipulate all UML stuff
>(models, profiles, instances of profiles) purely reflectively via EMF?
>
>A: Yes indeed you can use purely reflective EMF api to get info about UML
>models.
> For some uml::NamedElement you can reference it via EObject and do a
>eObject.eClass().getEAllAttributes() then do something like
>eAttribute.getName() if the name of the attribute is something from UML you
>can then do a eObject.eGet(eAttribute) etc...
>
>
>
>Q: Now I had a look at some of the uml2 plugins and found the following
>resources: Ecore.metamodel.uml, Ecore.profile.uml, UML.metamodel.uml,
>UML2.profile.uml as well as Standard.profile.uml
> Can someone give me some insight about how these metamodels/profiles are
>used in the implementation? And where I can find the ecore model
>of UML?
>
>A: The Ecore.profile.uml is used to add extra ecore concepts to uml models.
> The UML2.profile.uml is used to keep track of missing information
>during migration.
> The UML.metamodel.uml is used during profile creation. It is the
>referenced UML metamodel.
> The ecore model of UML is found in the org.eclipse.uml2.uml/model
>directory.
>
>I'll dig up some more specific information on these and post later.
>
>- James.
>
>
>
>"Marc Moser" <moser@montages.com> wrote in message
>news:bckeg45m4ink27vrmvjavlk3i9til6o24k@4ax.com...
>> Hi,
>>
>> I have some (potentially stupid :-)...) questions about the UML2
>> implementation.
>>
>> I'm currently using EMF together with OCL for all modeling activities.
>> I don't have experience with the UML2 implementation yet.
>> Now, there are cases where I would like to interoperate with UML
>> profile based models. As an example, we might consider a repository
>> that accepts content standardized by UML profiles. In these cases, I
>> would still want to work with EMF/OCL, but then transform instances of
>> my ecore meta-model into instances of UML profiles for persistence.
>> Thus, I would like to specify some kind of transformation rules. I do
>> not want to generate neither the ecore based meta-model nor the UML
>> profiles, they are both supposed to exist.
>>
>> Now I had a look at some of the uml2 plugins and found the following
>> resources: Ecore.metamodel.uml, Ecore.profile.uml, UML.metamodel.uml,
>> UML2.profile.uml as well as Standard.profile.uml
>>
>> Can someone give me some insight about how these metamodels/profiles
>> are used in the implementation? And where I can find the ecore model
>> of UML?
>>
>> Another question is if it will be possible to manipulate all UML stuff
>> (models, profiles, instances of profiles) purely reflectively via EMF?
>>
>> Thanks for your help,
>> Marc
>
Previous Topic:Importing Superstructure.uml to Rational Software Architect
Next Topic:Modeling Question: EMF Library Model as Profile?
Goto Forum:
  


Current Time: Tue Apr 16 22:53:13 GMT 2024

Powered by FUDForum. Page generated in 0.96581 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top