Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » QVT-OML » Creating objects in secondary extents
Creating objects in secondary extents [message #1113076] Fri, 20 September 2013 11:58 Go to next message
Vlad Gheorghe is currently offline Vlad Gheorghe
Messages: 111
Registered: May 2011
Senior Member
Hello,

I use QVTo from Indigo SR2 (v3.1.0).

I have an transformation with one in/out parameter.

At execution time, the resource passed as the parameter contains a model which has cross-references to another resource ('secondary extent').

I was not able to create new objects and save them into the secondary extent.

Please see two test cases:
https://docs.google.com/file/d/0B7r4pZXYoqb_RHEtcFI5LWtWLWM/edit?usp=sharing

In the real usage, the 'secondary' extents are not defined at design time. It is therefore not possible to add them as parameters of the transformation.

Any ideas or suggestions would be great.

Cheers
Vlad

[Updated on: Fri, 20 September 2013 14:57]

Report message to a moderator

Re: Creating objects in secondary extents [message #1113079 is a reply to message #1113076] Fri, 20 September 2013 12:01 Go to previous messageGo to next message
Vlad Gheorghe is currently offline Vlad Gheorghe
Messages: 111
Registered: May 2011
Senior Member
( I will come back with a link to the test cases, as it seems that I cannot upload them here... )
Re: Creating objects in secondary extents [message #1113095 is a reply to message #1113076] Fri, 20 September 2013 12:34 Go to previous messageGo to next message
Ed Willink is currently offline Ed Willink
Messages: 4035
Registered: July 2009
Senior Member
Hi

Eclipse QVTo went through a rather 'stable' period. But it's moving
again now. There were some significant fixes in Kepler. It's worth
seeing whether you can upgrade even if you must stay with an Indigo
platform.

Regards

Ed Willink

On 20/09/2013 16:58, Vlad Gheorghe wrote:
> Hello,
>
> I use QVTo from Indigo SR2 (v3.1.0).
>
> I have an transformation with one in/out parameter.
>
> At execution time, the resource passed as the parameter contains a
> model which has cross-references to another resource ('secondary
> extent').
>
> I was not able to create new objects and save them into the secondary
> extent.
>
> Please see two attached test cases.
>
> In the real usage, the 'secondary' extents are not defined at design
> time. It is therefore not possible to add them as parameters of the
> transformation.
>
> Any ideas or suggestions would be great.
>
> Cheers
> Vlad
>
Re: Creating objects in secondary extents [message #1113157 is a reply to message #1113079] Fri, 20 September 2013 14:30 Go to previous messageGo to next message
Vlad Gheorghe is currently offline Vlad Gheorghe
Messages: 111
Registered: May 2011
Senior Member
I've added a link in the initial post.

Off-topic: is it me or message attachments are disabled ?
Re: Creating objects in secondary extents [message #1113172 is a reply to message #1113157] Fri, 20 September 2013 15:02 Go to previous messageGo to next message
Vlad Gheorghe is currently offline Vlad Gheorghe
Messages: 111
Registered: May 2011
Senior Member
Hi Ed,

I have tried it with Kepler R, QVTo 3.3.0. Same results.

Intuitively, I have a correct use case. I don't know whether the QVT specification agrees.
I'll try to look it up.

Regards
Vlad


Re: Creating objects in secondary extents [message #1113198 is a reply to message #1113172] Fri, 20 September 2013 15:57 Go to previous messageGo to next message
Vlad Gheorghe is currently offline Vlad Gheorghe
Messages: 111
Registered: May 2011
Senior Member
From http://www.omg.org/spec/QVT/1.1/PDF/ :

8.2.1.5. ModelParameter
Pre-defined operations defined on types can be used to inspect the objects that are part of the model at any time during
the transformation. More precisely there is a MOF extent corresponding to each parameter. Any object creation occurs in
an extent associated with a model parameter.

8.2.1.6 ModelType

Relationship between MOF extents and model parameters
When a model element is created by a transformation it is necessary to know in what model the model element is to be
created. In particular, this makes it possible to use the inspection operations on model parameters like objects() and
objectsOfType() to retrieve an object previously created. In MOF there is a notion of Extent that is simply defined
as a container for Objects. Here we are correlating the notion of model (represented by model parameters in a
transformation definition) with the notion of MOF extent stating that for each model parameter there is a MOF extent.

8.3.5.4 removeElement
Model::removeElement (Element): Void
Removes an object of the model extent. All links that the object have with other objects in the extent are deleted.

8.3.4 Operations on elements
All MOF reflective operations are available, in particular the Element::container() operation that is very useful to inspect
a model.
Re: Creating objects in secondary extents [message #1113543 is a reply to message #1113198] Sat, 21 September 2013 05:03 Go to previous messageGo to next message
Ed Willink is currently offline Ed Willink
Messages: 4035
Registered: July 2009
Senior Member
Hi

I suspect you need to raise a Bugzilla; there is some chance it might
even get fixed these days.

Regards

Ed Willink

On 20/09/2013 20:57, Vlad Gheorghe wrote:
> From http://www.omg.org/spec/QVT/1.1/PDF/ :
>
> 8.2.1.5. ModelParameter
> Pre-defined operations defined on types can be used to inspect the
> objects that are part of the model at any time during
> the transformation. More precisely there is a MOF extent corresponding
> to each parameter. Any object creation occurs in
> an extent associated with a model parameter.
>
> 8.2.1.6 ModelType
>
> Relationship between MOF extents and model parameters
> When a model element is created by a transformation it is necessary to
> know in what model the model element is to be
> created. In particular, this makes it possible to use the inspection
> operations on model parameters like objects() and
> objectsOfType() to retrieve an object previously created. In MOF there
> is a notion of Extent that is simply defined
> as a container for Objects. Here we are correlating the notion of
> model (represented by model parameters in a
> transformation definition) with the notion of MOF extent stating that
> for each model parameter there is a MOF extent.
>
> 8.3.5.4 removeElement
> Model::removeElement (Element): Void
> Removes an object of the model extent. All links that the object have
> with other objects in the extent are deleted.
>
> 8.3.4 Operations on elements
> All MOF reflective operations are available, in particular the
> Element::container() operation that is very useful to inspect
> a model.
>
Re: Creating objects in secondary extents [message #1114860 is a reply to message #1113543] Mon, 23 September 2013 06:07 Go to previous message
Vlad Gheorghe is currently offline Vlad Gheorghe
Messages: 111
Registered: May 2011
Senior Member
reported
https://bugs.eclipse.org/bugs/show_bug.cgi?id=417779
Previous Topic:Retrivieving stereotypes tagged values
Next Topic:metamodel declaration & UML profile
Goto Forum:
  


Current Time: Sat Aug 30 06:21:56 EDT 2014

Powered by FUDForum. Page generated in 0.08251 seconds