1------------------------------------------------------------------------------
2--                                                                          --
3--                            Matreshka Project                             --
4--                                                                          --
5--                          Ada Modeling Framework                          --
6--                                                                          --
7--                        Runtime Library Component                         --
8--                                                                          --
9------------------------------------------------------------------------------
10--                                                                          --
11-- Copyright © 2012-2013, Vadim Godunko <vgodunko@gmail.com>                --
12-- All rights reserved.                                                     --
13--                                                                          --
14-- Redistribution and use in source and binary forms, with or without       --
15-- modification, are permitted provided that the following conditions       --
16-- are met:                                                                 --
17--                                                                          --
18--  * Redistributions of source code must retain the above copyright        --
19--    notice, this list of conditions and the following disclaimer.         --
20--                                                                          --
21--  * Redistributions in binary form must reproduce the above copyright     --
22--    notice, this list of conditions and the following disclaimer in the   --
23--    documentation and/or other materials provided with the distribution.  --
24--                                                                          --
25--  * Neither the name of the Vadim Godunko, IE nor the names of its        --
26--    contributors may be used to endorse or promote products derived from  --
27--    this software without specific prior written permission.              --
28--                                                                          --
29-- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS      --
30-- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT        --
31-- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR    --
32-- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT     --
33-- HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,   --
34-- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED --
35-- TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR   --
36-- PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF   --
37-- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING     --
38-- NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS       --
39-- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.             --
40--                                                                          --
41------------------------------------------------------------------------------
42--  $Revision: 3642 $ $Date: 2013-01-07 22:01:06 +0400 (Mon, 07 Jan 2013) $
43------------------------------------------------------------------------------
44--  This file is generated, don't edit it.
45------------------------------------------------------------------------------
46with AMF.Internals.Links;
47with AMF.Internals.Tables.OCL_Element_Table;
48with AMF.Internals.Tables.OCL_Types;
49with AMF.Internals.Tables.UML_Metamodel;
50
51separate (AMF.Internals.Factories.OCL_Module_Factory)
52procedure Construct_Union
53 (Element  : AMF.Internals.AMF_Element;
54  Property : AMF.Internals.CMOF_Element;
55  Link     : AMF.Internals.AMF_Link)
56is
57   Element_Kind : constant AMF.Internals.Tables.OCL_Types.Element_Kinds
58     := AMF.Internals.Tables.OCL_Element_Table.Table (Element).Kind;
59   Opposite     : constant AMF.Internals.AMF_Element
60     := AMF.Internals.Links.Opposite_Element (Link, Element);
61
62begin
63   case Element_Kind is
64      when AMF.Internals.Tables.OCL_Types.E_OCL_State_Exp =>
65         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
66            AMF.Internals.Links.Create_Link
67             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
68              Element,
69              Opposite,
70              Link);
71            AMF.Internals.Links.Create_Link
72             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
73              Opposite,
74              Element,
75              Link);
76
77         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
78            AMF.Internals.Links.Create_Link
79             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
80              Element,
81              Opposite,
82              Link);
83         end if;
84
85      when AMF.Internals.Tables.OCL_Types.E_OCL_Property_Call_Exp =>
86         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
87            AMF.Internals.Links.Create_Link
88             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
89              Element,
90              Opposite,
91              Link);
92            AMF.Internals.Links.Create_Link
93             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
94              Opposite,
95              Element,
96              Link);
97
98         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
99            AMF.Internals.Links.Create_Link
100             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
101              Element,
102              Opposite,
103              Link);
104         end if;
105
106      when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Type =>
107         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
108            AMF.Internals.Links.Create_Link
109             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
110              Element,
111              Opposite,
112              Link);
113
114         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
115            AMF.Internals.Links.Create_Link
116             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
117              Element,
118              Opposite,
119              Link);
120
121         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
122            AMF.Internals.Links.Create_Link
123             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
124              Element,
125              Opposite,
126              Link);
127
128         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
129            AMF.Internals.Links.Create_Link
130             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
131              Element,
132              Opposite,
133              Link);
134            AMF.Internals.Links.Create_Link
135             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
136              Element,
137              Opposite,
138              Link);
139
140         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
141            AMF.Internals.Links.Create_Link
142             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
143              Element,
144              Opposite,
145              Link);
146
147         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
148            AMF.Internals.Links.Create_Link
149             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
150              Element,
151              Opposite,
152              Link);
153
154         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
155            AMF.Internals.Links.Create_Link
156             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
157              Element,
158              Opposite,
159              Link);
160            AMF.Internals.Links.Create_Link
161             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
162              Opposite,
163              Element,
164              Link);
165
166         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
167            AMF.Internals.Links.Create_Link
168             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Attribute_Classifier,
169              Element,
170              Opposite,
171              Link);
172            AMF.Internals.Links.Create_Link
173             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
174              Element,
175              Opposite,
176              Link);
177
178         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
179            AMF.Internals.Links.Create_Link
180             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
181              Element,
182              Opposite,
183              Link);
184
185         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
186            AMF.Internals.Links.Create_Link
187             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
188              Element,
189              Opposite,
190              Link);
191            AMF.Internals.Links.Create_Link
192             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
193              Element,
194              Opposite,
195              Link);
196
197         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
198            AMF.Internals.Links.Create_Link
199             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
200              Element,
201              Opposite,
202              Link);
203            AMF.Internals.Links.Create_Link
204             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
205              Element,
206              Opposite,
207              Link);
208
209         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
210            AMF.Internals.Links.Create_Link
211             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
212              Element,
213              Opposite,
214              Link);
215
216         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
217            AMF.Internals.Links.Create_Link
218             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
219              Element,
220              Opposite,
221              Link);
222
223         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
224            AMF.Internals.Links.Create_Link
225             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
226              Element,
227              Opposite,
228              Link);
229
230         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
231            AMF.Internals.Links.Create_Link
232             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
233              Element,
234              Opposite,
235              Link);
236
237         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
238            AMF.Internals.Links.Create_Link
239             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
240              Opposite,
241              Element,
242              Link);
243
244         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
245            AMF.Internals.Links.Create_Link
246             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
247              Element,
248              Opposite,
249              Link);
250
251         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
252            AMF.Internals.Links.Create_Link
253             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
254              Element,
255              Opposite,
256              Link);
257
258         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
259            AMF.Internals.Links.Create_Link
260             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
261              Element,
262              Opposite,
263              Link);
264
265         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
266            AMF.Internals.Links.Create_Link
267             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
268              Element,
269              Opposite,
270              Link);
271
272         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
273            AMF.Internals.Links.Create_Link
274             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
275              Opposite,
276              Element,
277              Link);
278         end if;
279
280      when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Literal_Exp =>
281         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
282            AMF.Internals.Links.Create_Link
283             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
284              Element,
285              Opposite,
286              Link);
287            AMF.Internals.Links.Create_Link
288             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
289              Opposite,
290              Element,
291              Link);
292
293         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
294            AMF.Internals.Links.Create_Link
295             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
296              Element,
297              Opposite,
298              Link);
299         end if;
300
301      when AMF.Internals.Tables.OCL_Types.E_OCL_Bag_Type =>
302         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
303            AMF.Internals.Links.Create_Link
304             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
305              Element,
306              Opposite,
307              Link);
308
309         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
310            AMF.Internals.Links.Create_Link
311             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
312              Element,
313              Opposite,
314              Link);
315
316         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
317            AMF.Internals.Links.Create_Link
318             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
319              Element,
320              Opposite,
321              Link);
322
323         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
324            AMF.Internals.Links.Create_Link
325             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
326              Element,
327              Opposite,
328              Link);
329            AMF.Internals.Links.Create_Link
330             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
331              Element,
332              Opposite,
333              Link);
334
335         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
336            AMF.Internals.Links.Create_Link
337             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
338              Element,
339              Opposite,
340              Link);
341
342         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
343            AMF.Internals.Links.Create_Link
344             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
345              Element,
346              Opposite,
347              Link);
348
349         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
350            AMF.Internals.Links.Create_Link
351             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
352              Element,
353              Opposite,
354              Link);
355            AMF.Internals.Links.Create_Link
356             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
357              Opposite,
358              Element,
359              Link);
360
361         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
362            AMF.Internals.Links.Create_Link
363             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Attribute_Classifier,
364              Element,
365              Opposite,
366              Link);
367            AMF.Internals.Links.Create_Link
368             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
369              Element,
370              Opposite,
371              Link);
372
373         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
374            AMF.Internals.Links.Create_Link
375             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
376              Element,
377              Opposite,
378              Link);
379
380         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
381            AMF.Internals.Links.Create_Link
382             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
383              Element,
384              Opposite,
385              Link);
386            AMF.Internals.Links.Create_Link
387             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
388              Element,
389              Opposite,
390              Link);
391
392         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
393            AMF.Internals.Links.Create_Link
394             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
395              Element,
396              Opposite,
397              Link);
398            AMF.Internals.Links.Create_Link
399             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
400              Element,
401              Opposite,
402              Link);
403
404         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
405            AMF.Internals.Links.Create_Link
406             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
407              Element,
408              Opposite,
409              Link);
410
411         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
412            AMF.Internals.Links.Create_Link
413             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
414              Element,
415              Opposite,
416              Link);
417
418         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
419            AMF.Internals.Links.Create_Link
420             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
421              Element,
422              Opposite,
423              Link);
424
425         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
426            AMF.Internals.Links.Create_Link
427             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
428              Element,
429              Opposite,
430              Link);
431
432         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
433            AMF.Internals.Links.Create_Link
434             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
435              Opposite,
436              Element,
437              Link);
438
439         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
440            AMF.Internals.Links.Create_Link
441             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
442              Element,
443              Opposite,
444              Link);
445
446         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
447            AMF.Internals.Links.Create_Link
448             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
449              Element,
450              Opposite,
451              Link);
452
453         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
454            AMF.Internals.Links.Create_Link
455             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
456              Element,
457              Opposite,
458              Link);
459
460         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
461            AMF.Internals.Links.Create_Link
462             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
463              Element,
464              Opposite,
465              Link);
466
467         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
468            AMF.Internals.Links.Create_Link
469             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
470              Opposite,
471              Element,
472              Link);
473         end if;
474
475      when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Literal_Part =>
476         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
477            AMF.Internals.Links.Create_Link
478             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
479              Element,
480              Opposite,
481              Link);
482            AMF.Internals.Links.Create_Link
483             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
484              Opposite,
485              Element,
486              Link);
487
488         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
489            AMF.Internals.Links.Create_Link
490             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
491              Element,
492              Opposite,
493              Link);
494         end if;
495
496      when AMF.Internals.Tables.OCL_Types.E_OCL_Variable_Exp =>
497         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
498            AMF.Internals.Links.Create_Link
499             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
500              Element,
501              Opposite,
502              Link);
503            AMF.Internals.Links.Create_Link
504             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
505              Opposite,
506              Element,
507              Link);
508
509         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
510            AMF.Internals.Links.Create_Link
511             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
512              Element,
513              Opposite,
514              Link);
515         end if;
516
517      when AMF.Internals.Tables.OCL_Types.E_OCL_Boolean_Literal_Exp =>
518         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
519            AMF.Internals.Links.Create_Link
520             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
521              Element,
522              Opposite,
523              Link);
524            AMF.Internals.Links.Create_Link
525             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
526              Opposite,
527              Element,
528              Link);
529
530         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
531            AMF.Internals.Links.Create_Link
532             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
533              Element,
534              Opposite,
535              Link);
536         end if;
537
538      when AMF.Internals.Tables.OCL_Types.E_OCL_Void_Type =>
539         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
540            AMF.Internals.Links.Create_Link
541             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
542              Element,
543              Opposite,
544              Link);
545
546         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
547            AMF.Internals.Links.Create_Link
548             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
549              Element,
550              Opposite,
551              Link);
552
553         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
554            AMF.Internals.Links.Create_Link
555             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
556              Element,
557              Opposite,
558              Link);
559
560         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
561            AMF.Internals.Links.Create_Link
562             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
563              Element,
564              Opposite,
565              Link);
566            AMF.Internals.Links.Create_Link
567             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
568              Element,
569              Opposite,
570              Link);
571
572         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
573            AMF.Internals.Links.Create_Link
574             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
575              Element,
576              Opposite,
577              Link);
578
579         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
580            AMF.Internals.Links.Create_Link
581             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
582              Element,
583              Opposite,
584              Link);
585
586         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
587            AMF.Internals.Links.Create_Link
588             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
589              Element,
590              Opposite,
591              Link);
592            AMF.Internals.Links.Create_Link
593             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
594              Opposite,
595              Element,
596              Link);
597
598         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
599            AMF.Internals.Links.Create_Link
600             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
601              Element,
602              Opposite,
603              Link);
604
605         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
606            AMF.Internals.Links.Create_Link
607             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
608              Element,
609              Opposite,
610              Link);
611            AMF.Internals.Links.Create_Link
612             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
613              Element,
614              Opposite,
615              Link);
616
617         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
618            AMF.Internals.Links.Create_Link
619             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
620              Element,
621              Opposite,
622              Link);
623
624         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
625            AMF.Internals.Links.Create_Link
626             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
627              Element,
628              Opposite,
629              Link);
630
631         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
632            AMF.Internals.Links.Create_Link
633             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
634              Element,
635              Opposite,
636              Link);
637
638         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
639            AMF.Internals.Links.Create_Link
640             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
641              Element,
642              Opposite,
643              Link);
644
645         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
646            AMF.Internals.Links.Create_Link
647             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
648              Opposite,
649              Element,
650              Link);
651
652         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
653            AMF.Internals.Links.Create_Link
654             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
655              Element,
656              Opposite,
657              Link);
658
659         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
660            AMF.Internals.Links.Create_Link
661             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
662              Element,
663              Opposite,
664              Link);
665
666         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
667            AMF.Internals.Links.Create_Link
668             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
669              Element,
670              Opposite,
671              Link);
672
673         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
674            AMF.Internals.Links.Create_Link
675             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
676              Element,
677              Opposite,
678              Link);
679
680         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
681            AMF.Internals.Links.Create_Link
682             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
683              Opposite,
684              Element,
685              Link);
686         end if;
687
688      when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Type =>
689         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
690            AMF.Internals.Links.Create_Link
691             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
692              Element,
693              Opposite,
694              Link);
695
696         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
697            AMF.Internals.Links.Create_Link
698             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
699              Element,
700              Opposite,
701              Link);
702
703         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
704            AMF.Internals.Links.Create_Link
705             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
706              Element,
707              Opposite,
708              Link);
709
710         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
711            AMF.Internals.Links.Create_Link
712             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
713              Element,
714              Opposite,
715              Link);
716            AMF.Internals.Links.Create_Link
717             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
718              Element,
719              Opposite,
720              Link);
721
722         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
723            AMF.Internals.Links.Create_Link
724             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
725              Element,
726              Opposite,
727              Link);
728
729         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
730            AMF.Internals.Links.Create_Link
731             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
732              Element,
733              Opposite,
734              Link);
735
736         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
737            AMF.Internals.Links.Create_Link
738             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
739              Element,
740              Opposite,
741              Link);
742            AMF.Internals.Links.Create_Link
743             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
744              Opposite,
745              Element,
746              Link);
747
748         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
749            AMF.Internals.Links.Create_Link
750             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Attribute_Classifier,
751              Element,
752              Opposite,
753              Link);
754            AMF.Internals.Links.Create_Link
755             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
756              Element,
757              Opposite,
758              Link);
759
760         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
761            AMF.Internals.Links.Create_Link
762             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
763              Element,
764              Opposite,
765              Link);
766
767         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
768            AMF.Internals.Links.Create_Link
769             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
770              Element,
771              Opposite,
772              Link);
773            AMF.Internals.Links.Create_Link
774             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
775              Element,
776              Opposite,
777              Link);
778
779         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
780            AMF.Internals.Links.Create_Link
781             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
782              Element,
783              Opposite,
784              Link);
785            AMF.Internals.Links.Create_Link
786             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
787              Element,
788              Opposite,
789              Link);
790
791         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
792            AMF.Internals.Links.Create_Link
793             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
794              Element,
795              Opposite,
796              Link);
797
798         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
799            AMF.Internals.Links.Create_Link
800             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
801              Element,
802              Opposite,
803              Link);
804
805         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
806            AMF.Internals.Links.Create_Link
807             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
808              Element,
809              Opposite,
810              Link);
811
812         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
813            AMF.Internals.Links.Create_Link
814             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
815              Element,
816              Opposite,
817              Link);
818
819         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
820            AMF.Internals.Links.Create_Link
821             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
822              Opposite,
823              Element,
824              Link);
825
826         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
827            AMF.Internals.Links.Create_Link
828             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
829              Element,
830              Opposite,
831              Link);
832
833         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
834            AMF.Internals.Links.Create_Link
835             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
836              Element,
837              Opposite,
838              Link);
839
840         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
841            AMF.Internals.Links.Create_Link
842             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
843              Element,
844              Opposite,
845              Link);
846
847         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
848            AMF.Internals.Links.Create_Link
849             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
850              Element,
851              Opposite,
852              Link);
853
854         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
855            AMF.Internals.Links.Create_Link
856             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
857              Opposite,
858              Element,
859              Link);
860         end if;
861
862      when AMF.Internals.Tables.OCL_Types.E_OCL_Set_Type =>
863         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
864            AMF.Internals.Links.Create_Link
865             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
866              Element,
867              Opposite,
868              Link);
869
870         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
871            AMF.Internals.Links.Create_Link
872             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
873              Element,
874              Opposite,
875              Link);
876
877         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
878            AMF.Internals.Links.Create_Link
879             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
880              Element,
881              Opposite,
882              Link);
883
884         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
885            AMF.Internals.Links.Create_Link
886             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
887              Element,
888              Opposite,
889              Link);
890            AMF.Internals.Links.Create_Link
891             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
892              Element,
893              Opposite,
894              Link);
895
896         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
897            AMF.Internals.Links.Create_Link
898             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
899              Element,
900              Opposite,
901              Link);
902
903         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
904            AMF.Internals.Links.Create_Link
905             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
906              Element,
907              Opposite,
908              Link);
909
910         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
911            AMF.Internals.Links.Create_Link
912             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
913              Element,
914              Opposite,
915              Link);
916            AMF.Internals.Links.Create_Link
917             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
918              Opposite,
919              Element,
920              Link);
921
922         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
923            AMF.Internals.Links.Create_Link
924             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Attribute_Classifier,
925              Element,
926              Opposite,
927              Link);
928            AMF.Internals.Links.Create_Link
929             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
930              Element,
931              Opposite,
932              Link);
933
934         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
935            AMF.Internals.Links.Create_Link
936             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
937              Element,
938              Opposite,
939              Link);
940
941         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
942            AMF.Internals.Links.Create_Link
943             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
944              Element,
945              Opposite,
946              Link);
947            AMF.Internals.Links.Create_Link
948             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
949              Element,
950              Opposite,
951              Link);
952
953         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
954            AMF.Internals.Links.Create_Link
955             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
956              Element,
957              Opposite,
958              Link);
959            AMF.Internals.Links.Create_Link
960             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
961              Element,
962              Opposite,
963              Link);
964
965         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
966            AMF.Internals.Links.Create_Link
967             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
968              Element,
969              Opposite,
970              Link);
971
972         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
973            AMF.Internals.Links.Create_Link
974             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
975              Element,
976              Opposite,
977              Link);
978
979         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
980            AMF.Internals.Links.Create_Link
981             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
982              Element,
983              Opposite,
984              Link);
985
986         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
987            AMF.Internals.Links.Create_Link
988             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
989              Element,
990              Opposite,
991              Link);
992
993         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
994            AMF.Internals.Links.Create_Link
995             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
996              Opposite,
997              Element,
998              Link);
999
1000         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
1001            AMF.Internals.Links.Create_Link
1002             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1003              Element,
1004              Opposite,
1005              Link);
1006
1007         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
1008            AMF.Internals.Links.Create_Link
1009             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
1010              Element,
1011              Opposite,
1012              Link);
1013
1014         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
1015            AMF.Internals.Links.Create_Link
1016             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1017              Element,
1018              Opposite,
1019              Link);
1020
1021         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
1022            AMF.Internals.Links.Create_Link
1023             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1024              Element,
1025              Opposite,
1026              Link);
1027
1028         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
1029            AMF.Internals.Links.Create_Link
1030             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
1031              Opposite,
1032              Element,
1033              Link);
1034         end if;
1035
1036      when AMF.Internals.Tables.OCL_Types.E_OCL_Null_Literal_Exp =>
1037         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1038            AMF.Internals.Links.Create_Link
1039             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1040              Element,
1041              Opposite,
1042              Link);
1043            AMF.Internals.Links.Create_Link
1044             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1045              Opposite,
1046              Element,
1047              Link);
1048
1049         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1050            AMF.Internals.Links.Create_Link
1051             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1052              Element,
1053              Opposite,
1054              Link);
1055         end if;
1056
1057      when AMF.Internals.Tables.OCL_Types.E_OCL_Type_Exp =>
1058         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1059            AMF.Internals.Links.Create_Link
1060             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1061              Element,
1062              Opposite,
1063              Link);
1064            AMF.Internals.Links.Create_Link
1065             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1066              Opposite,
1067              Element,
1068              Link);
1069
1070         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1071            AMF.Internals.Links.Create_Link
1072             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1073              Element,
1074              Opposite,
1075              Link);
1076         end if;
1077
1078      when AMF.Internals.Tables.OCL_Types.E_OCL_Sequence_Type =>
1079         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
1080            AMF.Internals.Links.Create_Link
1081             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
1082              Element,
1083              Opposite,
1084              Link);
1085
1086         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
1087            AMF.Internals.Links.Create_Link
1088             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1089              Element,
1090              Opposite,
1091              Link);
1092
1093         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
1094            AMF.Internals.Links.Create_Link
1095             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1096              Element,
1097              Opposite,
1098              Link);
1099
1100         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
1101            AMF.Internals.Links.Create_Link
1102             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1103              Element,
1104              Opposite,
1105              Link);
1106            AMF.Internals.Links.Create_Link
1107             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1108              Element,
1109              Opposite,
1110              Link);
1111
1112         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
1113            AMF.Internals.Links.Create_Link
1114             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1115              Element,
1116              Opposite,
1117              Link);
1118
1119         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
1120            AMF.Internals.Links.Create_Link
1121             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1122              Element,
1123              Opposite,
1124              Link);
1125
1126         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1127            AMF.Internals.Links.Create_Link
1128             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1129              Element,
1130              Opposite,
1131              Link);
1132            AMF.Internals.Links.Create_Link
1133             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1134              Opposite,
1135              Element,
1136              Link);
1137
1138         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
1139            AMF.Internals.Links.Create_Link
1140             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Attribute_Classifier,
1141              Element,
1142              Opposite,
1143              Link);
1144            AMF.Internals.Links.Create_Link
1145             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1146              Element,
1147              Opposite,
1148              Link);
1149
1150         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1151            AMF.Internals.Links.Create_Link
1152             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1153              Element,
1154              Opposite,
1155              Link);
1156
1157         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
1158            AMF.Internals.Links.Create_Link
1159             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1160              Element,
1161              Opposite,
1162              Link);
1163            AMF.Internals.Links.Create_Link
1164             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1165              Element,
1166              Opposite,
1167              Link);
1168
1169         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
1170            AMF.Internals.Links.Create_Link
1171             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
1172              Element,
1173              Opposite,
1174              Link);
1175            AMF.Internals.Links.Create_Link
1176             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1177              Element,
1178              Opposite,
1179              Link);
1180
1181         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
1182            AMF.Internals.Links.Create_Link
1183             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1184              Element,
1185              Opposite,
1186              Link);
1187
1188         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
1189            AMF.Internals.Links.Create_Link
1190             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
1191              Element,
1192              Opposite,
1193              Link);
1194
1195         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
1196            AMF.Internals.Links.Create_Link
1197             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1198              Element,
1199              Opposite,
1200              Link);
1201
1202         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
1203            AMF.Internals.Links.Create_Link
1204             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1205              Element,
1206              Opposite,
1207              Link);
1208
1209         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
1210            AMF.Internals.Links.Create_Link
1211             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1212              Opposite,
1213              Element,
1214              Link);
1215
1216         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
1217            AMF.Internals.Links.Create_Link
1218             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1219              Element,
1220              Opposite,
1221              Link);
1222
1223         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
1224            AMF.Internals.Links.Create_Link
1225             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
1226              Element,
1227              Opposite,
1228              Link);
1229
1230         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
1231            AMF.Internals.Links.Create_Link
1232             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1233              Element,
1234              Opposite,
1235              Link);
1236
1237         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
1238            AMF.Internals.Links.Create_Link
1239             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1240              Element,
1241              Opposite,
1242              Link);
1243
1244         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
1245            AMF.Internals.Links.Create_Link
1246             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
1247              Opposite,
1248              Element,
1249              Link);
1250         end if;
1251
1252      when AMF.Internals.Tables.OCL_Types.E_OCL_Expression_In_Ocl =>
1253         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1254            AMF.Internals.Links.Create_Link
1255             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1256              Element,
1257              Opposite,
1258              Link);
1259            AMF.Internals.Links.Create_Link
1260             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1261              Opposite,
1262              Element,
1263              Link);
1264
1265         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1266            AMF.Internals.Links.Create_Link
1267             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1268              Element,
1269              Opposite,
1270              Link);
1271
1272         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
1273            AMF.Internals.Links.Create_Link
1274             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1275              Opposite,
1276              Element,
1277              Link);
1278         end if;
1279
1280      when AMF.Internals.Tables.OCL_Types.E_OCL_Ordered_Set_Type =>
1281         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
1282            AMF.Internals.Links.Create_Link
1283             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
1284              Element,
1285              Opposite,
1286              Link);
1287
1288         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
1289            AMF.Internals.Links.Create_Link
1290             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1291              Element,
1292              Opposite,
1293              Link);
1294
1295         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
1296            AMF.Internals.Links.Create_Link
1297             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1298              Element,
1299              Opposite,
1300              Link);
1301
1302         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
1303            AMF.Internals.Links.Create_Link
1304             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1305              Element,
1306              Opposite,
1307              Link);
1308            AMF.Internals.Links.Create_Link
1309             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1310              Element,
1311              Opposite,
1312              Link);
1313
1314         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
1315            AMF.Internals.Links.Create_Link
1316             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1317              Element,
1318              Opposite,
1319              Link);
1320
1321         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
1322            AMF.Internals.Links.Create_Link
1323             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1324              Element,
1325              Opposite,
1326              Link);
1327
1328         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1329            AMF.Internals.Links.Create_Link
1330             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1331              Element,
1332              Opposite,
1333              Link);
1334            AMF.Internals.Links.Create_Link
1335             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1336              Opposite,
1337              Element,
1338              Link);
1339
1340         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
1341            AMF.Internals.Links.Create_Link
1342             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Attribute_Classifier,
1343              Element,
1344              Opposite,
1345              Link);
1346            AMF.Internals.Links.Create_Link
1347             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1348              Element,
1349              Opposite,
1350              Link);
1351
1352         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1353            AMF.Internals.Links.Create_Link
1354             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1355              Element,
1356              Opposite,
1357              Link);
1358
1359         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
1360            AMF.Internals.Links.Create_Link
1361             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1362              Element,
1363              Opposite,
1364              Link);
1365            AMF.Internals.Links.Create_Link
1366             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1367              Element,
1368              Opposite,
1369              Link);
1370
1371         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
1372            AMF.Internals.Links.Create_Link
1373             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
1374              Element,
1375              Opposite,
1376              Link);
1377            AMF.Internals.Links.Create_Link
1378             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1379              Element,
1380              Opposite,
1381              Link);
1382
1383         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
1384            AMF.Internals.Links.Create_Link
1385             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1386              Element,
1387              Opposite,
1388              Link);
1389
1390         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
1391            AMF.Internals.Links.Create_Link
1392             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
1393              Element,
1394              Opposite,
1395              Link);
1396
1397         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
1398            AMF.Internals.Links.Create_Link
1399             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1400              Element,
1401              Opposite,
1402              Link);
1403
1404         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
1405            AMF.Internals.Links.Create_Link
1406             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1407              Element,
1408              Opposite,
1409              Link);
1410
1411         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
1412            AMF.Internals.Links.Create_Link
1413             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1414              Opposite,
1415              Element,
1416              Link);
1417
1418         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
1419            AMF.Internals.Links.Create_Link
1420             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1421              Element,
1422              Opposite,
1423              Link);
1424
1425         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
1426            AMF.Internals.Links.Create_Link
1427             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
1428              Element,
1429              Opposite,
1430              Link);
1431
1432         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
1433            AMF.Internals.Links.Create_Link
1434             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1435              Element,
1436              Opposite,
1437              Link);
1438
1439         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
1440            AMF.Internals.Links.Create_Link
1441             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1442              Element,
1443              Opposite,
1444              Link);
1445
1446         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
1447            AMF.Internals.Links.Create_Link
1448             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
1449              Opposite,
1450              Element,
1451              Link);
1452         end if;
1453
1454      when AMF.Internals.Tables.OCL_Types.E_OCL_Invalid_Type =>
1455         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
1456            AMF.Internals.Links.Create_Link
1457             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
1458              Element,
1459              Opposite,
1460              Link);
1461
1462         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
1463            AMF.Internals.Links.Create_Link
1464             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1465              Element,
1466              Opposite,
1467              Link);
1468
1469         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
1470            AMF.Internals.Links.Create_Link
1471             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1472              Element,
1473              Opposite,
1474              Link);
1475
1476         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
1477            AMF.Internals.Links.Create_Link
1478             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1479              Element,
1480              Opposite,
1481              Link);
1482            AMF.Internals.Links.Create_Link
1483             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1484              Element,
1485              Opposite,
1486              Link);
1487
1488         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
1489            AMF.Internals.Links.Create_Link
1490             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1491              Element,
1492              Opposite,
1493              Link);
1494
1495         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
1496            AMF.Internals.Links.Create_Link
1497             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1498              Element,
1499              Opposite,
1500              Link);
1501
1502         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1503            AMF.Internals.Links.Create_Link
1504             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1505              Element,
1506              Opposite,
1507              Link);
1508            AMF.Internals.Links.Create_Link
1509             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1510              Opposite,
1511              Element,
1512              Link);
1513
1514         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1515            AMF.Internals.Links.Create_Link
1516             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1517              Element,
1518              Opposite,
1519              Link);
1520
1521         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
1522            AMF.Internals.Links.Create_Link
1523             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1524              Element,
1525              Opposite,
1526              Link);
1527            AMF.Internals.Links.Create_Link
1528             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1529              Element,
1530              Opposite,
1531              Link);
1532
1533         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
1534            AMF.Internals.Links.Create_Link
1535             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1536              Element,
1537              Opposite,
1538              Link);
1539
1540         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
1541            AMF.Internals.Links.Create_Link
1542             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
1543              Element,
1544              Opposite,
1545              Link);
1546
1547         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
1548            AMF.Internals.Links.Create_Link
1549             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1550              Element,
1551              Opposite,
1552              Link);
1553
1554         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
1555            AMF.Internals.Links.Create_Link
1556             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1557              Element,
1558              Opposite,
1559              Link);
1560
1561         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
1562            AMF.Internals.Links.Create_Link
1563             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1564              Opposite,
1565              Element,
1566              Link);
1567
1568         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
1569            AMF.Internals.Links.Create_Link
1570             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1571              Element,
1572              Opposite,
1573              Link);
1574
1575         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
1576            AMF.Internals.Links.Create_Link
1577             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
1578              Element,
1579              Opposite,
1580              Link);
1581
1582         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
1583            AMF.Internals.Links.Create_Link
1584             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1585              Element,
1586              Opposite,
1587              Link);
1588
1589         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
1590            AMF.Internals.Links.Create_Link
1591             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1592              Element,
1593              Opposite,
1594              Link);
1595
1596         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
1597            AMF.Internals.Links.Create_Link
1598             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
1599              Opposite,
1600              Element,
1601              Link);
1602         end if;
1603
1604      when AMF.Internals.Tables.OCL_Types.E_OCL_Template_Parameter_Type =>
1605         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
1606            AMF.Internals.Links.Create_Link
1607             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
1608              Element,
1609              Opposite,
1610              Link);
1611
1612         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
1613            AMF.Internals.Links.Create_Link
1614             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1615              Element,
1616              Opposite,
1617              Link);
1618
1619         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
1620            AMF.Internals.Links.Create_Link
1621             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1622              Element,
1623              Opposite,
1624              Link);
1625
1626         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
1627            AMF.Internals.Links.Create_Link
1628             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1629              Element,
1630              Opposite,
1631              Link);
1632            AMF.Internals.Links.Create_Link
1633             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1634              Element,
1635              Opposite,
1636              Link);
1637
1638         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
1639            AMF.Internals.Links.Create_Link
1640             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1641              Element,
1642              Opposite,
1643              Link);
1644
1645         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
1646            AMF.Internals.Links.Create_Link
1647             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1648              Element,
1649              Opposite,
1650              Link);
1651
1652         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1653            AMF.Internals.Links.Create_Link
1654             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1655              Element,
1656              Opposite,
1657              Link);
1658            AMF.Internals.Links.Create_Link
1659             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1660              Opposite,
1661              Element,
1662              Link);
1663
1664         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1665            AMF.Internals.Links.Create_Link
1666             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1667              Element,
1668              Opposite,
1669              Link);
1670
1671         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
1672            AMF.Internals.Links.Create_Link
1673             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1674              Element,
1675              Opposite,
1676              Link);
1677            AMF.Internals.Links.Create_Link
1678             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1679              Element,
1680              Opposite,
1681              Link);
1682
1683         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
1684            AMF.Internals.Links.Create_Link
1685             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1686              Element,
1687              Opposite,
1688              Link);
1689
1690         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
1691            AMF.Internals.Links.Create_Link
1692             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
1693              Element,
1694              Opposite,
1695              Link);
1696
1697         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
1698            AMF.Internals.Links.Create_Link
1699             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1700              Element,
1701              Opposite,
1702              Link);
1703
1704         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
1705            AMF.Internals.Links.Create_Link
1706             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1707              Element,
1708              Opposite,
1709              Link);
1710
1711         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
1712            AMF.Internals.Links.Create_Link
1713             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1714              Opposite,
1715              Element,
1716              Link);
1717
1718         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
1719            AMF.Internals.Links.Create_Link
1720             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1721              Element,
1722              Opposite,
1723              Link);
1724
1725         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
1726            AMF.Internals.Links.Create_Link
1727             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
1728              Element,
1729              Opposite,
1730              Link);
1731
1732         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
1733            AMF.Internals.Links.Create_Link
1734             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1735              Element,
1736              Opposite,
1737              Link);
1738
1739         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
1740            AMF.Internals.Links.Create_Link
1741             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1742              Element,
1743              Opposite,
1744              Link);
1745
1746         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
1747            AMF.Internals.Links.Create_Link
1748             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
1749              Opposite,
1750              Element,
1751              Link);
1752         end if;
1753
1754      when AMF.Internals.Tables.OCL_Types.E_OCL_Any_Type =>
1755         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
1756            AMF.Internals.Links.Create_Link
1757             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
1758              Element,
1759              Opposite,
1760              Link);
1761
1762         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
1763            AMF.Internals.Links.Create_Link
1764             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1765              Element,
1766              Opposite,
1767              Link);
1768
1769         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
1770            AMF.Internals.Links.Create_Link
1771             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1772              Element,
1773              Opposite,
1774              Link);
1775
1776         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
1777            AMF.Internals.Links.Create_Link
1778             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1779              Element,
1780              Opposite,
1781              Link);
1782            AMF.Internals.Links.Create_Link
1783             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1784              Element,
1785              Opposite,
1786              Link);
1787
1788         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
1789            AMF.Internals.Links.Create_Link
1790             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1791              Element,
1792              Opposite,
1793              Link);
1794
1795         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
1796            AMF.Internals.Links.Create_Link
1797             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1798              Element,
1799              Opposite,
1800              Link);
1801
1802         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1803            AMF.Internals.Links.Create_Link
1804             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1805              Element,
1806              Opposite,
1807              Link);
1808            AMF.Internals.Links.Create_Link
1809             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1810              Opposite,
1811              Element,
1812              Link);
1813
1814         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1815            AMF.Internals.Links.Create_Link
1816             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1817              Element,
1818              Opposite,
1819              Link);
1820
1821         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
1822            AMF.Internals.Links.Create_Link
1823             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1824              Element,
1825              Opposite,
1826              Link);
1827            AMF.Internals.Links.Create_Link
1828             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1829              Element,
1830              Opposite,
1831              Link);
1832
1833         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
1834            AMF.Internals.Links.Create_Link
1835             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1836              Element,
1837              Opposite,
1838              Link);
1839
1840         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
1841            AMF.Internals.Links.Create_Link
1842             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
1843              Element,
1844              Opposite,
1845              Link);
1846
1847         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
1848            AMF.Internals.Links.Create_Link
1849             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1850              Element,
1851              Opposite,
1852              Link);
1853
1854         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
1855            AMF.Internals.Links.Create_Link
1856             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1857              Element,
1858              Opposite,
1859              Link);
1860
1861         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
1862            AMF.Internals.Links.Create_Link
1863             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1864              Opposite,
1865              Element,
1866              Link);
1867
1868         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
1869            AMF.Internals.Links.Create_Link
1870             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1871              Element,
1872              Opposite,
1873              Link);
1874
1875         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
1876            AMF.Internals.Links.Create_Link
1877             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
1878              Element,
1879              Opposite,
1880              Link);
1881
1882         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
1883            AMF.Internals.Links.Create_Link
1884             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1885              Element,
1886              Opposite,
1887              Link);
1888
1889         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
1890            AMF.Internals.Links.Create_Link
1891             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1892              Element,
1893              Opposite,
1894              Link);
1895
1896         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
1897            AMF.Internals.Links.Create_Link
1898             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
1899              Opposite,
1900              Element,
1901              Link);
1902         end if;
1903
1904      when AMF.Internals.Tables.OCL_Types.E_OCL_Message_Type =>
1905         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
1906            AMF.Internals.Links.Create_Link
1907             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Classifier_Feature_Featuring_Classifier,
1908              Element,
1909              Opposite,
1910              Link);
1911
1912         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
1913            AMF.Internals.Links.Create_Link
1914             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1915              Element,
1916              Opposite,
1917              Link);
1918
1919         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
1920            AMF.Internals.Links.Create_Link
1921             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1922              Element,
1923              Opposite,
1924              Link);
1925
1926         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
1927            AMF.Internals.Links.Create_Link
1928             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1929              Element,
1930              Opposite,
1931              Link);
1932            AMF.Internals.Links.Create_Link
1933             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1934              Element,
1935              Opposite,
1936              Link);
1937
1938         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
1939            AMF.Internals.Links.Create_Link
1940             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1941              Element,
1942              Opposite,
1943              Link);
1944
1945         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
1946            AMF.Internals.Links.Create_Link
1947             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1948              Element,
1949              Opposite,
1950              Link);
1951
1952         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1953            AMF.Internals.Links.Create_Link
1954             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1955              Element,
1956              Opposite,
1957              Link);
1958            AMF.Internals.Links.Create_Link
1959             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1960              Opposite,
1961              Element,
1962              Link);
1963
1964         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1965            AMF.Internals.Links.Create_Link
1966             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1967              Element,
1968              Opposite,
1969              Link);
1970
1971         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
1972            AMF.Internals.Links.Create_Link
1973             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Member_Member_Namespace,
1974              Element,
1975              Opposite,
1976              Link);
1977            AMF.Internals.Links.Create_Link
1978             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
1979              Element,
1980              Opposite,
1981              Link);
1982
1983         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
1984            AMF.Internals.Links.Create_Link
1985             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
1986              Element,
1987              Opposite,
1988              Link);
1989
1990         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
1991            AMF.Internals.Links.Create_Link
1992             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Templateable_Element_Owned_Template_Signature_Template,
1993              Element,
1994              Opposite,
1995              Link);
1996
1997         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
1998            AMF.Internals.Links.Create_Link
1999             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2000              Element,
2001              Opposite,
2002              Link);
2003
2004         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
2005            AMF.Internals.Links.Create_Link
2006             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Namespace_Owned_Member_Namespace,
2007              Element,
2008              Opposite,
2009              Link);
2010
2011         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
2012            AMF.Internals.Links.Create_Link
2013             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2014              Opposite,
2015              Element,
2016              Link);
2017
2018         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
2019            AMF.Internals.Links.Create_Link
2020             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2021              Element,
2022              Opposite,
2023              Link);
2024
2025         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
2026            AMF.Internals.Links.Create_Link
2027             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Redefinable_Element_Redefined_Element_Redefinable_Element,
2028              Element,
2029              Opposite,
2030              Link);
2031
2032         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
2033            AMF.Internals.Links.Create_Link
2034             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2035              Element,
2036              Opposite,
2037              Link);
2038
2039         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
2040            AMF.Internals.Links.Create_Link
2041             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2042              Element,
2043              Opposite,
2044              Link);
2045
2046         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
2047            AMF.Internals.Links.Create_Link
2048             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Template_Parameter_Parametered_Element_Template_Parameter,
2049              Opposite,
2050              Element,
2051              Link);
2052         end if;
2053
2054      when AMF.Internals.Tables.OCL_Types.E_OCL_Iterator_Exp =>
2055         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2056            AMF.Internals.Links.Create_Link
2057             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2058              Element,
2059              Opposite,
2060              Link);
2061            AMF.Internals.Links.Create_Link
2062             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2063              Opposite,
2064              Element,
2065              Link);
2066
2067         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2068            AMF.Internals.Links.Create_Link
2069             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2070              Element,
2071              Opposite,
2072              Link);
2073         end if;
2074
2075      when AMF.Internals.Tables.OCL_Types.E_OCL_Unlimited_Natural_Literal_Exp =>
2076         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2077            AMF.Internals.Links.Create_Link
2078             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2079              Element,
2080              Opposite,
2081              Link);
2082            AMF.Internals.Links.Create_Link
2083             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2084              Opposite,
2085              Element,
2086              Link);
2087
2088         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2089            AMF.Internals.Links.Create_Link
2090             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2091              Element,
2092              Opposite,
2093              Link);
2094         end if;
2095
2096      when AMF.Internals.Tables.OCL_Types.E_OCL_String_Literal_Exp =>
2097         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2098            AMF.Internals.Links.Create_Link
2099             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2100              Element,
2101              Opposite,
2102              Link);
2103            AMF.Internals.Links.Create_Link
2104             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2105              Opposite,
2106              Element,
2107              Link);
2108
2109         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2110            AMF.Internals.Links.Create_Link
2111             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2112              Element,
2113              Opposite,
2114              Link);
2115         end if;
2116
2117      when AMF.Internals.Tables.OCL_Types.E_OCL_Integer_Literal_Exp =>
2118         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2119            AMF.Internals.Links.Create_Link
2120             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2121              Element,
2122              Opposite,
2123              Link);
2124            AMF.Internals.Links.Create_Link
2125             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2126              Opposite,
2127              Element,
2128              Link);
2129
2130         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2131            AMF.Internals.Links.Create_Link
2132             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2133              Element,
2134              Opposite,
2135              Link);
2136         end if;
2137
2138      when AMF.Internals.Tables.OCL_Types.E_OCL_Enum_Literal_Exp =>
2139         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2140            AMF.Internals.Links.Create_Link
2141             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2142              Element,
2143              Opposite,
2144              Link);
2145            AMF.Internals.Links.Create_Link
2146             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2147              Opposite,
2148              Element,
2149              Link);
2150
2151         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2152            AMF.Internals.Links.Create_Link
2153             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2154              Element,
2155              Opposite,
2156              Link);
2157         end if;
2158
2159      when AMF.Internals.Tables.OCL_Types.E_OCL_Invalid_Literal_Exp =>
2160         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2161            AMF.Internals.Links.Create_Link
2162             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2163              Element,
2164              Opposite,
2165              Link);
2166            AMF.Internals.Links.Create_Link
2167             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2168              Opposite,
2169              Element,
2170              Link);
2171
2172         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2173            AMF.Internals.Links.Create_Link
2174             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2175              Element,
2176              Opposite,
2177              Link);
2178         end if;
2179
2180      when AMF.Internals.Tables.OCL_Types.E_OCL_Operation_Call_Exp =>
2181         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2182            AMF.Internals.Links.Create_Link
2183             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2184              Element,
2185              Opposite,
2186              Link);
2187            AMF.Internals.Links.Create_Link
2188             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2189              Opposite,
2190              Element,
2191              Link);
2192
2193         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2194            AMF.Internals.Links.Create_Link
2195             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2196              Element,
2197              Opposite,
2198              Link);
2199         end if;
2200
2201      when AMF.Internals.Tables.OCL_Types.E_OCL_If_Exp =>
2202         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2203            AMF.Internals.Links.Create_Link
2204             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2205              Element,
2206              Opposite,
2207              Link);
2208            AMF.Internals.Links.Create_Link
2209             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2210              Opposite,
2211              Element,
2212              Link);
2213
2214         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2215            AMF.Internals.Links.Create_Link
2216             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2217              Element,
2218              Opposite,
2219              Link);
2220         end if;
2221
2222      when AMF.Internals.Tables.OCL_Types.E_OCL_Association_Class_Call_Exp =>
2223         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2224            AMF.Internals.Links.Create_Link
2225             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2226              Element,
2227              Opposite,
2228              Link);
2229            AMF.Internals.Links.Create_Link
2230             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2231              Opposite,
2232              Element,
2233              Link);
2234
2235         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2236            AMF.Internals.Links.Create_Link
2237             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2238              Element,
2239              Opposite,
2240              Link);
2241         end if;
2242
2243      when AMF.Internals.Tables.OCL_Types.E_OCL_Real_Literal_Exp =>
2244         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2245            AMF.Internals.Links.Create_Link
2246             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2247              Element,
2248              Opposite,
2249              Link);
2250            AMF.Internals.Links.Create_Link
2251             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2252              Opposite,
2253              Element,
2254              Link);
2255
2256         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2257            AMF.Internals.Links.Create_Link
2258             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2259              Element,
2260              Opposite,
2261              Link);
2262         end if;
2263
2264      when AMF.Internals.Tables.OCL_Types.E_OCL_Iterate_Exp =>
2265         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2266            AMF.Internals.Links.Create_Link
2267             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2268              Element,
2269              Opposite,
2270              Link);
2271            AMF.Internals.Links.Create_Link
2272             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2273              Opposite,
2274              Element,
2275              Link);
2276
2277         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2278            AMF.Internals.Links.Create_Link
2279             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2280              Element,
2281              Opposite,
2282              Link);
2283         end if;
2284
2285      when AMF.Internals.Tables.OCL_Types.E_OCL_Message_Exp =>
2286         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2287            AMF.Internals.Links.Create_Link
2288             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2289              Element,
2290              Opposite,
2291              Link);
2292            AMF.Internals.Links.Create_Link
2293             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2294              Opposite,
2295              Element,
2296              Link);
2297
2298         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2299            AMF.Internals.Links.Create_Link
2300             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2301              Element,
2302              Opposite,
2303              Link);
2304         end if;
2305
2306      when AMF.Internals.Tables.OCL_Types.E_OCL_Let_Exp =>
2307         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2308            AMF.Internals.Links.Create_Link
2309             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2310              Element,
2311              Opposite,
2312              Link);
2313            AMF.Internals.Links.Create_Link
2314             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2315              Opposite,
2316              Element,
2317              Link);
2318
2319         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2320            AMF.Internals.Links.Create_Link
2321             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2322              Element,
2323              Opposite,
2324              Link);
2325         end if;
2326
2327      when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Literal_Exp =>
2328         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2329            AMF.Internals.Links.Create_Link
2330             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2331              Element,
2332              Opposite,
2333              Link);
2334            AMF.Internals.Links.Create_Link
2335             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2336              Opposite,
2337              Element,
2338              Link);
2339
2340         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2341            AMF.Internals.Links.Create_Link
2342             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2343              Element,
2344              Opposite,
2345              Link);
2346         end if;
2347
2348      when AMF.Internals.Tables.OCL_Types.E_OCL_Unspecified_Value_Exp =>
2349         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2350            AMF.Internals.Links.Create_Link
2351             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2352              Element,
2353              Opposite,
2354              Link);
2355            AMF.Internals.Links.Create_Link
2356             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2357              Opposite,
2358              Element,
2359              Link);
2360
2361         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2362            AMF.Internals.Links.Create_Link
2363             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2364              Element,
2365              Opposite,
2366              Link);
2367         end if;
2368
2369      when AMF.Internals.Tables.OCL_Types.E_OCL_Variable =>
2370         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2371            AMF.Internals.Links.Create_Link
2372             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2373              Element,
2374              Opposite,
2375              Link);
2376            AMF.Internals.Links.Create_Link
2377             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2378              Opposite,
2379              Element,
2380              Link);
2381
2382         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2383            AMF.Internals.Links.Create_Link
2384             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2385              Element,
2386              Opposite,
2387              Link);
2388         end if;
2389
2390      when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Item =>
2391         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2392            AMF.Internals.Links.Create_Link
2393             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2394              Element,
2395              Opposite,
2396              Link);
2397            AMF.Internals.Links.Create_Link
2398             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2399              Opposite,
2400              Element,
2401              Link);
2402
2403         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2404            AMF.Internals.Links.Create_Link
2405             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2406              Element,
2407              Opposite,
2408              Link);
2409         end if;
2410
2411      when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Range =>
2412         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2413            AMF.Internals.Links.Create_Link
2414             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2415              Element,
2416              Opposite,
2417              Link);
2418            AMF.Internals.Links.Create_Link
2419             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2420              Opposite,
2421              Element,
2422              Link);
2423
2424         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2425            AMF.Internals.Links.Create_Link
2426             (AMF.Internals.Tables.UML_Metamodel.MA_UML_Element_Owned_Element_Owner,
2427              Element,
2428              Opposite,
2429              Link);
2430         end if;
2431
2432      when others =>
2433         null;
2434   end case;
2435end Construct_Union;
2436