Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » GMF (Graphical Modeling Framework) » Newbie
Newbie [message #213021] Tue, 09 December 2008 10:11 Go to next message
Jose Salazar is currently offline Jose SalazarFriend
Messages: 34
Registered: July 2009
Member
Hi,

I want a tree-structure diagram, so the metamodel its like "node +
aggregation for childrens + association for father" more or less. The
problem is that when I try to create a children-link, the children node
dissapear from the diagram but not in the Ecore-tree. I think the
aggregation "wants" from me that I've to create a container inside the
node, and then in the mapping, link the aggregation with him.

But I want the children in the canvas with the tree-structure in Ecore,
not ploted inside father-node.

Is it possible?

Thanks.
Re: Newbie [message #213044 is a reply to message #213021] Tue, 09 December 2008 12:35 Go to previous messageGo to next message
Alexander Shatalin is currently offline Alexander ShatalinFriend
Messages: 2928
Registered: July 2009
Senior Member
Hello Jose,

Try modifying .gmfmap model by: creating TopNodeReference without containment
feature and placing NodeMapping for child elements below this TopNodeReference.
Then you can create LinkMepping referencing parent-child containment feature.
As a result you should be able to create top-nodes on the diagram representing
child elements (in this moment top nodes will be placed inside resource root)
and then you can connect parent element with it’s children using the link.

Important: NodeMappping for the “parent” element should have no ChildReferences
referencing children – all child (in emf terms) elements should be represented
as a top-level diagram nodes only.

-----------------
Alex Shatalin
Re: Newbie [message #213141 is a reply to message #213044] Wed, 10 December 2008 09:33 Go to previous messageGo to next message
Jose Salazar is currently offline Jose SalazarFriend
Messages: 34
Registered: July 2009
Member
Hello Alex,

I think that I've my .gmfmap like you said, but please, correct me if you
see a mistake.

In my ecore model I've two nodes, ClassDiagram and Class, ClassDiagram
have an aggregation link with Class. And there is two links more, Class
aggregation of Class (as children role) and Class association to Class (as
father role). With that I try to model a tree structure model.

Well, now, in my .gmfmap I've a TopNodeReference with only the NodeMapping
at node Class. Sibling the TopNodeReference, I have two LinkMappings, one
for father-relation and the other for children-relation, both with only
target feature set (I can't set containment feature of both, no?, because
there isn't a explicit node modelling a link in the ecore-model).

So I transform the models and when I use the link-father, there isn't
problem (in Ecore is an association), but when I use link-children, the
target disappear in the diagram (in Ecore is an aggregation) but in the
resource set (I don't know the real name), the node is there, and like I
want it, child of his parent.

Where is the mistake?

Thanks.
Re: Newbie [message #213177 is a reply to message #213141] Wed, 10 December 2008 13:58 Go to previous messageGo to next message
Alexander Shatalin is currently offline Alexander ShatalinFriend
Messages: 2928
Registered: July 2009
Senior Member
Hello Jose,

Try first setting containment feature of TopNodeReference to null. As a result,
all classes on your diagram will be created inside Resource root by default,
but creation of children-relation link should starts working.

If yes, then you can try to add one more TopNodeReference using aggregation
link from ClassDiagram to class as a containment feature this time and see
what’s happening.

In any case you should be able to stay wit only one node mapping without
containment reference and modify generated code to put created classes into
the ClassDiagram instead of resource root.

-----------------
Alex Shatalin
Re: Newbie [message #213197 is a reply to message #213021] Wed, 10 December 2008 17:09 Go to previous messageGo to next message
Marco MosconiFriend
Messages: 63
Registered: July 2009
Member
This is a multi-part message in MIME format.
--------------060000070008030009020706
Content-Type: text/plain; charset=ISO-8859-15; format=flowed
Content-Transfer-Encoding: 7bit

Hi Jose,

please find attached a minimal working solution (without father link).
The only remaining problem, as Alex already mentioned, is that the top
level nodes are not stored under the Model element without customizing
the generated code.

Cheers,
Marco

Jose Salazar schrieb:
> Hi,
> I want a tree-structure diagram, so the metamodel its like "node +
> aggregation for childrens + association for father" more or less. The
> problem is that when I try to create a children-link, the children node
> dissapear from the diagram but not in the Ecore-tree. I think the
> aggregation "wants" from me that I've to create a container inside the
> node, and then in the mapping, link the aggregation with him.
> But I want the children in the canvas with the tree-structure in Ecore,
> not ploted inside father-node.
>
> Is it possible?
>
> Thanks.
>

--------------060000070008030009020706
Content-Type: application/x-zip-compressed;
name="gmfNodeTree.zip"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
filename="gmfNodeTree.zip"

UEsDBBQACAAIAI6QijkAAAAAAAAAAAAAAAAdAAAAZ21mVHJlZVRlc3QyL21v ZGVsL1RyZWUu
ZWNvcmWdlF1P2zAUhu+R+A+RuW7dZmxDUQtio2iIAeVrGlfIOKepNX/Jdtrs 3+84SUsqqLYu
N5Hsc57zvm+OMjqplEwW4LwwekyG/QFJQHOTC12MyePDee+InBzv742AGwfZ ZMr4L1ZAUimR
rbtS7NrfS/BBmPYZXo7JPASbUbpcLvtGFX3jCvrz6oKsSvxmyfJDXZEOBkMs +37P56BYT2gf
mOawQa+VbDQDl8J6qAmgZpGS0kksI7VQkY/J8+Lm8qy4/LaY5On100ddfDqc 8s+3LVkzhcjg
ADu0f7y7WPOhYsrKhr26nzqYiaqtP46EEXyVzHsxE5hJguay8NsisU2tvuxo qdIfyr/V0sq4
NnmLjeD74EoeSsfkOTB8wzv8O5iBgxjU64zBnPnDbX5fPfO5kDn2kqS0FtwX U2rs7g1xDR7q
EQdb1XKjAxNagQ4xixI6cLix1ngRIoDS6IhahmMCoTs5Ow3BiZcywCocyV5A rsW1VWcssHiQ
/NNSoKAJzsYN31FMJ+ZGTGvpr1G9n8u2T9SIGtHuTu2wZY20K4xc/vcWNQyQ ED+uf7MbHT+7
L8kWe3iw8YvBoz9QSwcItCHQTLYBAACdBAAAUEsDBBQACAAIAI6QijkAAAAA AAAAAAAAAAAg
AAAAZ21mVHJlZVRlc3QyL21vZGVsL1RyZWUuZ2VubW9kZWzFlF1v0zAUhu8n 7T9E5pq4RBug
KOmE1hamsVKmguAKuc6Ja+GPyHbT9t/PzkfXaK3YHblK7Pc973N8kmQ3Oymi GozlWuXoXTxC
ESiqC65Yjn4sZ28/opvx5UXGQEldgEg/g3oIN9FO8vRgTLzx8iLyl6+nbOo3 c7R2rkox3m63
sZYs1obhXw93qJMA1QYGIqCCVxYaIcgSJ6NRgqdBNqjdo/zb27OiqDFMuAHq tNnnCDNZLg3A
EqxLsDW0S2h0C7FhXN1NcnSs6orMifTUYRVFXFbaODBB6oMPEB4g7vdiOGqA alkJThSFr1CH
Dq7DgVNd7Q1nazfjIAqbo5IIC2gcPFnp3Zy1fYxDbFsww4ONRuoPZkHoX8LA RpWBku960ILb
SluyErAwuuYFmBnpTsKZjRc0NTtza2pj3vypv91P2P2Xelok89/Xir2/WtAP 31u4NvNWEGt9
ZGNoHoYVdslPac9WaGvMgLiNabh1BcZ5sLlWHoyuuSgMqB6UGq+E27A6YO8K 5Kh5SqePUIK3
UYiOUUZrYq9eouDTLIOsdianwz45Z/hq4wZhGM/9aLAgK/8Cnkl47vYRSKGV 2KNIacfL/SHw
1RAnO+4gKuJ33IEiw89je/0gMW4/pv8wuC4agwDpG7HnO2kW+q8g/Ljwiz+X X30CUEsHCKzf
0+LzAQAA9wQAAFBLAwQUAAgACACOkIo5AAAAAAAAAAAAAAAAHgAAAGdtZlRy ZWVUZXN0Mi9t
b2RlbC9UcmVlLmdtZmdlbs1abW/cNhL+fkD/A6ECxTpoJMcp0MbZbeP6rQbW ztbe5O4+BbTE
1RKVSJWi1t4e7r93SIp6pWSv41wOMOTlcN44HHKeWe30l/s0QRsicsrZzHvl 73uIsJBHlMUz
78Py7OVP3i8/f/OPaZyuYsIOzwk7jajkAj4QgeEDuk/pYaXgQCkAlSw/BPrM W0uZHQbB3d2d
z9PY5yIO/nV5UbHkbZa715rjYH//FbDNb8I1SfFLynKJWUislHGlJUjChGY5 0dIwrTT8FICL
lzwiiQf+IzSNKI4FTtGG5gVOLk5m3o9vYLGwmgUW8jjBeX6FUzLztNBpSfcQ lSS9AT+YpKGm
8oSG2y7/hZPLQ4xLLCE0Hym5O8MhBKwn2pjyUIgZZzTEybCp4z4LeBlythB8 QyMiFoJyQeV2
5s35nYc2OKGRdsLNoMNTB+i6YEuaEm0VrQVZzTzfD8xflhQxZQGEuQo5hNsX BSw7Jb5dbJAq
PwM79GG7NOXboKIFJ8aaF1jzJCEpYXK5zQiCxDiU8GHmlXl3SSTWKtS02bXf SJIR4do3M1Nr
3kCAU5z1tZ7RuBDko5n20EoPf4fsoCtKoobq5oIjge8OIv9MELLiIp3jbdNW xFNMWbm4U7Ok
MopLkGiGQsI4MBlaiUuezcmGJFdAzhup+gqOhDNZFeMOuarYn5aqSnKHTFXs zkSFuGRrRaw8
d4meu7nAqiBYkmOegv9R115zzqb1/zyxlSfVhj5HXtsQdNJ6LLEvGCtVVMmd 4C0vtBeQie/f
z389uv40P/r3+w9LCGrbmDkWJflXHsE98d2390dvgxcv9H/0Ar2Lzf1PopIS 6P9ZcQvbZARR
rQqRe0lYlCPHObomIdzucWJZ/6MVtR5vKst60DdfkoN6kAm6gWk0tKGl8YL6 5tDn/j8h4zKo
enN8SxK0Mt6oJWiCGb5Fz+OciVIdn8levew31aMcOmK25Dy5xWKut9Tu7Jrm aIYYuXNFuSUx
2Wuor6X9nMgbuJRkuL6kjIuje5pPpCjIMLvhS2jMVIpPHjLsH80vzq8+HZ9e LU+vtc69bjA7
7mQ4hD2Z7A+78JEIqS6Kjqclryy5jP1LzHBMxKTW0BPoPOx1wyB/Zd4K3H+f IT03nEaoa6N7
Aty56NjrHRLcrsStW0VsCWd28t2fBZdvzbMZKh1WHEUTt3wnquXjEYefqVuc pxkUM5VQ+8MJ
3ZGcOL3rqnP51dhI1+MzNvcWUp9ghtLth5zMOeToMecCkDVMqqO6wklOnsEa lxALElX2ir41
xwUD57wQA84NBuez/NPJDpnlMDgZ8b3v+lBAHcKP2OanX+BPLS4xkc5jM7xL A+VoeHGNcQ2E
ADEI8mdBBYkWGu9cnOQ/P7iIadAXqhBIUEKQmqLRDIBEIpt2U8A5TeDlxMJd 5BQ4dE0Ttf4m
NP5hDBrraO2Ij7XM00GyFm8h5RIBXoSqQ1ZlqrUlXxWdjoFICBl4fZTnUN5J VAFJyF5JhFnv
UCY/tpfa4dS0na4zw9HVQTkFeS11WfE1Y14mZMn4YE4GSd8BZ24aRns8pkGr m7PUhLI/mvn7
eix/j9c0iYT50mWHFLZiT89iq6Hd8o01X6VAuwlDgnBBIY3Gha7bXF+tdzuN 4sf3bjcZCSnk
919aVjdwT+zNGv2Xjcgz9WBtdc4+bPwMQsZsIWMVPGVQxmGhp/euHu056mnb 2dGmSD8USsUC
7qATEnKhd2FiUrRH3nMi9+fsLi0uVamEbxNSG0dDPvXW59Bn499QF62GYXGf 3SJjB3NMOFyD
YgtSlMk5zSXKkmHdfXarO0sU3NbkCazxEmfq3p3s+ScLyeeLycuDPc33PXLN lpOP1LU/pmp/
J1Xjbr1s+xWtTFeUZgls5iRLWvQbgJ3EaeTHMRuvWyZ6sC9aPapN+X8Ae8Nl GMqduwo3a/CD
JTgs74ZxfAgVWFVXO8pgUwCs1BKx4EWWI0llQhQUI20oBlc9lKG8vxb1LcYp TEINLGU1joI9
Zbq2z7wgeFeWquBdq+z7+23gsIMNex8iFUNtTH3oGNMLbhmZBmaZVUzaYZhm EGoCakOywLHL
k3PCbqC5jrCIFi1eQB8nmkvt05Lk8sAv/fDNlZkAtNBlTDEg+xV/7Zndxeex CeiQYGFeDRmz
Rw3KH5RFLUrwpfwIq9qYW0eOmyTjSZP0xVyBygQnmsXWj0U1Nk5U4y/mgSgS IvIjFp0LGlk3
rjURARUZsvHmusX75YKC5RqurWpzFtW4DIodB/WRaZ8R8wYxKBWaUQk7zYDo l6LlgOENjdW7
UatOL+faasyRHjePcW25y5rpJqzF2xcfvnKeqs/eKkhfJQaaalpJMb2seumY myv3yq75XE37
MV3t4kPD4CMWh6rNMa8zeCE/SY2uWv62SF2HDRr7XK97no2FsuM1ZZ9yXgh1 VTWcpizkKRxQ
NBRtyzD/2lF3+98idYN+oye/ZtAHUgXIMR+LumUYj/o0aB99271+yCLAjPZ6 yATPiJDbmzWp
gQv0DA9VYiO1xLfmqsP9yvYELb0LaFDFcZFLnvYV6Bfe6v3iLUlUlRMNTDVd 0QQW7gA7MAAV
Z3q6hcEU2zBQrbp31TtPA8M8Lk1Wvv32xCFQtXpLPQOLlwKH9cWgvkEBQNXm qpGWWV/9hQ/I
l5nQ3+XytwH2ZyluyKs3YhoM/twGZv8GUEsHCL7Hg9bWBwAAtCMAAFBLAwQU AAgACACOkIo5
AAAAAAAAAAAAAAAAIAAAAGdtZlRyZWVUZXN0Mi9tb2RlbC9UcmVlLmdtZmdy YXBopVVRb9ow
EH6v1P+A/A4GJk0TSlomWqZJtJoKk/bqmSPx5NiRY5qyX79zEoMT0lJ1SDzg ++67u8/fmej2
JZODZzCF0Comk9GYDEBxvRUqicnPzXL4hdzeXF9FSbZLDMvT2YKpZ1YMXjIx O6ZNMe36aoAf
ZFPFDIMxSa3NZ5SWZTnSWTLSJqG/Hr63cUUbV36qYNPxeILY1ZqnkLGhUIVl ikMr1ffTygcu
RV5ARYIAR/SZfnMwwZm8g51QwmLHZKBYBjHZGIB6HnLjyKOdSPYGirrQIEAt 60ANQ+AWCm5E
brU5gj38UW8buEcjnnG7Z7I+PiXgMIWY2UOOaUeBn4DjuIn0817iRnbJDnpv Q3gv81LqclVB
SRuLF2mdQjGxZg+dYMYsTx+E0mYt/kIvZKcNh7VwTa+E6sdkjuGrFInKQNmY LO4fN/dPZ7X+
YJmc8cp+4z6KIEpDDXgq5NaAuqjCiv0G2WE+qVtFG4k/xt9/f2GNhc5yZqzT IagR0dAkoXU4
FEXLaKh4BYoJpfPGs6MxnQeudD9DPjr3A4xOwkU0yHiHtRcNxf/Y+4eWB4km WWilUCm3jec+
rwqdEE29EGeZScDeAdeG2eoRel2KyRtSfOiK/Qyn8r13zYzRZQpsG1bBOhay XDIL7RysFJPh
lHRPD/i+tqwYMLxy/G7iYZs5ol6Ct1157puINtrXvxS6vPOKOuO777ENb+Hg Tat7ifjx4jsc
3n893vFsHYs2jNJtdU9D7begpyMf8kt4ceOaXW2WLKKd/008+wdQSwcI6SL7 4UgCAABzBwAA
UEsDBBQACAAIAI6QijkAAAAAAAAAAAAAAAAeAAAAZ21mVHJlZVRlc3QyL21v ZGVsL1RyZWUu
Z21mbWFwlVTbbptAEH2PlH+wyHNY7CZthNZOJMdRq8Tpza3ap2oLA6y6F8Ru jfv3nQXMxTJu
ioSEZ+acnTNn1vR2J8VkC4XhWs29qR94E1CRjrlK596XzcPljXe7OD+jqUwk y8M1y3NMTXaS
hy1qhqjzswk+SKZMiMm5l1mbh4SUZelrmfq6SMm39bthnRnWla+qslkQTLH2 6XOUgWSXXBnL
VAQDKES6gAEYIsFzAxUDyMSxzMjKlQ2AtY5RZFojb4ishZpDsNVa/At9TTZY dQ8JV9zihLyF
I6FKx2AWNR/VpYJ4mXERNxGMxVoyrtZg2UqABGX3GfdkBSRzb1MA+JX4ix+7 2VdpHt9uV/Hs
+fu1Sl9ffYjefPRIRyjYTxCNZaZPhpMP7Z8cJ9j4+gDM/i7gqQfwFh2Cxpyl BZNVvk806Au5
sCjPLp5RaVXaawZJkvoQM0pQCyPE4Yk4IKBkIKeLO0tGxblkuCzwZDTC2eKN DLWpxdPvcibA
WiB3LmD8oP3od9NMxLU6ztiNw70tnJID+ynploMKrn61ezIU92Jp/yds2nW2 Nxp7GGOrRVXN
F6CWWimIqjVvSZwCt8bNVh3rv7I6XH2CBJCkvd3HNz3ImLka23Tci3Zg+/YP 1CyZ2jJzWo/7
Vdf1hlFfSLRGnGpv+/7xPh2/iKfu9ZHlr47rwI1nL7S2nUk3CEqG/90Y+gtQ SwcIvZegnwwC
AAD2BQAAUEsDBBQACAAIAI6QijkAAAAAAAAAAAAAAAAfAAAAZ21mVHJlZVRl c3QyL21vZGVs
L1RyZWUuZ21mdG9vbK2RMU/DMBCF90r9D9HtrdMiJBQ56VAEQioMUCTWKLkm Jxw7sg/S/nvs
pLQN6ogHy/K9993zWa72jYq+0ToyOoXFPIYIdWFK0lUK79uH2R2ssulEVs2O jVHJ1m+vWJFj
e4j2DSUn79J7p5PIL4/ULvHFFGrmNhGi67q5aaq5sZX4eH4a69xY1930smUc L7x281bU2OQz
0o5zXeDIegw1smOhqHXYM3w9cG5FSH2PO9LEPitkASLbXCEzZgNRBpIbzn0H RwkfWkzh8umP
1ny1cFYxsfIStoiQ/V7/RV2DrS3mIUuAwqX0SHwxJYL4V+S6JlVa1NGG9OeJ LUWPHkYizjOR
4tqX+8IPUEsHCObjsZcHAQAAMwIAAFBLAQIUABQACAAIAI6Qijm0IdBMtgEA AJ0EAAAdAAAA
AAAAAAAAAAAAAAAAAABnbWZUcmVlVGVzdDIvbW9kZWwvVHJlZS5lY29yZVBL AQIUABQACAAI
AI6Qijms39Pi8wEAAPcEAAAgAAAAAAAAAAAAAAAAAAECAABnbWZUcmVlVGVz dDIvbW9kZWwv
VHJlZS5nZW5tb2RlbFBLAQIUABQACAAIAI6Qijm+x4PW1gcAALQjAAAeAAAA AAAAAAAAAAAA
AEIEAABnbWZUcmVlVGVzdDIvbW9kZWwvVHJlZS5nbWZnZW5QSwECFAAUAAgA CACOkIo56SL7
4UgCAABzBwAAIAAAAAAAAAAAAAAAAABkDAAAZ21mVHJlZVRlc3QyL21vZGVs L1RyZWUuZ21m
Z3JhcGhQSwECFAAUAAgACACOkIo5vZegnwwCAAD2BQAAHgAAAAAAAAAAAAAA AAD6DgAAZ21m
VHJlZVRlc3QyL21vZGVsL1RyZWUuZ21mbWFwUEsBAhQAFAAIAAgAjpCKOebj sZcHAQAAMwIA
AB8AAAAAAAAAAAAAAAAAUhEAAGdtZlRyZWVUZXN0Mi9tb2RlbC9UcmVlLmdt ZnRvb2xQSwUG
AAAAAAYABgDMAQAAphIAAAAA
--------------060000070008030009020706--
Re: Newbie [message #213221 is a reply to message #213177] Thu, 11 December 2008 09:27 Go to previous message
Jose Salazar is currently offline Jose SalazarFriend
Messages: 34
Registered: July 2009
Member
Hello Alex,

First post I didn't understand what you want me to say but finally I did
it.

It works. Thanks.
Previous Topic:How to draw compartments figures over connections.
Next Topic:GMF query
Goto Forum:
  


Current Time: Fri Apr 26 22:08:33 GMT 2024

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

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

Back to the top