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 15: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 18:57]

Report message to a moderator

Re: Creating objects in secondary extents [message #1113079 is a reply to message #1113076] Fri, 20 September 2013 16: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 16:34 Go to previous messageGo to next message
Ed Willink is currently offline Ed Willink
Messages: 4046
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 18: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 19: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 19: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 09:03 Go to previous messageGo to next message
Ed Willink is currently offline Ed Willink
Messages: 4046
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 10: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: Sun Sep 21 16:27:58 GMT 2014

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

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