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: 3646 $ $Date: 2013-01-07 22:05:34 +0400 (Mon, 07 Jan 2013) $
43------------------------------------------------------------------------------
44--  This file is generated, don't edit it.
45------------------------------------------------------------------------------
46with AMF.Holders.Elements;
47with AMF.Holders.Reals;
48with AMF.Holders.Unlimited_Naturals;
49with AMF.Internals.Helpers;
50with AMF.Internals.Holders.OCL_Holders;
51with AMF.Internals.Holders.UML_Holders;
52with AMF.Internals.Tables.OCL_Element_Table;
53with AMF.Internals.Tables.OCL_Metamodel;
54with AMF.Internals.Tables.OCL_Types;
55with AMF.Internals.Tables.UML_Metamodel;
56with AMF.OCL.Any_Types;
57with AMF.OCL.Association_Class_Call_Exps;
58with AMF.OCL.Bag_Types;
59with AMF.OCL.Boolean_Literal_Exps;
60with AMF.OCL.Collection_Items;
61with AMF.OCL.Collection_Literal_Exps;
62with AMF.OCL.Collection_Literal_Parts.Collections;
63with AMF.OCL.Collection_Ranges;
64with AMF.OCL.Collection_Types;
65with AMF.OCL.Enum_Literal_Exps;
66with AMF.OCL.Expression_In_Ocls;
67with AMF.OCL.Holders.Collection_Kinds;
68with AMF.OCL.If_Exps;
69with AMF.OCL.Integer_Literal_Exps;
70with AMF.OCL.Invalid_Literal_Exps;
71with AMF.OCL.Invalid_Types;
72with AMF.OCL.Iterate_Exps;
73with AMF.OCL.Iterator_Exps;
74with AMF.OCL.Let_Exps;
75with AMF.OCL.Message_Exps;
76with AMF.OCL.Message_Types;
77with AMF.OCL.Null_Literal_Exps;
78with AMF.OCL.Ocl_Expressions.Collections;
79with AMF.OCL.Operation_Call_Exps;
80with AMF.OCL.Ordered_Set_Types;
81with AMF.OCL.Property_Call_Exps;
82with AMF.OCL.Real_Literal_Exps;
83with AMF.OCL.Sequence_Types;
84with AMF.OCL.Set_Types;
85with AMF.OCL.State_Exps;
86with AMF.OCL.String_Literal_Exps;
87with AMF.OCL.Template_Parameter_Types;
88with AMF.OCL.Tuple_Literal_Exps;
89with AMF.OCL.Tuple_Literal_Parts.Collections;
90with AMF.OCL.Tuple_Types;
91with AMF.OCL.Type_Exps;
92with AMF.OCL.Unlimited_Natural_Literal_Exps;
93with AMF.OCL.Unspecified_Value_Exps;
94with AMF.OCL.Variable_Exps;
95with AMF.OCL.Variables.Collections;
96with AMF.OCL.Void_Types;
97with AMF.String_Collections.Internals;
98with AMF.UML.Association_Classes;
99with AMF.UML.Behaviors;
100with AMF.UML.Call_Operation_Actions;
101with AMF.UML.Classifier_Template_Parameters;
102with AMF.UML.Classifiers.Collections;
103with AMF.UML.Collaboration_Uses.Collections;
104with AMF.UML.Comments.Collections;
105with AMF.UML.Constraints.Collections;
106with AMF.UML.Dependencies.Collections;
107with AMF.UML.Element_Imports.Collections;
108with AMF.UML.Elements.Collections;
109with AMF.UML.Enumeration_Literals;
110with AMF.UML.Features.Collections;
111with AMF.UML.Generalization_Sets.Collections;
112with AMF.UML.Generalizations.Collections;
113with AMF.UML.Holders.Visibility_Kinds;
114with AMF.UML.Named_Elements.Collections;
115with AMF.UML.Namespaces;
116with AMF.UML.Operations.Collections;
117with AMF.UML.Package_Imports.Collections;
118with AMF.UML.Packageable_Elements.Collections;
119with AMF.UML.Packages;
120with AMF.UML.Parameters;
121with AMF.UML.Properties.Collections;
122with AMF.UML.Redefinable_Elements.Collections;
123with AMF.UML.Redefinable_Template_Signatures;
124with AMF.UML.Send_Signal_Actions;
125with AMF.UML.Signals;
126with AMF.UML.States;
127with AMF.UML.String_Expressions;
128with AMF.UML.Substitutions.Collections;
129with AMF.UML.Template_Bindings.Collections;
130with AMF.UML.Template_Parameters;
131with AMF.UML.Template_Signatures;
132with AMF.UML.Types;
133with AMF.UML.Use_Cases.Collections;
134with League.Holders.Booleans;
135with League.Holders.Integers;
136
137package body AMF.Internals.Tables.OCL_Reflection is
138
139   ---------
140   -- Get --
141   ---------
142
143   function Get
144    (Self     : AMF.Internals.AMF_Element;
145     Property : CMOF_Element) return League.Holders.Holder
146   is
147
148      function OCL_Any_Type_Get return League.Holders.Holder;
149      --  Returns attribute's value of instance of AnyType class.
150
151      function OCL_Association_Class_Call_Exp_Get return League.Holders.Holder;
152      --  Returns attribute's value of instance of AssociationClassCallExp class.
153
154      function OCL_Bag_Type_Get return League.Holders.Holder;
155      --  Returns attribute's value of instance of BagType class.
156
157      function OCL_Boolean_Literal_Exp_Get return League.Holders.Holder;
158      --  Returns attribute's value of instance of BooleanLiteralExp class.
159
160      function OCL_Collection_Item_Get return League.Holders.Holder;
161      --  Returns attribute's value of instance of CollectionItem class.
162
163      function OCL_Collection_Literal_Exp_Get return League.Holders.Holder;
164      --  Returns attribute's value of instance of CollectionLiteralExp class.
165
166      function OCL_Collection_Range_Get return League.Holders.Holder;
167      --  Returns attribute's value of instance of CollectionRange class.
168
169      function OCL_Collection_Type_Get return League.Holders.Holder;
170      --  Returns attribute's value of instance of CollectionType class.
171
172      function OCL_Enum_Literal_Exp_Get return League.Holders.Holder;
173      --  Returns attribute's value of instance of EnumLiteralExp class.
174
175      function OCL_Expression_In_Ocl_Get return League.Holders.Holder;
176      --  Returns attribute's value of instance of ExpressionInOcl class.
177
178      function OCL_If_Exp_Get return League.Holders.Holder;
179      --  Returns attribute's value of instance of IfExp class.
180
181      function OCL_Integer_Literal_Exp_Get return League.Holders.Holder;
182      --  Returns attribute's value of instance of IntegerLiteralExp class.
183
184      function OCL_Invalid_Literal_Exp_Get return League.Holders.Holder;
185      --  Returns attribute's value of instance of InvalidLiteralExp class.
186
187      function OCL_Invalid_Type_Get return League.Holders.Holder;
188      --  Returns attribute's value of instance of InvalidType class.
189
190      function OCL_Iterate_Exp_Get return League.Holders.Holder;
191      --  Returns attribute's value of instance of IterateExp class.
192
193      function OCL_Iterator_Exp_Get return League.Holders.Holder;
194      --  Returns attribute's value of instance of IteratorExp class.
195
196      function OCL_Let_Exp_Get return League.Holders.Holder;
197      --  Returns attribute's value of instance of LetExp class.
198
199      function OCL_Message_Exp_Get return League.Holders.Holder;
200      --  Returns attribute's value of instance of MessageExp class.
201
202      function OCL_Message_Type_Get return League.Holders.Holder;
203      --  Returns attribute's value of instance of MessageType class.
204
205      function OCL_Null_Literal_Exp_Get return League.Holders.Holder;
206      --  Returns attribute's value of instance of NullLiteralExp class.
207
208      function OCL_Operation_Call_Exp_Get return League.Holders.Holder;
209      --  Returns attribute's value of instance of OperationCallExp class.
210
211      function OCL_Ordered_Set_Type_Get return League.Holders.Holder;
212      --  Returns attribute's value of instance of OrderedSetType class.
213
214      function OCL_Property_Call_Exp_Get return League.Holders.Holder;
215      --  Returns attribute's value of instance of PropertyCallExp class.
216
217      function OCL_Real_Literal_Exp_Get return League.Holders.Holder;
218      --  Returns attribute's value of instance of RealLiteralExp class.
219
220      function OCL_Sequence_Type_Get return League.Holders.Holder;
221      --  Returns attribute's value of instance of SequenceType class.
222
223      function OCL_Set_Type_Get return League.Holders.Holder;
224      --  Returns attribute's value of instance of SetType class.
225
226      function OCL_State_Exp_Get return League.Holders.Holder;
227      --  Returns attribute's value of instance of StateExp class.
228
229      function OCL_String_Literal_Exp_Get return League.Holders.Holder;
230      --  Returns attribute's value of instance of StringLiteralExp class.
231
232      function OCL_Template_Parameter_Type_Get return League.Holders.Holder;
233      --  Returns attribute's value of instance of TemplateParameterType class.
234
235      function OCL_Tuple_Literal_Exp_Get return League.Holders.Holder;
236      --  Returns attribute's value of instance of TupleLiteralExp class.
237
238      function OCL_Tuple_Literal_Part_Get return League.Holders.Holder;
239      --  Returns attribute's value of instance of TupleLiteralPart class.
240
241      function OCL_Tuple_Type_Get return League.Holders.Holder;
242      --  Returns attribute's value of instance of TupleType class.
243
244      function OCL_Type_Exp_Get return League.Holders.Holder;
245      --  Returns attribute's value of instance of TypeExp class.
246
247      function OCL_Unlimited_Natural_Literal_Exp_Get return League.Holders.Holder;
248      --  Returns attribute's value of instance of UnlimitedNaturalLiteralExp class.
249
250      function OCL_Unspecified_Value_Exp_Get return League.Holders.Holder;
251      --  Returns attribute's value of instance of UnspecifiedValueExp class.
252
253      function OCL_Variable_Get return League.Holders.Holder;
254      --  Returns attribute's value of instance of Variable class.
255
256      function OCL_Variable_Exp_Get return League.Holders.Holder;
257      --  Returns attribute's value of instance of VariableExp class.
258
259      function OCL_Void_Type_Get return League.Holders.Holder;
260      --  Returns attribute's value of instance of VoidType class.
261
262      ----------------------
263      -- OCL_Any_Type_Get --
264      ----------------------
265
266      function OCL_Any_Type_Get return League.Holders.Holder is
267      begin
268         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
269            --  Classifier::attribute : Property
270
271            return
272              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
273               (AMF.OCL.Any_Types.OCL_Any_Type_Access
274                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
275
276         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
277            --  NamedElement::clientDependency : Dependency
278
279            return
280              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
281               (AMF.OCL.Any_Types.OCL_Any_Type_Access
282                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
283
284         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
285            --  Classifier::collaborationUse : CollaborationUse
286
287            return
288              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
289               (AMF.OCL.Any_Types.OCL_Any_Type_Access
290                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
291
292         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
293            --  Namespace::elementImport : ElementImport
294
295            return
296              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
297               (AMF.OCL.Any_Types.OCL_Any_Type_Access
298                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
299
300         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
301            --  Classifier::feature : Feature
302
303            return
304              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
305               (AMF.OCL.Any_Types.OCL_Any_Type_Access
306                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
307
308         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
309            --  Classifier::general : Classifier
310
311            return
312              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
313               (AMF.OCL.Any_Types.OCL_Any_Type_Access
314                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
315
316         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
317            --  Classifier::generalization : Generalization
318
319            return
320              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
321               (AMF.OCL.Any_Types.OCL_Any_Type_Access
322                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
323
324         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
325            --  Namespace::importedMember : PackageableElement
326
327            return
328              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
329               (AMF.OCL.Any_Types.OCL_Any_Type_Access
330                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
331
332         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
333            --  Classifier::inheritedMember : NamedElement
334
335            return
336              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
337               (AMF.OCL.Any_Types.OCL_Any_Type_Access
338                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
339
340         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
341            --  Classifier::isAbstract : Boolean
342
343            return
344              League.Holders.Booleans.To_Holder
345               (AMF.OCL.Any_Types.OCL_Any_Type_Access
346                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
347
348         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
349            --  Classifier::isFinalSpecialization : Boolean
350
351            return
352              League.Holders.Booleans.To_Holder
353               (AMF.OCL.Any_Types.OCL_Any_Type_Access
354                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
355
356         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
357            --  RedefinableElement::isLeaf : Boolean
358
359            return
360              League.Holders.Booleans.To_Holder
361               (AMF.OCL.Any_Types.OCL_Any_Type_Access
362                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
363
364         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
365            --  Namespace::member : NamedElement
366
367            return
368              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
369               (AMF.OCL.Any_Types.OCL_Any_Type_Access
370                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
371
372         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
373            --  NamedElement::name : String
374
375            return
376              AMF.Holders.To_Holder
377               (AMF.OCL.Any_Types.OCL_Any_Type_Access
378                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
379
380         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
381            --  NamedElement::nameExpression : StringExpression
382
383            return
384              AMF.Internals.Holders.UML_Holders.To_Holder
385               (AMF.UML.String_Expressions.UML_String_Expression_Access'
386                 (AMF.OCL.Any_Types.OCL_Any_Type_Access
387                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
388
389         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
390            --  NamedElement::namespace : Namespace
391
392            return
393              AMF.Internals.Holders.UML_Holders.To_Holder
394               (AMF.UML.Namespaces.UML_Namespace_Access'
395                 (AMF.OCL.Any_Types.OCL_Any_Type_Access
396                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
397
398         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
399            --  Element::ownedComment : Comment
400
401            return
402              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
403               (AMF.OCL.Any_Types.OCL_Any_Type_Access
404                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
405
406         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
407            --  Element::ownedElement : Element
408
409            return
410              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
411               (AMF.OCL.Any_Types.OCL_Any_Type_Access
412                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
413
414         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
415            --  Namespace::ownedMember : NamedElement
416
417            return
418              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
419               (AMF.OCL.Any_Types.OCL_Any_Type_Access
420                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
421
422         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
423            --  Namespace::ownedRule : Constraint
424
425            return
426              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
427               (AMF.OCL.Any_Types.OCL_Any_Type_Access
428                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
429
430         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
431            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
432
433            return
434              AMF.Internals.Holders.UML_Holders.To_Holder
435               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
436                 (AMF.OCL.Any_Types.OCL_Any_Type_Access
437                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
438
439         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
440            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
441
442            return
443              AMF.Internals.Holders.UML_Holders.To_Holder
444               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
445                 (AMF.OCL.Any_Types.OCL_Any_Type_Access
446                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
447
448         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
449            --  Classifier::ownedUseCase : UseCase
450
451            return
452              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
453               (AMF.OCL.Any_Types.OCL_Any_Type_Access
454                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
455
456         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
457            --  Element::owner : Element
458
459            return
460              AMF.Internals.Holders.UML_Holders.To_Holder
461               (AMF.UML.Elements.UML_Element_Access'
462                 (AMF.OCL.Any_Types.OCL_Any_Type_Access
463                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
464
465         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
466            --  ParameterableElement::owningTemplateParameter : TemplateParameter
467
468            return
469              AMF.Internals.Holders.UML_Holders.To_Holder
470               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
471                 (AMF.OCL.Any_Types.OCL_Any_Type_Access
472                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
473
474         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
475            --  Type::package : Package
476
477            return
478              AMF.Internals.Holders.UML_Holders.To_Holder
479               (AMF.UML.Packages.UML_Package_Access'
480                 (AMF.OCL.Any_Types.OCL_Any_Type_Access
481                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
482
483         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
484            --  Namespace::packageImport : PackageImport
485
486            return
487              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
488               (AMF.OCL.Any_Types.OCL_Any_Type_Access
489                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
490
491         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
492            --  Classifier::powertypeExtent : GeneralizationSet
493
494            return
495              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
496               (AMF.OCL.Any_Types.OCL_Any_Type_Access
497                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
498
499         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
500            --  NamedElement::qualifiedName : String
501
502            return
503              AMF.Holders.To_Holder
504               (AMF.OCL.Any_Types.OCL_Any_Type_Access
505                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
506
507         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
508            --  Classifier::redefinedClassifier : Classifier
509
510            return
511              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
512               (AMF.OCL.Any_Types.OCL_Any_Type_Access
513                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
514
515         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
516            --  RedefinableElement::redefinedElement : RedefinableElement
517
518            return
519              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
520               (AMF.OCL.Any_Types.OCL_Any_Type_Access
521                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
522
523         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
524            --  RedefinableElement::redefinitionContext : Classifier
525
526            return
527              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
528               (AMF.OCL.Any_Types.OCL_Any_Type_Access
529                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
530
531         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
532            --  Classifier::representation : CollaborationUse
533
534            return
535              AMF.Internals.Holders.UML_Holders.To_Holder
536               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
537                 (AMF.OCL.Any_Types.OCL_Any_Type_Access
538                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
539
540         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
541            --  Classifier::substitution : Substitution
542
543            return
544              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
545               (AMF.OCL.Any_Types.OCL_Any_Type_Access
546                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
547
548         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
549            --  TemplateableElement::templateBinding : TemplateBinding
550
551            return
552              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
553               (AMF.OCL.Any_Types.OCL_Any_Type_Access
554                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
555
556         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
557            --  Classifier::templateParameter : ClassifierTemplateParameter
558
559            return
560              AMF.Internals.Holders.UML_Holders.To_Holder
561               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
562                 (AMF.OCL.Any_Types.OCL_Any_Type_Access
563                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
564
565         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
566            --  ParameterableElement::templateParameter : TemplateParameter
567
568            return
569              AMF.Internals.Holders.UML_Holders.To_Holder
570               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
571                 (AMF.OCL.Any_Types.OCL_Any_Type_Access
572                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
573
574         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
575            --  Classifier::useCase : UseCase
576
577            return
578              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
579               (AMF.OCL.Any_Types.OCL_Any_Type_Access
580                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
581
582         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
583            --  NamedElement::visibility : VisibilityKind
584
585            return
586              AMF.UML.Holders.To_Holder
587               (AMF.OCL.Any_Types.OCL_Any_Type_Access
588                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
589
590         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
591            --  PackageableElement::visibility : VisibilityKind
592
593            return
594              AMF.UML.Holders.Visibility_Kinds.To_Holder
595               (AMF.OCL.Any_Types.OCL_Any_Type_Access
596                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
597
598         else
599            raise Program_Error;
600         end if;
601      end OCL_Any_Type_Get;
602
603      ----------------------------------------
604      -- OCL_Association_Class_Call_Exp_Get --
605      ----------------------------------------
606
607      function OCL_Association_Class_Call_Exp_Get return League.Holders.Holder is
608      begin
609         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
610            --  NamedElement::clientDependency : Dependency
611
612            return
613              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
614               (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
615                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
616
617         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
618            --  NamedElement::name : String
619
620            return
621              AMF.Holders.To_Holder
622               (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
623                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
624
625         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
626            --  NamedElement::nameExpression : StringExpression
627
628            return
629              AMF.Internals.Holders.UML_Holders.To_Holder
630               (AMF.UML.String_Expressions.UML_String_Expression_Access'
631                 (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
632                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
633
634         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
635            --  NamedElement::namespace : Namespace
636
637            return
638              AMF.Internals.Holders.UML_Holders.To_Holder
639               (AMF.UML.Namespaces.UML_Namespace_Access'
640                 (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
641                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
642
643         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Navigation_Call_Exp_Navigation_Source_A_Exp9 then
644            --  NavigationCallExp::navigationSource : Property
645
646            return
647              AMF.Internals.Holders.UML_Holders.To_Holder
648               (AMF.UML.Properties.UML_Property_Access'
649                 (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
650                   (AMF.Internals.Helpers.To_Element (Self)).Get_Navigation_Source));
651
652         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
653            --  Element::ownedComment : Comment
654
655            return
656              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
657               (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
658                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
659
660         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
661            --  Element::ownedElement : Element
662
663            return
664              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
665               (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
666                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
667
668         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
669            --  Element::owner : Element
670
671            return
672              AMF.Internals.Holders.UML_Holders.To_Holder
673               (AMF.UML.Elements.UML_Element_Access'
674                 (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
675                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
676
677         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
678            --  NamedElement::qualifiedName : String
679
680            return
681              AMF.Holders.To_Holder
682               (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
683                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
684
685         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Navigation_Call_Exp_Qualifier_A_Parent_Nav then
686            --  NavigationCallExp::qualifier : OclExpression
687
688            return
689              AMF.OCL.Ocl_Expressions.Collections.OCL_Ocl_Expression_Collections.Internals.To_Holder
690               (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
691                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualifier);
692
693         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Association_Class_Call_Exp_Referred_Association_Class_A_Referring_Exp then
694            --  AssociationClassCallExp::referredAssociationClass : AssociationClass
695
696            return
697              AMF.Internals.Holders.UML_Holders.To_Holder
698               (AMF.UML.Association_Classes.UML_Association_Class_Access'
699                 (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
700                   (AMF.Internals.Helpers.To_Element (Self)).Get_Referred_Association_Class));
701
702         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Call_Exp_Source_A_Applied_Element then
703            --  CallExp::source : OclExpression
704
705            return
706              AMF.Internals.Holders.OCL_Holders.To_Holder
707               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
708                 (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
709                   (AMF.Internals.Helpers.To_Element (Self)).Get_Source));
710
711         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
712            --  TypedElement::type : Type
713
714            return
715              AMF.Internals.Holders.UML_Holders.To_Holder
716               (AMF.UML.Types.UML_Type_Access'
717                 (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
718                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
719
720         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
721            --  NamedElement::visibility : VisibilityKind
722
723            return
724              AMF.UML.Holders.To_Holder
725               (AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
726                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
727
728         else
729            raise Program_Error;
730         end if;
731      end OCL_Association_Class_Call_Exp_Get;
732
733      ----------------------
734      -- OCL_Bag_Type_Get --
735      ----------------------
736
737      function OCL_Bag_Type_Get return League.Holders.Holder is
738      begin
739         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
740            --  Classifier::attribute : Property
741
742            return
743              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
744               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
745                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
746
747         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
748            --  NamedElement::clientDependency : Dependency
749
750            return
751              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
752               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
753                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
754
755         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
756            --  Classifier::collaborationUse : CollaborationUse
757
758            return
759              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
760               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
761                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
762
763         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
764            --  Namespace::elementImport : ElementImport
765
766            return
767              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
768               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
769                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
770
771         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Type_Element_Type_A_Type1 then
772            --  CollectionType::elementType : Classifier
773
774            return
775              AMF.Internals.Holders.UML_Holders.To_Holder
776               (AMF.UML.Classifiers.UML_Classifier_Access'
777                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
778                   (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Type));
779
780         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
781            --  Classifier::feature : Feature
782
783            return
784              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
785               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
786                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
787
788         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
789            --  Classifier::general : Classifier
790
791            return
792              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
793               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
794                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
795
796         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
797            --  Classifier::generalization : Generalization
798
799            return
800              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
801               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
802                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
803
804         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
805            --  Namespace::importedMember : PackageableElement
806
807            return
808              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
809               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
810                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
811
812         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
813            --  Classifier::inheritedMember : NamedElement
814
815            return
816              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
817               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
818                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
819
820         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
821            --  Classifier::isAbstract : Boolean
822
823            return
824              League.Holders.Booleans.To_Holder
825               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
826                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
827
828         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
829            --  Classifier::isFinalSpecialization : Boolean
830
831            return
832              League.Holders.Booleans.To_Holder
833               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
834                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
835
836         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
837            --  RedefinableElement::isLeaf : Boolean
838
839            return
840              League.Holders.Booleans.To_Holder
841               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
842                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
843
844         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
845            --  Namespace::member : NamedElement
846
847            return
848              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
849               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
850                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
851
852         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
853            --  NamedElement::name : String
854
855            return
856              AMF.Holders.To_Holder
857               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
858                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
859
860         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
861            --  NamedElement::nameExpression : StringExpression
862
863            return
864              AMF.Internals.Holders.UML_Holders.To_Holder
865               (AMF.UML.String_Expressions.UML_String_Expression_Access'
866                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
867                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
868
869         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
870            --  NamedElement::namespace : Namespace
871
872            return
873              AMF.Internals.Holders.UML_Holders.To_Holder
874               (AMF.UML.Namespaces.UML_Namespace_Access'
875                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
876                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
877
878         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
879            --  DataType::ownedAttribute : Property
880
881            return
882              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
883               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
884                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Attribute);
885
886         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
887            --  Element::ownedComment : Comment
888
889            return
890              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
891               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
892                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
893
894         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
895            --  Element::ownedElement : Element
896
897            return
898              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
899               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
900                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
901
902         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
903            --  Namespace::ownedMember : NamedElement
904
905            return
906              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
907               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
908                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
909
910         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
911            --  DataType::ownedOperation : Operation
912
913            return
914              AMF.UML.Operations.Collections.UML_Operation_Collections.Internals.To_Holder
915               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
916                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Operation);
917
918         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
919            --  Namespace::ownedRule : Constraint
920
921            return
922              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
923               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
924                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
925
926         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
927            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
928
929            return
930              AMF.Internals.Holders.UML_Holders.To_Holder
931               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
932                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
933                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
934
935         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
936            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
937
938            return
939              AMF.Internals.Holders.UML_Holders.To_Holder
940               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
941                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
942                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
943
944         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
945            --  Classifier::ownedUseCase : UseCase
946
947            return
948              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
949               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
950                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
951
952         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
953            --  Element::owner : Element
954
955            return
956              AMF.Internals.Holders.UML_Holders.To_Holder
957               (AMF.UML.Elements.UML_Element_Access'
958                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
959                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
960
961         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
962            --  ParameterableElement::owningTemplateParameter : TemplateParameter
963
964            return
965              AMF.Internals.Holders.UML_Holders.To_Holder
966               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
967                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
968                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
969
970         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
971            --  Type::package : Package
972
973            return
974              AMF.Internals.Holders.UML_Holders.To_Holder
975               (AMF.UML.Packages.UML_Package_Access'
976                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
977                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
978
979         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
980            --  Namespace::packageImport : PackageImport
981
982            return
983              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
984               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
985                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
986
987         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
988            --  Classifier::powertypeExtent : GeneralizationSet
989
990            return
991              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
992               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
993                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
994
995         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
996            --  NamedElement::qualifiedName : String
997
998            return
999              AMF.Holders.To_Holder
1000               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1001                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
1002
1003         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
1004            --  Classifier::redefinedClassifier : Classifier
1005
1006            return
1007              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
1008               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1009                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
1010
1011         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
1012            --  RedefinableElement::redefinedElement : RedefinableElement
1013
1014            return
1015              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
1016               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1017                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
1018
1019         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
1020            --  RedefinableElement::redefinitionContext : Classifier
1021
1022            return
1023              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
1024               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1025                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
1026
1027         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
1028            --  Classifier::representation : CollaborationUse
1029
1030            return
1031              AMF.Internals.Holders.UML_Holders.To_Holder
1032               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
1033                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1034                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
1035
1036         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
1037            --  Classifier::substitution : Substitution
1038
1039            return
1040              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
1041               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1042                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
1043
1044         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
1045            --  TemplateableElement::templateBinding : TemplateBinding
1046
1047            return
1048              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
1049               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1050                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
1051
1052         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
1053            --  Classifier::templateParameter : ClassifierTemplateParameter
1054
1055            return
1056              AMF.Internals.Holders.UML_Holders.To_Holder
1057               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
1058                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1059                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
1060
1061         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
1062            --  ParameterableElement::templateParameter : TemplateParameter
1063
1064            return
1065              AMF.Internals.Holders.UML_Holders.To_Holder
1066               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
1067                 (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1068                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
1069
1070         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
1071            --  Classifier::useCase : UseCase
1072
1073            return
1074              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
1075               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1076                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
1077
1078         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
1079            --  NamedElement::visibility : VisibilityKind
1080
1081            return
1082              AMF.UML.Holders.To_Holder
1083               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1084                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
1085
1086         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
1087            --  PackageableElement::visibility : VisibilityKind
1088
1089            return
1090              AMF.UML.Holders.Visibility_Kinds.To_Holder
1091               (AMF.OCL.Bag_Types.OCL_Bag_Type_Access
1092                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
1093
1094         else
1095            raise Program_Error;
1096         end if;
1097      end OCL_Bag_Type_Get;
1098
1099      ---------------------------------
1100      -- OCL_Boolean_Literal_Exp_Get --
1101      ---------------------------------
1102
1103      function OCL_Boolean_Literal_Exp_Get return League.Holders.Holder is
1104      begin
1105         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Boolean_Literal_Exp_Boolean_Symbol then
1106            --  BooleanLiteralExp::booleanSymbol : Boolean
1107
1108            return
1109              League.Holders.Booleans.To_Holder
1110               (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1111                 (AMF.Internals.Helpers.To_Element (Self)).Get_Boolean_Symbol);
1112
1113         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
1114            --  NamedElement::clientDependency : Dependency
1115
1116            return
1117              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
1118               (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1119                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
1120
1121         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
1122            --  NamedElement::name : String
1123
1124            return
1125              AMF.Holders.To_Holder
1126               (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1127                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
1128
1129         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1130            --  NamedElement::nameExpression : StringExpression
1131
1132            return
1133              AMF.Internals.Holders.UML_Holders.To_Holder
1134               (AMF.UML.String_Expressions.UML_String_Expression_Access'
1135                 (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1136                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
1137
1138         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
1139            --  NamedElement::namespace : Namespace
1140
1141            return
1142              AMF.Internals.Holders.UML_Holders.To_Holder
1143               (AMF.UML.Namespaces.UML_Namespace_Access'
1144                 (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1145                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
1146
1147         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1148            --  Element::ownedComment : Comment
1149
1150            return
1151              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
1152               (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1153                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
1154
1155         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
1156            --  Element::ownedElement : Element
1157
1158            return
1159              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
1160               (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1161                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
1162
1163         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
1164            --  Element::owner : Element
1165
1166            return
1167              AMF.Internals.Holders.UML_Holders.To_Holder
1168               (AMF.UML.Elements.UML_Element_Access'
1169                 (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1170                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
1171
1172         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
1173            --  NamedElement::qualifiedName : String
1174
1175            return
1176              AMF.Holders.To_Holder
1177               (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1178                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
1179
1180         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
1181            --  TypedElement::type : Type
1182
1183            return
1184              AMF.Internals.Holders.UML_Holders.To_Holder
1185               (AMF.UML.Types.UML_Type_Access'
1186                 (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1187                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
1188
1189         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
1190            --  NamedElement::visibility : VisibilityKind
1191
1192            return
1193              AMF.UML.Holders.To_Holder
1194               (AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
1195                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
1196
1197         else
1198            raise Program_Error;
1199         end if;
1200      end OCL_Boolean_Literal_Exp_Get;
1201
1202      -----------------------------
1203      -- OCL_Collection_Item_Get --
1204      -----------------------------
1205
1206      function OCL_Collection_Item_Get return League.Holders.Holder is
1207      begin
1208         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
1209            --  NamedElement::clientDependency : Dependency
1210
1211            return
1212              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
1213               (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1214                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
1215
1216         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Item_Item_A_Item1 then
1217            --  CollectionItem::item : OclExpression
1218
1219            return
1220              AMF.Internals.Holders.OCL_Holders.To_Holder
1221               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
1222                 (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1223                   (AMF.Internals.Helpers.To_Element (Self)).Get_Item));
1224
1225         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
1226            --  NamedElement::name : String
1227
1228            return
1229              AMF.Holders.To_Holder
1230               (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1231                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
1232
1233         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1234            --  NamedElement::nameExpression : StringExpression
1235
1236            return
1237              AMF.Internals.Holders.UML_Holders.To_Holder
1238               (AMF.UML.String_Expressions.UML_String_Expression_Access'
1239                 (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1240                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
1241
1242         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
1243            --  NamedElement::namespace : Namespace
1244
1245            return
1246              AMF.Internals.Holders.UML_Holders.To_Holder
1247               (AMF.UML.Namespaces.UML_Namespace_Access'
1248                 (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1249                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
1250
1251         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1252            --  Element::ownedComment : Comment
1253
1254            return
1255              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
1256               (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1257                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
1258
1259         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
1260            --  Element::ownedElement : Element
1261
1262            return
1263              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
1264               (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1265                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
1266
1267         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
1268            --  Element::owner : Element
1269
1270            return
1271              AMF.Internals.Holders.UML_Holders.To_Holder
1272               (AMF.UML.Elements.UML_Element_Access'
1273                 (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1274                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
1275
1276         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
1277            --  NamedElement::qualifiedName : String
1278
1279            return
1280              AMF.Holders.To_Holder
1281               (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1282                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
1283
1284         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
1285            --  TypedElement::type : Type
1286
1287            return
1288              AMF.Internals.Holders.UML_Holders.To_Holder
1289               (AMF.UML.Types.UML_Type_Access'
1290                 (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1291                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
1292
1293         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
1294            --  NamedElement::visibility : VisibilityKind
1295
1296            return
1297              AMF.UML.Holders.To_Holder
1298               (AMF.OCL.Collection_Items.OCL_Collection_Item_Access
1299                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
1300
1301         else
1302            raise Program_Error;
1303         end if;
1304      end OCL_Collection_Item_Get;
1305
1306      ------------------------------------
1307      -- OCL_Collection_Literal_Exp_Get --
1308      ------------------------------------
1309
1310      function OCL_Collection_Literal_Exp_Get return League.Holders.Holder is
1311      begin
1312         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
1313            --  NamedElement::clientDependency : Dependency
1314
1315            return
1316              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
1317               (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1318                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
1319
1320         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Literal_Exp_Kind then
1321            --  CollectionLiteralExp::kind : CollectionKind
1322
1323            return
1324              AMF.OCL.Holders.Collection_Kinds.To_Holder
1325               (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1326                 (AMF.Internals.Helpers.To_Element (Self)).Get_Kind);
1327
1328         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
1329            --  NamedElement::name : String
1330
1331            return
1332              AMF.Holders.To_Holder
1333               (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1334                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
1335
1336         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1337            --  NamedElement::nameExpression : StringExpression
1338
1339            return
1340              AMF.Internals.Holders.UML_Holders.To_Holder
1341               (AMF.UML.String_Expressions.UML_String_Expression_Access'
1342                 (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1343                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
1344
1345         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
1346            --  NamedElement::namespace : Namespace
1347
1348            return
1349              AMF.Internals.Holders.UML_Holders.To_Holder
1350               (AMF.UML.Namespaces.UML_Namespace_Access'
1351                 (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1352                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
1353
1354         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1355            --  Element::ownedComment : Comment
1356
1357            return
1358              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
1359               (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1360                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
1361
1362         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
1363            --  Element::ownedElement : Element
1364
1365            return
1366              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
1367               (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1368                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
1369
1370         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
1371            --  Element::owner : Element
1372
1373            return
1374              AMF.Internals.Holders.UML_Holders.To_Holder
1375               (AMF.UML.Elements.UML_Element_Access'
1376                 (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1377                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
1378
1379         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Literal_Exp_Part_A_Exp1 then
1380            --  CollectionLiteralExp::part : CollectionLiteralPart
1381
1382            return
1383              AMF.OCL.Collection_Literal_Parts.Collections.OCL_Collection_Literal_Part_Collections.Internals.To_Holder
1384               (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1385                 (AMF.Internals.Helpers.To_Element (Self)).Get_Part);
1386
1387         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
1388            --  NamedElement::qualifiedName : String
1389
1390            return
1391              AMF.Holders.To_Holder
1392               (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1393                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
1394
1395         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
1396            --  TypedElement::type : Type
1397
1398            return
1399              AMF.Internals.Holders.UML_Holders.To_Holder
1400               (AMF.UML.Types.UML_Type_Access'
1401                 (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1402                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
1403
1404         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
1405            --  NamedElement::visibility : VisibilityKind
1406
1407            return
1408              AMF.UML.Holders.To_Holder
1409               (AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
1410                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
1411
1412         else
1413            raise Program_Error;
1414         end if;
1415      end OCL_Collection_Literal_Exp_Get;
1416
1417      ------------------------------
1418      -- OCL_Collection_Range_Get --
1419      ------------------------------
1420
1421      function OCL_Collection_Range_Get return League.Holders.Holder is
1422      begin
1423         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
1424            --  NamedElement::clientDependency : Dependency
1425
1426            return
1427              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
1428               (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1429                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
1430
1431         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Range_First_A_First_Owner then
1432            --  CollectionRange::first : OclExpression
1433
1434            return
1435              AMF.Internals.Holders.OCL_Holders.To_Holder
1436               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
1437                 (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1438                   (AMF.Internals.Helpers.To_Element (Self)).Get_First));
1439
1440         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Range_Last_A_Last_Owner then
1441            --  CollectionRange::last : OclExpression
1442
1443            return
1444              AMF.Internals.Holders.OCL_Holders.To_Holder
1445               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
1446                 (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1447                   (AMF.Internals.Helpers.To_Element (Self)).Get_Last));
1448
1449         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
1450            --  NamedElement::name : String
1451
1452            return
1453              AMF.Holders.To_Holder
1454               (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1455                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
1456
1457         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1458            --  NamedElement::nameExpression : StringExpression
1459
1460            return
1461              AMF.Internals.Holders.UML_Holders.To_Holder
1462               (AMF.UML.String_Expressions.UML_String_Expression_Access'
1463                 (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1464                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
1465
1466         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
1467            --  NamedElement::namespace : Namespace
1468
1469            return
1470              AMF.Internals.Holders.UML_Holders.To_Holder
1471               (AMF.UML.Namespaces.UML_Namespace_Access'
1472                 (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1473                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
1474
1475         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1476            --  Element::ownedComment : Comment
1477
1478            return
1479              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
1480               (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1481                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
1482
1483         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
1484            --  Element::ownedElement : Element
1485
1486            return
1487              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
1488               (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1489                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
1490
1491         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
1492            --  Element::owner : Element
1493
1494            return
1495              AMF.Internals.Holders.UML_Holders.To_Holder
1496               (AMF.UML.Elements.UML_Element_Access'
1497                 (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1498                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
1499
1500         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
1501            --  NamedElement::qualifiedName : String
1502
1503            return
1504              AMF.Holders.To_Holder
1505               (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1506                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
1507
1508         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
1509            --  TypedElement::type : Type
1510
1511            return
1512              AMF.Internals.Holders.UML_Holders.To_Holder
1513               (AMF.UML.Types.UML_Type_Access'
1514                 (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1515                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
1516
1517         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
1518            --  NamedElement::visibility : VisibilityKind
1519
1520            return
1521              AMF.UML.Holders.To_Holder
1522               (AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
1523                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
1524
1525         else
1526            raise Program_Error;
1527         end if;
1528      end OCL_Collection_Range_Get;
1529
1530      -----------------------------
1531      -- OCL_Collection_Type_Get --
1532      -----------------------------
1533
1534      function OCL_Collection_Type_Get return League.Holders.Holder is
1535      begin
1536         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
1537            --  Classifier::attribute : Property
1538
1539            return
1540              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
1541               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1542                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
1543
1544         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
1545            --  NamedElement::clientDependency : Dependency
1546
1547            return
1548              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
1549               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1550                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
1551
1552         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
1553            --  Classifier::collaborationUse : CollaborationUse
1554
1555            return
1556              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
1557               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1558                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
1559
1560         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
1561            --  Namespace::elementImport : ElementImport
1562
1563            return
1564              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
1565               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1566                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
1567
1568         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Type_Element_Type_A_Type1 then
1569            --  CollectionType::elementType : Classifier
1570
1571            return
1572              AMF.Internals.Holders.UML_Holders.To_Holder
1573               (AMF.UML.Classifiers.UML_Classifier_Access'
1574                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1575                   (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Type));
1576
1577         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
1578            --  Classifier::feature : Feature
1579
1580            return
1581              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
1582               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1583                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
1584
1585         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
1586            --  Classifier::general : Classifier
1587
1588            return
1589              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
1590               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1591                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
1592
1593         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
1594            --  Classifier::generalization : Generalization
1595
1596            return
1597              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
1598               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1599                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
1600
1601         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
1602            --  Namespace::importedMember : PackageableElement
1603
1604            return
1605              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
1606               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1607                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
1608
1609         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
1610            --  Classifier::inheritedMember : NamedElement
1611
1612            return
1613              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
1614               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1615                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
1616
1617         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
1618            --  Classifier::isAbstract : Boolean
1619
1620            return
1621              League.Holders.Booleans.To_Holder
1622               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1623                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
1624
1625         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
1626            --  Classifier::isFinalSpecialization : Boolean
1627
1628            return
1629              League.Holders.Booleans.To_Holder
1630               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1631                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
1632
1633         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
1634            --  RedefinableElement::isLeaf : Boolean
1635
1636            return
1637              League.Holders.Booleans.To_Holder
1638               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1639                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
1640
1641         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
1642            --  Namespace::member : NamedElement
1643
1644            return
1645              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
1646               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1647                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
1648
1649         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
1650            --  NamedElement::name : String
1651
1652            return
1653              AMF.Holders.To_Holder
1654               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1655                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
1656
1657         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1658            --  NamedElement::nameExpression : StringExpression
1659
1660            return
1661              AMF.Internals.Holders.UML_Holders.To_Holder
1662               (AMF.UML.String_Expressions.UML_String_Expression_Access'
1663                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1664                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
1665
1666         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
1667            --  NamedElement::namespace : Namespace
1668
1669            return
1670              AMF.Internals.Holders.UML_Holders.To_Holder
1671               (AMF.UML.Namespaces.UML_Namespace_Access'
1672                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1673                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
1674
1675         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
1676            --  DataType::ownedAttribute : Property
1677
1678            return
1679              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
1680               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1681                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Attribute);
1682
1683         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1684            --  Element::ownedComment : Comment
1685
1686            return
1687              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
1688               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1689                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
1690
1691         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
1692            --  Element::ownedElement : Element
1693
1694            return
1695              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
1696               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1697                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
1698
1699         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
1700            --  Namespace::ownedMember : NamedElement
1701
1702            return
1703              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
1704               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1705                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
1706
1707         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
1708            --  DataType::ownedOperation : Operation
1709
1710            return
1711              AMF.UML.Operations.Collections.UML_Operation_Collections.Internals.To_Holder
1712               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1713                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Operation);
1714
1715         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
1716            --  Namespace::ownedRule : Constraint
1717
1718            return
1719              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
1720               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1721                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
1722
1723         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
1724            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
1725
1726            return
1727              AMF.Internals.Holders.UML_Holders.To_Holder
1728               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
1729                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1730                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
1731
1732         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
1733            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
1734
1735            return
1736              AMF.Internals.Holders.UML_Holders.To_Holder
1737               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
1738                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1739                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
1740
1741         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
1742            --  Classifier::ownedUseCase : UseCase
1743
1744            return
1745              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
1746               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1747                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
1748
1749         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
1750            --  Element::owner : Element
1751
1752            return
1753              AMF.Internals.Holders.UML_Holders.To_Holder
1754               (AMF.UML.Elements.UML_Element_Access'
1755                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1756                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
1757
1758         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
1759            --  ParameterableElement::owningTemplateParameter : TemplateParameter
1760
1761            return
1762              AMF.Internals.Holders.UML_Holders.To_Holder
1763               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
1764                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1765                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
1766
1767         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
1768            --  Type::package : Package
1769
1770            return
1771              AMF.Internals.Holders.UML_Holders.To_Holder
1772               (AMF.UML.Packages.UML_Package_Access'
1773                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1774                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
1775
1776         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
1777            --  Namespace::packageImport : PackageImport
1778
1779            return
1780              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
1781               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1782                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
1783
1784         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
1785            --  Classifier::powertypeExtent : GeneralizationSet
1786
1787            return
1788              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
1789               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1790                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
1791
1792         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
1793            --  NamedElement::qualifiedName : String
1794
1795            return
1796              AMF.Holders.To_Holder
1797               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1798                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
1799
1800         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
1801            --  Classifier::redefinedClassifier : Classifier
1802
1803            return
1804              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
1805               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1806                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
1807
1808         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
1809            --  RedefinableElement::redefinedElement : RedefinableElement
1810
1811            return
1812              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
1813               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1814                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
1815
1816         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
1817            --  RedefinableElement::redefinitionContext : Classifier
1818
1819            return
1820              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
1821               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1822                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
1823
1824         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
1825            --  Classifier::representation : CollaborationUse
1826
1827            return
1828              AMF.Internals.Holders.UML_Holders.To_Holder
1829               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
1830                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1831                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
1832
1833         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
1834            --  Classifier::substitution : Substitution
1835
1836            return
1837              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
1838               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1839                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
1840
1841         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
1842            --  TemplateableElement::templateBinding : TemplateBinding
1843
1844            return
1845              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
1846               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1847                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
1848
1849         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
1850            --  Classifier::templateParameter : ClassifierTemplateParameter
1851
1852            return
1853              AMF.Internals.Holders.UML_Holders.To_Holder
1854               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
1855                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1856                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
1857
1858         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
1859            --  ParameterableElement::templateParameter : TemplateParameter
1860
1861            return
1862              AMF.Internals.Holders.UML_Holders.To_Holder
1863               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
1864                 (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1865                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
1866
1867         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
1868            --  Classifier::useCase : UseCase
1869
1870            return
1871              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
1872               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1873                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
1874
1875         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
1876            --  NamedElement::visibility : VisibilityKind
1877
1878            return
1879              AMF.UML.Holders.To_Holder
1880               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1881                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
1882
1883         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
1884            --  PackageableElement::visibility : VisibilityKind
1885
1886            return
1887              AMF.UML.Holders.Visibility_Kinds.To_Holder
1888               (AMF.OCL.Collection_Types.OCL_Collection_Type_Access
1889                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
1890
1891         else
1892            raise Program_Error;
1893         end if;
1894      end OCL_Collection_Type_Get;
1895
1896      ------------------------------
1897      -- OCL_Enum_Literal_Exp_Get --
1898      ------------------------------
1899
1900      function OCL_Enum_Literal_Exp_Get return League.Holders.Holder is
1901      begin
1902         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
1903            --  NamedElement::clientDependency : Dependency
1904
1905            return
1906              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
1907               (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1908                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
1909
1910         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
1911            --  NamedElement::name : String
1912
1913            return
1914              AMF.Holders.To_Holder
1915               (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1916                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
1917
1918         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
1919            --  NamedElement::nameExpression : StringExpression
1920
1921            return
1922              AMF.Internals.Holders.UML_Holders.To_Holder
1923               (AMF.UML.String_Expressions.UML_String_Expression_Access'
1924                 (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1925                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
1926
1927         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
1928            --  NamedElement::namespace : Namespace
1929
1930            return
1931              AMF.Internals.Holders.UML_Holders.To_Holder
1932               (AMF.UML.Namespaces.UML_Namespace_Access'
1933                 (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1934                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
1935
1936         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
1937            --  Element::ownedComment : Comment
1938
1939            return
1940              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
1941               (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1942                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
1943
1944         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
1945            --  Element::ownedElement : Element
1946
1947            return
1948              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
1949               (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1950                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
1951
1952         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
1953            --  Element::owner : Element
1954
1955            return
1956              AMF.Internals.Holders.UML_Holders.To_Holder
1957               (AMF.UML.Elements.UML_Element_Access'
1958                 (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1959                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
1960
1961         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
1962            --  NamedElement::qualifiedName : String
1963
1964            return
1965              AMF.Holders.To_Holder
1966               (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1967                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
1968
1969         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Enum_Literal_Exp_Referred_Enum_Literal_A_Literal_Exp then
1970            --  EnumLiteralExp::referredEnumLiteral : EnumerationLiteral
1971
1972            return
1973              AMF.Internals.Holders.UML_Holders.To_Holder
1974               (AMF.UML.Enumeration_Literals.UML_Enumeration_Literal_Access'
1975                 (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1976                   (AMF.Internals.Helpers.To_Element (Self)).Get_Referred_Enum_Literal));
1977
1978         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
1979            --  TypedElement::type : Type
1980
1981            return
1982              AMF.Internals.Holders.UML_Holders.To_Holder
1983               (AMF.UML.Types.UML_Type_Access'
1984                 (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1985                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
1986
1987         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
1988            --  NamedElement::visibility : VisibilityKind
1989
1990            return
1991              AMF.UML.Holders.To_Holder
1992               (AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
1993                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
1994
1995         else
1996            raise Program_Error;
1997         end if;
1998      end OCL_Enum_Literal_Exp_Get;
1999
2000      -------------------------------
2001      -- OCL_Expression_In_Ocl_Get --
2002      -------------------------------
2003
2004      function OCL_Expression_In_Ocl_Get return League.Holders.Holder is
2005      begin
2006         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Opaque_Expression_Behavior_A_Opaque_Expression then
2007            --  OpaqueExpression::behavior : Behavior
2008
2009            return
2010              AMF.Internals.Holders.UML_Holders.To_Holder
2011               (AMF.UML.Behaviors.UML_Behavior_Access'
2012                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2013                   (AMF.Internals.Helpers.To_Element (Self)).Get_Behavior));
2014
2015         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Opaque_Expression_Body then
2016            --  OpaqueExpression::body : String
2017
2018            return
2019              AMF.String_Collections.Internals.To_Holder
2020               (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2021                 (AMF.Internals.Helpers.To_Element (Self)).Get_Body);
2022
2023         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Expression_In_Ocl_Body_Expression_A_Top_Expression then
2024            --  ExpressionInOcl::bodyExpression : OclExpression
2025
2026            return
2027              AMF.Internals.Holders.OCL_Holders.To_Holder
2028               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
2029                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2030                   (AMF.Internals.Helpers.To_Element (Self)).Get_Body_Expression));
2031
2032         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
2033            --  NamedElement::clientDependency : Dependency
2034
2035            return
2036              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
2037               (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2038                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
2039
2040         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Expression_In_Ocl_Context_Variable_A_Self_Owner then
2041            --  ExpressionInOcl::contextVariable : Variable
2042
2043            return
2044              AMF.Internals.Holders.OCL_Holders.To_Holder
2045               (AMF.OCL.Variables.OCL_Variable_Access'
2046                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2047                   (AMF.Internals.Helpers.To_Element (Self)).Get_Context_Variable));
2048
2049         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Expression_In_Ocl_Generated_Type_A_Owning_Classifier then
2050            --  ExpressionInOcl::generatedType : Classifier
2051
2052            return
2053              AMF.Internals.Holders.UML_Holders.To_Holder
2054               (AMF.UML.Classifiers.UML_Classifier_Access'
2055                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2056                   (AMF.Internals.Helpers.To_Element (Self)).Get_Generated_Type));
2057
2058         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Opaque_Expression_Language then
2059            --  OpaqueExpression::language : String
2060
2061            return
2062              AMF.String_Collections.Internals.To_Holder
2063               (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2064                 (AMF.Internals.Helpers.To_Element (Self)).Get_Language);
2065
2066         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
2067            --  NamedElement::name : String
2068
2069            return
2070              AMF.Holders.To_Holder
2071               (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2072                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
2073
2074         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2075            --  NamedElement::nameExpression : StringExpression
2076
2077            return
2078              AMF.Internals.Holders.UML_Holders.To_Holder
2079               (AMF.UML.String_Expressions.UML_String_Expression_Access'
2080                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2081                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
2082
2083         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
2084            --  NamedElement::namespace : Namespace
2085
2086            return
2087              AMF.Internals.Holders.UML_Holders.To_Holder
2088               (AMF.UML.Namespaces.UML_Namespace_Access'
2089                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2090                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
2091
2092         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2093            --  Element::ownedComment : Comment
2094
2095            return
2096              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
2097               (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2098                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
2099
2100         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
2101            --  Element::ownedElement : Element
2102
2103            return
2104              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
2105               (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2106                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
2107
2108         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
2109            --  Element::owner : Element
2110
2111            return
2112              AMF.Internals.Holders.UML_Holders.To_Holder
2113               (AMF.UML.Elements.UML_Element_Access'
2114                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2115                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
2116
2117         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
2118            --  ParameterableElement::owningTemplateParameter : TemplateParameter
2119
2120            return
2121              AMF.Internals.Holders.UML_Holders.To_Holder
2122               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
2123                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2124                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
2125
2126         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Expression_In_Ocl_Parameter_Variable_A_Var_Owner then
2127            --  ExpressionInOcl::parameterVariable : Variable
2128
2129            return
2130              AMF.OCL.Variables.Collections.OCL_Variable_Collections.Internals.To_Holder
2131               (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2132                 (AMF.Internals.Helpers.To_Element (Self)).Get_Parameter_Variable);
2133
2134         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
2135            --  NamedElement::qualifiedName : String
2136
2137            return
2138              AMF.Holders.To_Holder
2139               (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2140                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
2141
2142         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Opaque_Expression_Result_A_Opaque_Expression then
2143            --  OpaqueExpression::result : Parameter
2144
2145            return
2146              AMF.Internals.Holders.UML_Holders.To_Holder
2147               (AMF.UML.Parameters.UML_Parameter_Access'
2148                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2149                   (AMF.Internals.Helpers.To_Element (Self)).Get_Result));
2150
2151         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Expression_In_Ocl_Result_Variable_A_Result_Owner then
2152            --  ExpressionInOcl::resultVariable : Variable
2153
2154            return
2155              AMF.Internals.Holders.OCL_Holders.To_Holder
2156               (AMF.OCL.Variables.OCL_Variable_Access'
2157                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2158                   (AMF.Internals.Helpers.To_Element (Self)).Get_Result_Variable));
2159
2160         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
2161            --  ParameterableElement::templateParameter : TemplateParameter
2162
2163            return
2164              AMF.Internals.Holders.UML_Holders.To_Holder
2165               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
2166                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2167                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
2168
2169         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
2170            --  TypedElement::type : Type
2171
2172            return
2173              AMF.Internals.Holders.UML_Holders.To_Holder
2174               (AMF.UML.Types.UML_Type_Access'
2175                 (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2176                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
2177
2178         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
2179            --  NamedElement::visibility : VisibilityKind
2180
2181            return
2182              AMF.UML.Holders.To_Holder
2183               (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2184                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
2185
2186         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
2187            --  PackageableElement::visibility : VisibilityKind
2188
2189            return
2190              AMF.UML.Holders.Visibility_Kinds.To_Holder
2191               (AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
2192                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
2193
2194         else
2195            raise Program_Error;
2196         end if;
2197      end OCL_Expression_In_Ocl_Get;
2198
2199      --------------------
2200      -- OCL_If_Exp_Get --
2201      --------------------
2202
2203      function OCL_If_Exp_Get return League.Holders.Holder is
2204      begin
2205         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
2206            --  NamedElement::clientDependency : Dependency
2207
2208            return
2209              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
2210               (AMF.OCL.If_Exps.OCL_If_Exp_Access
2211                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
2212
2213         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_If_Exp_Condition_A_If_Owner then
2214            --  IfExp::condition : OclExpression
2215
2216            return
2217              AMF.Internals.Holders.OCL_Holders.To_Holder
2218               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
2219                 (AMF.OCL.If_Exps.OCL_If_Exp_Access
2220                   (AMF.Internals.Helpers.To_Element (Self)).Get_Condition));
2221
2222         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_If_Exp_Else_Expression_A_Else_Owner then
2223            --  IfExp::elseExpression : OclExpression
2224
2225            return
2226              AMF.Internals.Holders.OCL_Holders.To_Holder
2227               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
2228                 (AMF.OCL.If_Exps.OCL_If_Exp_Access
2229                   (AMF.Internals.Helpers.To_Element (Self)).Get_Else_Expression));
2230
2231         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
2232            --  NamedElement::name : String
2233
2234            return
2235              AMF.Holders.To_Holder
2236               (AMF.OCL.If_Exps.OCL_If_Exp_Access
2237                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
2238
2239         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2240            --  NamedElement::nameExpression : StringExpression
2241
2242            return
2243              AMF.Internals.Holders.UML_Holders.To_Holder
2244               (AMF.UML.String_Expressions.UML_String_Expression_Access'
2245                 (AMF.OCL.If_Exps.OCL_If_Exp_Access
2246                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
2247
2248         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
2249            --  NamedElement::namespace : Namespace
2250
2251            return
2252              AMF.Internals.Holders.UML_Holders.To_Holder
2253               (AMF.UML.Namespaces.UML_Namespace_Access'
2254                 (AMF.OCL.If_Exps.OCL_If_Exp_Access
2255                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
2256
2257         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2258            --  Element::ownedComment : Comment
2259
2260            return
2261              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
2262               (AMF.OCL.If_Exps.OCL_If_Exp_Access
2263                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
2264
2265         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
2266            --  Element::ownedElement : Element
2267
2268            return
2269              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
2270               (AMF.OCL.If_Exps.OCL_If_Exp_Access
2271                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
2272
2273         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
2274            --  Element::owner : Element
2275
2276            return
2277              AMF.Internals.Holders.UML_Holders.To_Holder
2278               (AMF.UML.Elements.UML_Element_Access'
2279                 (AMF.OCL.If_Exps.OCL_If_Exp_Access
2280                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
2281
2282         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
2283            --  NamedElement::qualifiedName : String
2284
2285            return
2286              AMF.Holders.To_Holder
2287               (AMF.OCL.If_Exps.OCL_If_Exp_Access
2288                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
2289
2290         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_If_Exp_Then_Expression_A_Then_Owner then
2291            --  IfExp::thenExpression : OclExpression
2292
2293            return
2294              AMF.Internals.Holders.OCL_Holders.To_Holder
2295               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
2296                 (AMF.OCL.If_Exps.OCL_If_Exp_Access
2297                   (AMF.Internals.Helpers.To_Element (Self)).Get_Then_Expression));
2298
2299         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
2300            --  TypedElement::type : Type
2301
2302            return
2303              AMF.Internals.Holders.UML_Holders.To_Holder
2304               (AMF.UML.Types.UML_Type_Access'
2305                 (AMF.OCL.If_Exps.OCL_If_Exp_Access
2306                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
2307
2308         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
2309            --  NamedElement::visibility : VisibilityKind
2310
2311            return
2312              AMF.UML.Holders.To_Holder
2313               (AMF.OCL.If_Exps.OCL_If_Exp_Access
2314                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
2315
2316         else
2317            raise Program_Error;
2318         end if;
2319      end OCL_If_Exp_Get;
2320
2321      ---------------------------------
2322      -- OCL_Integer_Literal_Exp_Get --
2323      ---------------------------------
2324
2325      function OCL_Integer_Literal_Exp_Get return League.Holders.Holder is
2326      begin
2327         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
2328            --  NamedElement::clientDependency : Dependency
2329
2330            return
2331              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
2332               (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2333                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
2334
2335         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Integer_Literal_Exp_Integer_Symbol then
2336            --  IntegerLiteralExp::integerSymbol : Integer
2337
2338            return
2339              League.Holders.Integers.To_Holder
2340               (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2341                 (AMF.Internals.Helpers.To_Element (Self)).Get_Integer_Symbol);
2342
2343         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
2344            --  NamedElement::name : String
2345
2346            return
2347              AMF.Holders.To_Holder
2348               (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2349                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
2350
2351         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2352            --  NamedElement::nameExpression : StringExpression
2353
2354            return
2355              AMF.Internals.Holders.UML_Holders.To_Holder
2356               (AMF.UML.String_Expressions.UML_String_Expression_Access'
2357                 (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2358                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
2359
2360         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
2361            --  NamedElement::namespace : Namespace
2362
2363            return
2364              AMF.Internals.Holders.UML_Holders.To_Holder
2365               (AMF.UML.Namespaces.UML_Namespace_Access'
2366                 (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2367                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
2368
2369         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2370            --  Element::ownedComment : Comment
2371
2372            return
2373              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
2374               (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2375                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
2376
2377         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
2378            --  Element::ownedElement : Element
2379
2380            return
2381              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
2382               (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2383                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
2384
2385         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
2386            --  Element::owner : Element
2387
2388            return
2389              AMF.Internals.Holders.UML_Holders.To_Holder
2390               (AMF.UML.Elements.UML_Element_Access'
2391                 (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2392                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
2393
2394         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
2395            --  NamedElement::qualifiedName : String
2396
2397            return
2398              AMF.Holders.To_Holder
2399               (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2400                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
2401
2402         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
2403            --  TypedElement::type : Type
2404
2405            return
2406              AMF.Internals.Holders.UML_Holders.To_Holder
2407               (AMF.UML.Types.UML_Type_Access'
2408                 (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2409                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
2410
2411         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
2412            --  NamedElement::visibility : VisibilityKind
2413
2414            return
2415              AMF.UML.Holders.To_Holder
2416               (AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
2417                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
2418
2419         else
2420            raise Program_Error;
2421         end if;
2422      end OCL_Integer_Literal_Exp_Get;
2423
2424      ---------------------------------
2425      -- OCL_Invalid_Literal_Exp_Get --
2426      ---------------------------------
2427
2428      function OCL_Invalid_Literal_Exp_Get return League.Holders.Holder is
2429      begin
2430         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
2431            --  NamedElement::clientDependency : Dependency
2432
2433            return
2434              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
2435               (AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
2436                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
2437
2438         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
2439            --  NamedElement::name : String
2440
2441            return
2442              AMF.Holders.To_Holder
2443               (AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
2444                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
2445
2446         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2447            --  NamedElement::nameExpression : StringExpression
2448
2449            return
2450              AMF.Internals.Holders.UML_Holders.To_Holder
2451               (AMF.UML.String_Expressions.UML_String_Expression_Access'
2452                 (AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
2453                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
2454
2455         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
2456            --  NamedElement::namespace : Namespace
2457
2458            return
2459              AMF.Internals.Holders.UML_Holders.To_Holder
2460               (AMF.UML.Namespaces.UML_Namespace_Access'
2461                 (AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
2462                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
2463
2464         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2465            --  Element::ownedComment : Comment
2466
2467            return
2468              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
2469               (AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
2470                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
2471
2472         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
2473            --  Element::ownedElement : Element
2474
2475            return
2476              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
2477               (AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
2478                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
2479
2480         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
2481            --  Element::owner : Element
2482
2483            return
2484              AMF.Internals.Holders.UML_Holders.To_Holder
2485               (AMF.UML.Elements.UML_Element_Access'
2486                 (AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
2487                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
2488
2489         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
2490            --  NamedElement::qualifiedName : String
2491
2492            return
2493              AMF.Holders.To_Holder
2494               (AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
2495                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
2496
2497         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
2498            --  TypedElement::type : Type
2499
2500            return
2501              AMF.Internals.Holders.UML_Holders.To_Holder
2502               (AMF.UML.Types.UML_Type_Access'
2503                 (AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
2504                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
2505
2506         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
2507            --  NamedElement::visibility : VisibilityKind
2508
2509            return
2510              AMF.UML.Holders.To_Holder
2511               (AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
2512                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
2513
2514         else
2515            raise Program_Error;
2516         end if;
2517      end OCL_Invalid_Literal_Exp_Get;
2518
2519      --------------------------
2520      -- OCL_Invalid_Type_Get --
2521      --------------------------
2522
2523      function OCL_Invalid_Type_Get return League.Holders.Holder is
2524      begin
2525         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
2526            --  Classifier::attribute : Property
2527
2528            return
2529              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
2530               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2531                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
2532
2533         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
2534            --  NamedElement::clientDependency : Dependency
2535
2536            return
2537              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
2538               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2539                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
2540
2541         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
2542            --  Classifier::collaborationUse : CollaborationUse
2543
2544            return
2545              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
2546               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2547                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
2548
2549         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
2550            --  Namespace::elementImport : ElementImport
2551
2552            return
2553              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
2554               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2555                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
2556
2557         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
2558            --  Classifier::feature : Feature
2559
2560            return
2561              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
2562               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2563                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
2564
2565         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
2566            --  Classifier::general : Classifier
2567
2568            return
2569              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
2570               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2571                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
2572
2573         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
2574            --  Classifier::generalization : Generalization
2575
2576            return
2577              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
2578               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2579                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
2580
2581         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
2582            --  Namespace::importedMember : PackageableElement
2583
2584            return
2585              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
2586               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2587                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
2588
2589         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
2590            --  Classifier::inheritedMember : NamedElement
2591
2592            return
2593              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
2594               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2595                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
2596
2597         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
2598            --  Classifier::isAbstract : Boolean
2599
2600            return
2601              League.Holders.Booleans.To_Holder
2602               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2603                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
2604
2605         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
2606            --  Classifier::isFinalSpecialization : Boolean
2607
2608            return
2609              League.Holders.Booleans.To_Holder
2610               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2611                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
2612
2613         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
2614            --  RedefinableElement::isLeaf : Boolean
2615
2616            return
2617              League.Holders.Booleans.To_Holder
2618               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2619                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
2620
2621         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
2622            --  Namespace::member : NamedElement
2623
2624            return
2625              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
2626               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2627                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
2628
2629         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
2630            --  NamedElement::name : String
2631
2632            return
2633              AMF.Holders.To_Holder
2634               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2635                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
2636
2637         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2638            --  NamedElement::nameExpression : StringExpression
2639
2640            return
2641              AMF.Internals.Holders.UML_Holders.To_Holder
2642               (AMF.UML.String_Expressions.UML_String_Expression_Access'
2643                 (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2644                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
2645
2646         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
2647            --  NamedElement::namespace : Namespace
2648
2649            return
2650              AMF.Internals.Holders.UML_Holders.To_Holder
2651               (AMF.UML.Namespaces.UML_Namespace_Access'
2652                 (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2653                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
2654
2655         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2656            --  Element::ownedComment : Comment
2657
2658            return
2659              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
2660               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2661                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
2662
2663         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
2664            --  Element::ownedElement : Element
2665
2666            return
2667              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
2668               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2669                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
2670
2671         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
2672            --  Namespace::ownedMember : NamedElement
2673
2674            return
2675              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
2676               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2677                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
2678
2679         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
2680            --  Namespace::ownedRule : Constraint
2681
2682            return
2683              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
2684               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2685                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
2686
2687         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
2688            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
2689
2690            return
2691              AMF.Internals.Holders.UML_Holders.To_Holder
2692               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
2693                 (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2694                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
2695
2696         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
2697            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
2698
2699            return
2700              AMF.Internals.Holders.UML_Holders.To_Holder
2701               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
2702                 (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2703                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
2704
2705         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
2706            --  Classifier::ownedUseCase : UseCase
2707
2708            return
2709              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
2710               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2711                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
2712
2713         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
2714            --  Element::owner : Element
2715
2716            return
2717              AMF.Internals.Holders.UML_Holders.To_Holder
2718               (AMF.UML.Elements.UML_Element_Access'
2719                 (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2720                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
2721
2722         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
2723            --  ParameterableElement::owningTemplateParameter : TemplateParameter
2724
2725            return
2726              AMF.Internals.Holders.UML_Holders.To_Holder
2727               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
2728                 (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2729                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
2730
2731         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
2732            --  Type::package : Package
2733
2734            return
2735              AMF.Internals.Holders.UML_Holders.To_Holder
2736               (AMF.UML.Packages.UML_Package_Access'
2737                 (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2738                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
2739
2740         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
2741            --  Namespace::packageImport : PackageImport
2742
2743            return
2744              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
2745               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2746                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
2747
2748         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
2749            --  Classifier::powertypeExtent : GeneralizationSet
2750
2751            return
2752              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
2753               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2754                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
2755
2756         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
2757            --  NamedElement::qualifiedName : String
2758
2759            return
2760              AMF.Holders.To_Holder
2761               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2762                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
2763
2764         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
2765            --  Classifier::redefinedClassifier : Classifier
2766
2767            return
2768              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
2769               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2770                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
2771
2772         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
2773            --  RedefinableElement::redefinedElement : RedefinableElement
2774
2775            return
2776              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
2777               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2778                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
2779
2780         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
2781            --  RedefinableElement::redefinitionContext : Classifier
2782
2783            return
2784              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
2785               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2786                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
2787
2788         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
2789            --  Classifier::representation : CollaborationUse
2790
2791            return
2792              AMF.Internals.Holders.UML_Holders.To_Holder
2793               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
2794                 (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2795                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
2796
2797         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
2798            --  Classifier::substitution : Substitution
2799
2800            return
2801              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
2802               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2803                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
2804
2805         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
2806            --  TemplateableElement::templateBinding : TemplateBinding
2807
2808            return
2809              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
2810               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2811                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
2812
2813         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
2814            --  Classifier::templateParameter : ClassifierTemplateParameter
2815
2816            return
2817              AMF.Internals.Holders.UML_Holders.To_Holder
2818               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
2819                 (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2820                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
2821
2822         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
2823            --  ParameterableElement::templateParameter : TemplateParameter
2824
2825            return
2826              AMF.Internals.Holders.UML_Holders.To_Holder
2827               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
2828                 (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2829                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
2830
2831         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
2832            --  Classifier::useCase : UseCase
2833
2834            return
2835              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
2836               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2837                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
2838
2839         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
2840            --  NamedElement::visibility : VisibilityKind
2841
2842            return
2843              AMF.UML.Holders.To_Holder
2844               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2845                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
2846
2847         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
2848            --  PackageableElement::visibility : VisibilityKind
2849
2850            return
2851              AMF.UML.Holders.Visibility_Kinds.To_Holder
2852               (AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
2853                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
2854
2855         else
2856            raise Program_Error;
2857         end if;
2858      end OCL_Invalid_Type_Get;
2859
2860      -------------------------
2861      -- OCL_Iterate_Exp_Get --
2862      -------------------------
2863
2864      function OCL_Iterate_Exp_Get return League.Holders.Holder is
2865      begin
2866         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Loop_Exp_Body_A_Loop_Body_Owner then
2867            --  LoopExp::body : OclExpression
2868
2869            return
2870              AMF.Internals.Holders.OCL_Holders.To_Holder
2871               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
2872                 (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2873                   (AMF.Internals.Helpers.To_Element (Self)).Get_Body));
2874
2875         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
2876            --  NamedElement::clientDependency : Dependency
2877
2878            return
2879              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
2880               (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2881                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
2882
2883         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Loop_Exp_Iterator_A_Loop_Exp then
2884            --  LoopExp::iterator : Variable
2885
2886            return
2887              AMF.OCL.Variables.Collections.OCL_Variable_Collections.Internals.To_Holder
2888               (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2889                 (AMF.Internals.Helpers.To_Element (Self)).Get_Iterator);
2890
2891         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
2892            --  NamedElement::name : String
2893
2894            return
2895              AMF.Holders.To_Holder
2896               (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2897                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
2898
2899         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
2900            --  NamedElement::nameExpression : StringExpression
2901
2902            return
2903              AMF.Internals.Holders.UML_Holders.To_Holder
2904               (AMF.UML.String_Expressions.UML_String_Expression_Access'
2905                 (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2906                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
2907
2908         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
2909            --  NamedElement::namespace : Namespace
2910
2911            return
2912              AMF.Internals.Holders.UML_Holders.To_Holder
2913               (AMF.UML.Namespaces.UML_Namespace_Access'
2914                 (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2915                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
2916
2917         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
2918            --  Element::ownedComment : Comment
2919
2920            return
2921              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
2922               (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2923                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
2924
2925         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
2926            --  Element::ownedElement : Element
2927
2928            return
2929              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
2930               (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2931                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
2932
2933         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
2934            --  Element::owner : Element
2935
2936            return
2937              AMF.Internals.Holders.UML_Holders.To_Holder
2938               (AMF.UML.Elements.UML_Element_Access'
2939                 (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2940                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
2941
2942         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
2943            --  NamedElement::qualifiedName : String
2944
2945            return
2946              AMF.Holders.To_Holder
2947               (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2948                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
2949
2950         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Iterate_Exp_Result_A_Base_Exp then
2951            --  IterateExp::result : Variable
2952
2953            return
2954              AMF.Internals.Holders.OCL_Holders.To_Holder
2955               (AMF.OCL.Variables.OCL_Variable_Access'
2956                 (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2957                   (AMF.Internals.Helpers.To_Element (Self)).Get_Result));
2958
2959         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Call_Exp_Source_A_Applied_Element then
2960            --  CallExp::source : OclExpression
2961
2962            return
2963              AMF.Internals.Holders.OCL_Holders.To_Holder
2964               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
2965                 (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2966                   (AMF.Internals.Helpers.To_Element (Self)).Get_Source));
2967
2968         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
2969            --  TypedElement::type : Type
2970
2971            return
2972              AMF.Internals.Holders.UML_Holders.To_Holder
2973               (AMF.UML.Types.UML_Type_Access'
2974                 (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2975                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
2976
2977         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
2978            --  NamedElement::visibility : VisibilityKind
2979
2980            return
2981              AMF.UML.Holders.To_Holder
2982               (AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
2983                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
2984
2985         else
2986            raise Program_Error;
2987         end if;
2988      end OCL_Iterate_Exp_Get;
2989
2990      --------------------------
2991      -- OCL_Iterator_Exp_Get --
2992      --------------------------
2993
2994      function OCL_Iterator_Exp_Get return League.Holders.Holder is
2995      begin
2996         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Loop_Exp_Body_A_Loop_Body_Owner then
2997            --  LoopExp::body : OclExpression
2998
2999            return
3000              AMF.Internals.Holders.OCL_Holders.To_Holder
3001               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
3002                 (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3003                   (AMF.Internals.Helpers.To_Element (Self)).Get_Body));
3004
3005         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
3006            --  NamedElement::clientDependency : Dependency
3007
3008            return
3009              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
3010               (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3011                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
3012
3013         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Loop_Exp_Iterator_A_Loop_Exp then
3014            --  LoopExp::iterator : Variable
3015
3016            return
3017              AMF.OCL.Variables.Collections.OCL_Variable_Collections.Internals.To_Holder
3018               (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3019                 (AMF.Internals.Helpers.To_Element (Self)).Get_Iterator);
3020
3021         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
3022            --  NamedElement::name : String
3023
3024            return
3025              AMF.Holders.To_Holder
3026               (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3027                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
3028
3029         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
3030            --  NamedElement::nameExpression : StringExpression
3031
3032            return
3033              AMF.Internals.Holders.UML_Holders.To_Holder
3034               (AMF.UML.String_Expressions.UML_String_Expression_Access'
3035                 (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3036                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
3037
3038         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
3039            --  NamedElement::namespace : Namespace
3040
3041            return
3042              AMF.Internals.Holders.UML_Holders.To_Holder
3043               (AMF.UML.Namespaces.UML_Namespace_Access'
3044                 (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3045                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
3046
3047         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
3048            --  Element::ownedComment : Comment
3049
3050            return
3051              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
3052               (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3053                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
3054
3055         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
3056            --  Element::ownedElement : Element
3057
3058            return
3059              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
3060               (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3061                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
3062
3063         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
3064            --  Element::owner : Element
3065
3066            return
3067              AMF.Internals.Holders.UML_Holders.To_Holder
3068               (AMF.UML.Elements.UML_Element_Access'
3069                 (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3070                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
3071
3072         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
3073            --  NamedElement::qualifiedName : String
3074
3075            return
3076              AMF.Holders.To_Holder
3077               (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3078                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
3079
3080         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Call_Exp_Source_A_Applied_Element then
3081            --  CallExp::source : OclExpression
3082
3083            return
3084              AMF.Internals.Holders.OCL_Holders.To_Holder
3085               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
3086                 (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3087                   (AMF.Internals.Helpers.To_Element (Self)).Get_Source));
3088
3089         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
3090            --  TypedElement::type : Type
3091
3092            return
3093              AMF.Internals.Holders.UML_Holders.To_Holder
3094               (AMF.UML.Types.UML_Type_Access'
3095                 (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3096                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
3097
3098         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
3099            --  NamedElement::visibility : VisibilityKind
3100
3101            return
3102              AMF.UML.Holders.To_Holder
3103               (AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
3104                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
3105
3106         else
3107            raise Program_Error;
3108         end if;
3109      end OCL_Iterator_Exp_Get;
3110
3111      ---------------------
3112      -- OCL_Let_Exp_Get --
3113      ---------------------
3114
3115      function OCL_Let_Exp_Get return League.Holders.Holder is
3116      begin
3117         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
3118            --  NamedElement::clientDependency : Dependency
3119
3120            return
3121              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
3122               (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3123                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
3124
3125         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Let_Exp_In_A_Exp4 then
3126            --  LetExp::in : OclExpression
3127
3128            return
3129              AMF.Internals.Holders.OCL_Holders.To_Holder
3130               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
3131                 (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3132                   (AMF.Internals.Helpers.To_Element (Self)).Get_In));
3133
3134         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
3135            --  NamedElement::name : String
3136
3137            return
3138              AMF.Holders.To_Holder
3139               (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3140                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
3141
3142         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
3143            --  NamedElement::nameExpression : StringExpression
3144
3145            return
3146              AMF.Internals.Holders.UML_Holders.To_Holder
3147               (AMF.UML.String_Expressions.UML_String_Expression_Access'
3148                 (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3149                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
3150
3151         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
3152            --  NamedElement::namespace : Namespace
3153
3154            return
3155              AMF.Internals.Holders.UML_Holders.To_Holder
3156               (AMF.UML.Namespaces.UML_Namespace_Access'
3157                 (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3158                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
3159
3160         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
3161            --  Element::ownedComment : Comment
3162
3163            return
3164              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
3165               (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3166                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
3167
3168         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
3169            --  Element::ownedElement : Element
3170
3171            return
3172              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
3173               (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3174                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
3175
3176         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
3177            --  Element::owner : Element
3178
3179            return
3180              AMF.Internals.Holders.UML_Holders.To_Holder
3181               (AMF.UML.Elements.UML_Element_Access'
3182                 (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3183                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
3184
3185         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
3186            --  NamedElement::qualifiedName : String
3187
3188            return
3189              AMF.Holders.To_Holder
3190               (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3191                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
3192
3193         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
3194            --  TypedElement::type : Type
3195
3196            return
3197              AMF.Internals.Holders.UML_Holders.To_Holder
3198               (AMF.UML.Types.UML_Type_Access'
3199                 (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3200                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
3201
3202         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Let_Exp_Variable_A_Exp5 then
3203            --  LetExp::variable : Variable
3204
3205            return
3206              AMF.Internals.Holders.OCL_Holders.To_Holder
3207               (AMF.OCL.Variables.OCL_Variable_Access'
3208                 (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3209                   (AMF.Internals.Helpers.To_Element (Self)).Get_Variable));
3210
3211         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
3212            --  NamedElement::visibility : VisibilityKind
3213
3214            return
3215              AMF.UML.Holders.To_Holder
3216               (AMF.OCL.Let_Exps.OCL_Let_Exp_Access
3217                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
3218
3219         else
3220            raise Program_Error;
3221         end if;
3222      end OCL_Let_Exp_Get;
3223
3224      -------------------------
3225      -- OCL_Message_Exp_Get --
3226      -------------------------
3227
3228      function OCL_Message_Exp_Get return League.Holders.Holder is
3229      begin
3230         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Exp_Argument_A_Exp2 then
3231            --  MessageExp::argument : OclExpression
3232
3233            return
3234              AMF.OCL.Ocl_Expressions.Collections.OCL_Ocl_Expression_Collections.Internals.To_Holder
3235               (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3236                 (AMF.Internals.Helpers.To_Element (Self)).Get_Argument);
3237
3238         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Exp_Called_Operation_A_Exp6 then
3239            --  MessageExp::calledOperation : CallOperationAction
3240
3241            return
3242              AMF.Internals.Holders.UML_Holders.To_Holder
3243               (AMF.UML.Call_Operation_Actions.UML_Call_Operation_Action_Access'
3244                 (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3245                   (AMF.Internals.Helpers.To_Element (Self)).Get_Called_Operation));
3246
3247         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
3248            --  NamedElement::clientDependency : Dependency
3249
3250            return
3251              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
3252               (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3253                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
3254
3255         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
3256            --  NamedElement::name : String
3257
3258            return
3259              AMF.Holders.To_Holder
3260               (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3261                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
3262
3263         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
3264            --  NamedElement::nameExpression : StringExpression
3265
3266            return
3267              AMF.Internals.Holders.UML_Holders.To_Holder
3268               (AMF.UML.String_Expressions.UML_String_Expression_Access'
3269                 (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3270                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
3271
3272         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
3273            --  NamedElement::namespace : Namespace
3274
3275            return
3276              AMF.Internals.Holders.UML_Holders.To_Holder
3277               (AMF.UML.Namespaces.UML_Namespace_Access'
3278                 (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3279                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
3280
3281         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
3282            --  Element::ownedComment : Comment
3283
3284            return
3285              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
3286               (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3287                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
3288
3289         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
3290            --  Element::ownedElement : Element
3291
3292            return
3293              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
3294               (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3295                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
3296
3297         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
3298            --  Element::owner : Element
3299
3300            return
3301              AMF.Internals.Holders.UML_Holders.To_Holder
3302               (AMF.UML.Elements.UML_Element_Access'
3303                 (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3304                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
3305
3306         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
3307            --  NamedElement::qualifiedName : String
3308
3309            return
3310              AMF.Holders.To_Holder
3311               (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3312                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
3313
3314         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Exp_Sent_Signal_A_Exp7 then
3315            --  MessageExp::sentSignal : SendSignalAction
3316
3317            return
3318              AMF.Internals.Holders.UML_Holders.To_Holder
3319               (AMF.UML.Send_Signal_Actions.UML_Send_Signal_Action_Access'
3320                 (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3321                   (AMF.Internals.Helpers.To_Element (Self)).Get_Sent_Signal));
3322
3323         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Exp_Target_A_Exp8 then
3324            --  MessageExp::target : OclExpression
3325
3326            return
3327              AMF.Internals.Holders.OCL_Holders.To_Holder
3328               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
3329                 (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3330                   (AMF.Internals.Helpers.To_Element (Self)).Get_Target));
3331
3332         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
3333            --  TypedElement::type : Type
3334
3335            return
3336              AMF.Internals.Holders.UML_Holders.To_Holder
3337               (AMF.UML.Types.UML_Type_Access'
3338                 (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3339                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
3340
3341         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
3342            --  NamedElement::visibility : VisibilityKind
3343
3344            return
3345              AMF.UML.Holders.To_Holder
3346               (AMF.OCL.Message_Exps.OCL_Message_Exp_Access
3347                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
3348
3349         else
3350            raise Program_Error;
3351         end if;
3352      end OCL_Message_Exp_Get;
3353
3354      --------------------------
3355      -- OCL_Message_Type_Get --
3356      --------------------------
3357
3358      function OCL_Message_Type_Get return League.Holders.Holder is
3359      begin
3360         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
3361            --  Classifier::attribute : Property
3362
3363            return
3364              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
3365               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3366                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
3367
3368         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
3369            --  NamedElement::clientDependency : Dependency
3370
3371            return
3372              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
3373               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3374                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
3375
3376         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
3377            --  Classifier::collaborationUse : CollaborationUse
3378
3379            return
3380              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
3381               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3382                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
3383
3384         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
3385            --  Namespace::elementImport : ElementImport
3386
3387            return
3388              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
3389               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3390                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
3391
3392         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
3393            --  Classifier::feature : Feature
3394
3395            return
3396              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
3397               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3398                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
3399
3400         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
3401            --  Classifier::general : Classifier
3402
3403            return
3404              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
3405               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3406                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
3407
3408         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
3409            --  Classifier::generalization : Generalization
3410
3411            return
3412              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
3413               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3414                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
3415
3416         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
3417            --  Namespace::importedMember : PackageableElement
3418
3419            return
3420              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
3421               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3422                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
3423
3424         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
3425            --  Classifier::inheritedMember : NamedElement
3426
3427            return
3428              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
3429               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3430                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
3431
3432         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
3433            --  Classifier::isAbstract : Boolean
3434
3435            return
3436              League.Holders.Booleans.To_Holder
3437               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3438                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
3439
3440         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
3441            --  Classifier::isFinalSpecialization : Boolean
3442
3443            return
3444              League.Holders.Booleans.To_Holder
3445               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3446                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
3447
3448         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
3449            --  RedefinableElement::isLeaf : Boolean
3450
3451            return
3452              League.Holders.Booleans.To_Holder
3453               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3454                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
3455
3456         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
3457            --  Namespace::member : NamedElement
3458
3459            return
3460              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
3461               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3462                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
3463
3464         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
3465            --  NamedElement::name : String
3466
3467            return
3468              AMF.Holders.To_Holder
3469               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3470                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
3471
3472         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
3473            --  NamedElement::nameExpression : StringExpression
3474
3475            return
3476              AMF.Internals.Holders.UML_Holders.To_Holder
3477               (AMF.UML.String_Expressions.UML_String_Expression_Access'
3478                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3479                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
3480
3481         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
3482            --  NamedElement::namespace : Namespace
3483
3484            return
3485              AMF.Internals.Holders.UML_Holders.To_Holder
3486               (AMF.UML.Namespaces.UML_Namespace_Access'
3487                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3488                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
3489
3490         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
3491            --  Element::ownedComment : Comment
3492
3493            return
3494              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
3495               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3496                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
3497
3498         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
3499            --  Element::ownedElement : Element
3500
3501            return
3502              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
3503               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3504                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
3505
3506         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
3507            --  Namespace::ownedMember : NamedElement
3508
3509            return
3510              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
3511               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3512                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
3513
3514         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
3515            --  Namespace::ownedRule : Constraint
3516
3517            return
3518              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
3519               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3520                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
3521
3522         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
3523            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
3524
3525            return
3526              AMF.Internals.Holders.UML_Holders.To_Holder
3527               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
3528                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3529                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
3530
3531         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
3532            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
3533
3534            return
3535              AMF.Internals.Holders.UML_Holders.To_Holder
3536               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
3537                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3538                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
3539
3540         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
3541            --  Classifier::ownedUseCase : UseCase
3542
3543            return
3544              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
3545               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3546                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
3547
3548         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
3549            --  Element::owner : Element
3550
3551            return
3552              AMF.Internals.Holders.UML_Holders.To_Holder
3553               (AMF.UML.Elements.UML_Element_Access'
3554                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3555                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
3556
3557         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
3558            --  ParameterableElement::owningTemplateParameter : TemplateParameter
3559
3560            return
3561              AMF.Internals.Holders.UML_Holders.To_Holder
3562               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
3563                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3564                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
3565
3566         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
3567            --  Type::package : Package
3568
3569            return
3570              AMF.Internals.Holders.UML_Holders.To_Holder
3571               (AMF.UML.Packages.UML_Package_Access'
3572                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3573                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
3574
3575         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
3576            --  Namespace::packageImport : PackageImport
3577
3578            return
3579              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
3580               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3581                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
3582
3583         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
3584            --  Classifier::powertypeExtent : GeneralizationSet
3585
3586            return
3587              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
3588               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3589                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
3590
3591         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
3592            --  NamedElement::qualifiedName : String
3593
3594            return
3595              AMF.Holders.To_Holder
3596               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3597                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
3598
3599         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
3600            --  Classifier::redefinedClassifier : Classifier
3601
3602            return
3603              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
3604               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3605                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
3606
3607         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
3608            --  RedefinableElement::redefinedElement : RedefinableElement
3609
3610            return
3611              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
3612               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3613                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
3614
3615         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
3616            --  RedefinableElement::redefinitionContext : Classifier
3617
3618            return
3619              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
3620               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3621                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
3622
3623         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Type_Referred_Operation_A_Type2 then
3624            --  MessageType::referredOperation : Operation
3625
3626            return
3627              AMF.Internals.Holders.UML_Holders.To_Holder
3628               (AMF.UML.Operations.UML_Operation_Access'
3629                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3630                   (AMF.Internals.Helpers.To_Element (Self)).Get_Referred_Operation));
3631
3632         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Type_Referred_Signal_A_Type3 then
3633            --  MessageType::referredSignal : Signal
3634
3635            return
3636              AMF.Internals.Holders.UML_Holders.To_Holder
3637               (AMF.UML.Signals.UML_Signal_Access'
3638                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3639                   (AMF.Internals.Helpers.To_Element (Self)).Get_Referred_Signal));
3640
3641         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
3642            --  Classifier::representation : CollaborationUse
3643
3644            return
3645              AMF.Internals.Holders.UML_Holders.To_Holder
3646               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
3647                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3648                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
3649
3650         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
3651            --  Classifier::substitution : Substitution
3652
3653            return
3654              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
3655               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3656                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
3657
3658         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
3659            --  TemplateableElement::templateBinding : TemplateBinding
3660
3661            return
3662              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
3663               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3664                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
3665
3666         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
3667            --  Classifier::templateParameter : ClassifierTemplateParameter
3668
3669            return
3670              AMF.Internals.Holders.UML_Holders.To_Holder
3671               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
3672                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3673                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
3674
3675         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
3676            --  ParameterableElement::templateParameter : TemplateParameter
3677
3678            return
3679              AMF.Internals.Holders.UML_Holders.To_Holder
3680               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
3681                 (AMF.OCL.Message_Types.OCL_Message_Type_Access
3682                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
3683
3684         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
3685            --  Classifier::useCase : UseCase
3686
3687            return
3688              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
3689               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3690                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
3691
3692         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
3693            --  NamedElement::visibility : VisibilityKind
3694
3695            return
3696              AMF.UML.Holders.To_Holder
3697               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3698                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
3699
3700         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
3701            --  PackageableElement::visibility : VisibilityKind
3702
3703            return
3704              AMF.UML.Holders.Visibility_Kinds.To_Holder
3705               (AMF.OCL.Message_Types.OCL_Message_Type_Access
3706                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
3707
3708         else
3709            raise Program_Error;
3710         end if;
3711      end OCL_Message_Type_Get;
3712
3713      ------------------------------
3714      -- OCL_Null_Literal_Exp_Get --
3715      ------------------------------
3716
3717      function OCL_Null_Literal_Exp_Get return League.Holders.Holder is
3718      begin
3719         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
3720            --  NamedElement::clientDependency : Dependency
3721
3722            return
3723              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
3724               (AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
3725                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
3726
3727         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
3728            --  NamedElement::name : String
3729
3730            return
3731              AMF.Holders.To_Holder
3732               (AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
3733                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
3734
3735         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
3736            --  NamedElement::nameExpression : StringExpression
3737
3738            return
3739              AMF.Internals.Holders.UML_Holders.To_Holder
3740               (AMF.UML.String_Expressions.UML_String_Expression_Access'
3741                 (AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
3742                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
3743
3744         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
3745            --  NamedElement::namespace : Namespace
3746
3747            return
3748              AMF.Internals.Holders.UML_Holders.To_Holder
3749               (AMF.UML.Namespaces.UML_Namespace_Access'
3750                 (AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
3751                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
3752
3753         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
3754            --  Element::ownedComment : Comment
3755
3756            return
3757              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
3758               (AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
3759                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
3760
3761         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
3762            --  Element::ownedElement : Element
3763
3764            return
3765              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
3766               (AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
3767                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
3768
3769         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
3770            --  Element::owner : Element
3771
3772            return
3773              AMF.Internals.Holders.UML_Holders.To_Holder
3774               (AMF.UML.Elements.UML_Element_Access'
3775                 (AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
3776                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
3777
3778         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
3779            --  NamedElement::qualifiedName : String
3780
3781            return
3782              AMF.Holders.To_Holder
3783               (AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
3784                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
3785
3786         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
3787            --  TypedElement::type : Type
3788
3789            return
3790              AMF.Internals.Holders.UML_Holders.To_Holder
3791               (AMF.UML.Types.UML_Type_Access'
3792                 (AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
3793                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
3794
3795         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
3796            --  NamedElement::visibility : VisibilityKind
3797
3798            return
3799              AMF.UML.Holders.To_Holder
3800               (AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
3801                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
3802
3803         else
3804            raise Program_Error;
3805         end if;
3806      end OCL_Null_Literal_Exp_Get;
3807
3808      --------------------------------
3809      -- OCL_Operation_Call_Exp_Get --
3810      --------------------------------
3811
3812      function OCL_Operation_Call_Exp_Get return League.Holders.Holder is
3813      begin
3814         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Operation_Call_Exp_Argument_A_Parent_Call then
3815            --  OperationCallExp::argument : OclExpression
3816
3817            return
3818              AMF.OCL.Ocl_Expressions.Collections.OCL_Ocl_Expression_Collections.Internals.To_Holder
3819               (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3820                 (AMF.Internals.Helpers.To_Element (Self)).Get_Argument);
3821
3822         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
3823            --  NamedElement::clientDependency : Dependency
3824
3825            return
3826              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
3827               (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3828                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
3829
3830         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
3831            --  NamedElement::name : String
3832
3833            return
3834              AMF.Holders.To_Holder
3835               (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3836                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
3837
3838         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
3839            --  NamedElement::nameExpression : StringExpression
3840
3841            return
3842              AMF.Internals.Holders.UML_Holders.To_Holder
3843               (AMF.UML.String_Expressions.UML_String_Expression_Access'
3844                 (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3845                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
3846
3847         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
3848            --  NamedElement::namespace : Namespace
3849
3850            return
3851              AMF.Internals.Holders.UML_Holders.To_Holder
3852               (AMF.UML.Namespaces.UML_Namespace_Access'
3853                 (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3854                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
3855
3856         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
3857            --  Element::ownedComment : Comment
3858
3859            return
3860              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
3861               (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3862                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
3863
3864         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
3865            --  Element::ownedElement : Element
3866
3867            return
3868              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
3869               (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3870                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
3871
3872         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
3873            --  Element::owner : Element
3874
3875            return
3876              AMF.Internals.Holders.UML_Holders.To_Holder
3877               (AMF.UML.Elements.UML_Element_Access'
3878                 (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3879                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
3880
3881         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
3882            --  NamedElement::qualifiedName : String
3883
3884            return
3885              AMF.Holders.To_Holder
3886               (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3887                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
3888
3889         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Operation_Call_Exp_Referred_Operation_A_Refering_Exp then
3890            --  OperationCallExp::referredOperation : Operation
3891
3892            return
3893              AMF.Internals.Holders.UML_Holders.To_Holder
3894               (AMF.UML.Operations.UML_Operation_Access'
3895                 (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3896                   (AMF.Internals.Helpers.To_Element (Self)).Get_Referred_Operation));
3897
3898         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Call_Exp_Source_A_Applied_Element then
3899            --  CallExp::source : OclExpression
3900
3901            return
3902              AMF.Internals.Holders.OCL_Holders.To_Holder
3903               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
3904                 (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3905                   (AMF.Internals.Helpers.To_Element (Self)).Get_Source));
3906
3907         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
3908            --  TypedElement::type : Type
3909
3910            return
3911              AMF.Internals.Holders.UML_Holders.To_Holder
3912               (AMF.UML.Types.UML_Type_Access'
3913                 (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3914                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
3915
3916         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
3917            --  NamedElement::visibility : VisibilityKind
3918
3919            return
3920              AMF.UML.Holders.To_Holder
3921               (AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
3922                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
3923
3924         else
3925            raise Program_Error;
3926         end if;
3927      end OCL_Operation_Call_Exp_Get;
3928
3929      ------------------------------
3930      -- OCL_Ordered_Set_Type_Get --
3931      ------------------------------
3932
3933      function OCL_Ordered_Set_Type_Get return League.Holders.Holder is
3934      begin
3935         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
3936            --  Classifier::attribute : Property
3937
3938            return
3939              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
3940               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
3941                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
3942
3943         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
3944            --  NamedElement::clientDependency : Dependency
3945
3946            return
3947              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
3948               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
3949                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
3950
3951         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
3952            --  Classifier::collaborationUse : CollaborationUse
3953
3954            return
3955              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
3956               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
3957                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
3958
3959         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
3960            --  Namespace::elementImport : ElementImport
3961
3962            return
3963              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
3964               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
3965                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
3966
3967         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Type_Element_Type_A_Type1 then
3968            --  CollectionType::elementType : Classifier
3969
3970            return
3971              AMF.Internals.Holders.UML_Holders.To_Holder
3972               (AMF.UML.Classifiers.UML_Classifier_Access'
3973                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
3974                   (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Type));
3975
3976         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
3977            --  Classifier::feature : Feature
3978
3979            return
3980              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
3981               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
3982                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
3983
3984         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
3985            --  Classifier::general : Classifier
3986
3987            return
3988              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
3989               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
3990                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
3991
3992         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
3993            --  Classifier::generalization : Generalization
3994
3995            return
3996              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
3997               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
3998                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
3999
4000         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
4001            --  Namespace::importedMember : PackageableElement
4002
4003            return
4004              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
4005               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4006                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
4007
4008         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
4009            --  Classifier::inheritedMember : NamedElement
4010
4011            return
4012              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
4013               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4014                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
4015
4016         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
4017            --  Classifier::isAbstract : Boolean
4018
4019            return
4020              League.Holders.Booleans.To_Holder
4021               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4022                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
4023
4024         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
4025            --  Classifier::isFinalSpecialization : Boolean
4026
4027            return
4028              League.Holders.Booleans.To_Holder
4029               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4030                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
4031
4032         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
4033            --  RedefinableElement::isLeaf : Boolean
4034
4035            return
4036              League.Holders.Booleans.To_Holder
4037               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4038                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
4039
4040         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
4041            --  Namespace::member : NamedElement
4042
4043            return
4044              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
4045               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4046                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
4047
4048         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
4049            --  NamedElement::name : String
4050
4051            return
4052              AMF.Holders.To_Holder
4053               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4054                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
4055
4056         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
4057            --  NamedElement::nameExpression : StringExpression
4058
4059            return
4060              AMF.Internals.Holders.UML_Holders.To_Holder
4061               (AMF.UML.String_Expressions.UML_String_Expression_Access'
4062                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4063                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
4064
4065         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
4066            --  NamedElement::namespace : Namespace
4067
4068            return
4069              AMF.Internals.Holders.UML_Holders.To_Holder
4070               (AMF.UML.Namespaces.UML_Namespace_Access'
4071                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4072                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
4073
4074         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
4075            --  DataType::ownedAttribute : Property
4076
4077            return
4078              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
4079               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4080                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Attribute);
4081
4082         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
4083            --  Element::ownedComment : Comment
4084
4085            return
4086              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
4087               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4088                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
4089
4090         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
4091            --  Element::ownedElement : Element
4092
4093            return
4094              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
4095               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4096                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
4097
4098         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
4099            --  Namespace::ownedMember : NamedElement
4100
4101            return
4102              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
4103               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4104                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
4105
4106         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
4107            --  DataType::ownedOperation : Operation
4108
4109            return
4110              AMF.UML.Operations.Collections.UML_Operation_Collections.Internals.To_Holder
4111               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4112                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Operation);
4113
4114         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
4115            --  Namespace::ownedRule : Constraint
4116
4117            return
4118              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
4119               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4120                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
4121
4122         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
4123            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
4124
4125            return
4126              AMF.Internals.Holders.UML_Holders.To_Holder
4127               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
4128                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4129                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
4130
4131         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
4132            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
4133
4134            return
4135              AMF.Internals.Holders.UML_Holders.To_Holder
4136               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
4137                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4138                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
4139
4140         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
4141            --  Classifier::ownedUseCase : UseCase
4142
4143            return
4144              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
4145               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4146                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
4147
4148         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
4149            --  Element::owner : Element
4150
4151            return
4152              AMF.Internals.Holders.UML_Holders.To_Holder
4153               (AMF.UML.Elements.UML_Element_Access'
4154                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4155                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
4156
4157         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
4158            --  ParameterableElement::owningTemplateParameter : TemplateParameter
4159
4160            return
4161              AMF.Internals.Holders.UML_Holders.To_Holder
4162               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
4163                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4164                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
4165
4166         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
4167            --  Type::package : Package
4168
4169            return
4170              AMF.Internals.Holders.UML_Holders.To_Holder
4171               (AMF.UML.Packages.UML_Package_Access'
4172                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4173                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
4174
4175         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
4176            --  Namespace::packageImport : PackageImport
4177
4178            return
4179              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
4180               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4181                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
4182
4183         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
4184            --  Classifier::powertypeExtent : GeneralizationSet
4185
4186            return
4187              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
4188               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4189                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
4190
4191         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
4192            --  NamedElement::qualifiedName : String
4193
4194            return
4195              AMF.Holders.To_Holder
4196               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4197                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
4198
4199         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
4200            --  Classifier::redefinedClassifier : Classifier
4201
4202            return
4203              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
4204               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4205                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
4206
4207         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
4208            --  RedefinableElement::redefinedElement : RedefinableElement
4209
4210            return
4211              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
4212               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4213                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
4214
4215         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
4216            --  RedefinableElement::redefinitionContext : Classifier
4217
4218            return
4219              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
4220               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4221                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
4222
4223         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
4224            --  Classifier::representation : CollaborationUse
4225
4226            return
4227              AMF.Internals.Holders.UML_Holders.To_Holder
4228               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
4229                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4230                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
4231
4232         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
4233            --  Classifier::substitution : Substitution
4234
4235            return
4236              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
4237               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4238                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
4239
4240         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
4241            --  TemplateableElement::templateBinding : TemplateBinding
4242
4243            return
4244              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
4245               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4246                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
4247
4248         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
4249            --  Classifier::templateParameter : ClassifierTemplateParameter
4250
4251            return
4252              AMF.Internals.Holders.UML_Holders.To_Holder
4253               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
4254                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4255                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
4256
4257         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
4258            --  ParameterableElement::templateParameter : TemplateParameter
4259
4260            return
4261              AMF.Internals.Holders.UML_Holders.To_Holder
4262               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
4263                 (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4264                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
4265
4266         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
4267            --  Classifier::useCase : UseCase
4268
4269            return
4270              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
4271               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4272                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
4273
4274         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
4275            --  NamedElement::visibility : VisibilityKind
4276
4277            return
4278              AMF.UML.Holders.To_Holder
4279               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4280                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
4281
4282         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
4283            --  PackageableElement::visibility : VisibilityKind
4284
4285            return
4286              AMF.UML.Holders.Visibility_Kinds.To_Holder
4287               (AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
4288                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
4289
4290         else
4291            raise Program_Error;
4292         end if;
4293      end OCL_Ordered_Set_Type_Get;
4294
4295      -------------------------------
4296      -- OCL_Property_Call_Exp_Get --
4297      -------------------------------
4298
4299      function OCL_Property_Call_Exp_Get return League.Holders.Holder is
4300      begin
4301         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
4302            --  NamedElement::clientDependency : Dependency
4303
4304            return
4305              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
4306               (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4307                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
4308
4309         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
4310            --  NamedElement::name : String
4311
4312            return
4313              AMF.Holders.To_Holder
4314               (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4315                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
4316
4317         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
4318            --  NamedElement::nameExpression : StringExpression
4319
4320            return
4321              AMF.Internals.Holders.UML_Holders.To_Holder
4322               (AMF.UML.String_Expressions.UML_String_Expression_Access'
4323                 (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4324                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
4325
4326         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
4327            --  NamedElement::namespace : Namespace
4328
4329            return
4330              AMF.Internals.Holders.UML_Holders.To_Holder
4331               (AMF.UML.Namespaces.UML_Namespace_Access'
4332                 (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4333                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
4334
4335         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Navigation_Call_Exp_Navigation_Source_A_Exp9 then
4336            --  NavigationCallExp::navigationSource : Property
4337
4338            return
4339              AMF.Internals.Holders.UML_Holders.To_Holder
4340               (AMF.UML.Properties.UML_Property_Access'
4341                 (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4342                   (AMF.Internals.Helpers.To_Element (Self)).Get_Navigation_Source));
4343
4344         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
4345            --  Element::ownedComment : Comment
4346
4347            return
4348              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
4349               (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4350                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
4351
4352         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
4353            --  Element::ownedElement : Element
4354
4355            return
4356              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
4357               (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4358                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
4359
4360         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
4361            --  Element::owner : Element
4362
4363            return
4364              AMF.Internals.Holders.UML_Holders.To_Holder
4365               (AMF.UML.Elements.UML_Element_Access'
4366                 (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4367                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
4368
4369         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
4370            --  NamedElement::qualifiedName : String
4371
4372            return
4373              AMF.Holders.To_Holder
4374               (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4375                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
4376
4377         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Navigation_Call_Exp_Qualifier_A_Parent_Nav then
4378            --  NavigationCallExp::qualifier : OclExpression
4379
4380            return
4381              AMF.OCL.Ocl_Expressions.Collections.OCL_Ocl_Expression_Collections.Internals.To_Holder
4382               (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4383                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualifier);
4384
4385         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Property_Call_Exp_Referred_Property_A_Refering_Exp then
4386            --  PropertyCallExp::referredProperty : Property
4387
4388            return
4389              AMF.Internals.Holders.UML_Holders.To_Holder
4390               (AMF.UML.Properties.UML_Property_Access'
4391                 (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4392                   (AMF.Internals.Helpers.To_Element (Self)).Get_Referred_Property));
4393
4394         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Call_Exp_Source_A_Applied_Element then
4395            --  CallExp::source : OclExpression
4396
4397            return
4398              AMF.Internals.Holders.OCL_Holders.To_Holder
4399               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
4400                 (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4401                   (AMF.Internals.Helpers.To_Element (Self)).Get_Source));
4402
4403         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
4404            --  TypedElement::type : Type
4405
4406            return
4407              AMF.Internals.Holders.UML_Holders.To_Holder
4408               (AMF.UML.Types.UML_Type_Access'
4409                 (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4410                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
4411
4412         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
4413            --  NamedElement::visibility : VisibilityKind
4414
4415            return
4416              AMF.UML.Holders.To_Holder
4417               (AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
4418                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
4419
4420         else
4421            raise Program_Error;
4422         end if;
4423      end OCL_Property_Call_Exp_Get;
4424
4425      ------------------------------
4426      -- OCL_Real_Literal_Exp_Get --
4427      ------------------------------
4428
4429      function OCL_Real_Literal_Exp_Get return League.Holders.Holder is
4430      begin
4431         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
4432            --  NamedElement::clientDependency : Dependency
4433
4434            return
4435              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
4436               (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4437                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
4438
4439         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
4440            --  NamedElement::name : String
4441
4442            return
4443              AMF.Holders.To_Holder
4444               (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4445                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
4446
4447         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
4448            --  NamedElement::nameExpression : StringExpression
4449
4450            return
4451              AMF.Internals.Holders.UML_Holders.To_Holder
4452               (AMF.UML.String_Expressions.UML_String_Expression_Access'
4453                 (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4454                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
4455
4456         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
4457            --  NamedElement::namespace : Namespace
4458
4459            return
4460              AMF.Internals.Holders.UML_Holders.To_Holder
4461               (AMF.UML.Namespaces.UML_Namespace_Access'
4462                 (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4463                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
4464
4465         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
4466            --  Element::ownedComment : Comment
4467
4468            return
4469              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
4470               (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4471                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
4472
4473         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
4474            --  Element::ownedElement : Element
4475
4476            return
4477              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
4478               (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4479                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
4480
4481         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
4482            --  Element::owner : Element
4483
4484            return
4485              AMF.Internals.Holders.UML_Holders.To_Holder
4486               (AMF.UML.Elements.UML_Element_Access'
4487                 (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4488                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
4489
4490         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
4491            --  NamedElement::qualifiedName : String
4492
4493            return
4494              AMF.Holders.To_Holder
4495               (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4496                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
4497
4498         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Real_Literal_Exp_Real_Symbol then
4499            --  RealLiteralExp::realSymbol : Real
4500
4501            return
4502              AMF.Holders.Reals.To_Holder
4503               (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4504                 (AMF.Internals.Helpers.To_Element (Self)).Get_Real_Symbol);
4505
4506         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
4507            --  TypedElement::type : Type
4508
4509            return
4510              AMF.Internals.Holders.UML_Holders.To_Holder
4511               (AMF.UML.Types.UML_Type_Access'
4512                 (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4513                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
4514
4515         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
4516            --  NamedElement::visibility : VisibilityKind
4517
4518            return
4519              AMF.UML.Holders.To_Holder
4520               (AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
4521                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
4522
4523         else
4524            raise Program_Error;
4525         end if;
4526      end OCL_Real_Literal_Exp_Get;
4527
4528      ---------------------------
4529      -- OCL_Sequence_Type_Get --
4530      ---------------------------
4531
4532      function OCL_Sequence_Type_Get return League.Holders.Holder is
4533      begin
4534         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
4535            --  Classifier::attribute : Property
4536
4537            return
4538              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
4539               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4540                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
4541
4542         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
4543            --  NamedElement::clientDependency : Dependency
4544
4545            return
4546              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
4547               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4548                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
4549
4550         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
4551            --  Classifier::collaborationUse : CollaborationUse
4552
4553            return
4554              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
4555               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4556                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
4557
4558         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
4559            --  Namespace::elementImport : ElementImport
4560
4561            return
4562              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
4563               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4564                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
4565
4566         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Type_Element_Type_A_Type1 then
4567            --  CollectionType::elementType : Classifier
4568
4569            return
4570              AMF.Internals.Holders.UML_Holders.To_Holder
4571               (AMF.UML.Classifiers.UML_Classifier_Access'
4572                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4573                   (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Type));
4574
4575         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
4576            --  Classifier::feature : Feature
4577
4578            return
4579              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
4580               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4581                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
4582
4583         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
4584            --  Classifier::general : Classifier
4585
4586            return
4587              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
4588               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4589                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
4590
4591         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
4592            --  Classifier::generalization : Generalization
4593
4594            return
4595              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
4596               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4597                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
4598
4599         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
4600            --  Namespace::importedMember : PackageableElement
4601
4602            return
4603              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
4604               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4605                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
4606
4607         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
4608            --  Classifier::inheritedMember : NamedElement
4609
4610            return
4611              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
4612               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4613                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
4614
4615         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
4616            --  Classifier::isAbstract : Boolean
4617
4618            return
4619              League.Holders.Booleans.To_Holder
4620               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4621                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
4622
4623         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
4624            --  Classifier::isFinalSpecialization : Boolean
4625
4626            return
4627              League.Holders.Booleans.To_Holder
4628               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4629                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
4630
4631         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
4632            --  RedefinableElement::isLeaf : Boolean
4633
4634            return
4635              League.Holders.Booleans.To_Holder
4636               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4637                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
4638
4639         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
4640            --  Namespace::member : NamedElement
4641
4642            return
4643              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
4644               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4645                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
4646
4647         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
4648            --  NamedElement::name : String
4649
4650            return
4651              AMF.Holders.To_Holder
4652               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4653                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
4654
4655         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
4656            --  NamedElement::nameExpression : StringExpression
4657
4658            return
4659              AMF.Internals.Holders.UML_Holders.To_Holder
4660               (AMF.UML.String_Expressions.UML_String_Expression_Access'
4661                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4662                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
4663
4664         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
4665            --  NamedElement::namespace : Namespace
4666
4667            return
4668              AMF.Internals.Holders.UML_Holders.To_Holder
4669               (AMF.UML.Namespaces.UML_Namespace_Access'
4670                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4671                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
4672
4673         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
4674            --  DataType::ownedAttribute : Property
4675
4676            return
4677              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
4678               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4679                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Attribute);
4680
4681         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
4682            --  Element::ownedComment : Comment
4683
4684            return
4685              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
4686               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4687                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
4688
4689         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
4690            --  Element::ownedElement : Element
4691
4692            return
4693              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
4694               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4695                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
4696
4697         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
4698            --  Namespace::ownedMember : NamedElement
4699
4700            return
4701              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
4702               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4703                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
4704
4705         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
4706            --  DataType::ownedOperation : Operation
4707
4708            return
4709              AMF.UML.Operations.Collections.UML_Operation_Collections.Internals.To_Holder
4710               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4711                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Operation);
4712
4713         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
4714            --  Namespace::ownedRule : Constraint
4715
4716            return
4717              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
4718               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4719                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
4720
4721         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
4722            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
4723
4724            return
4725              AMF.Internals.Holders.UML_Holders.To_Holder
4726               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
4727                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4728                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
4729
4730         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
4731            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
4732
4733            return
4734              AMF.Internals.Holders.UML_Holders.To_Holder
4735               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
4736                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4737                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
4738
4739         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
4740            --  Classifier::ownedUseCase : UseCase
4741
4742            return
4743              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
4744               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4745                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
4746
4747         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
4748            --  Element::owner : Element
4749
4750            return
4751              AMF.Internals.Holders.UML_Holders.To_Holder
4752               (AMF.UML.Elements.UML_Element_Access'
4753                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4754                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
4755
4756         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
4757            --  ParameterableElement::owningTemplateParameter : TemplateParameter
4758
4759            return
4760              AMF.Internals.Holders.UML_Holders.To_Holder
4761               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
4762                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4763                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
4764
4765         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
4766            --  Type::package : Package
4767
4768            return
4769              AMF.Internals.Holders.UML_Holders.To_Holder
4770               (AMF.UML.Packages.UML_Package_Access'
4771                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4772                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
4773
4774         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
4775            --  Namespace::packageImport : PackageImport
4776
4777            return
4778              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
4779               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4780                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
4781
4782         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
4783            --  Classifier::powertypeExtent : GeneralizationSet
4784
4785            return
4786              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
4787               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4788                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
4789
4790         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
4791            --  NamedElement::qualifiedName : String
4792
4793            return
4794              AMF.Holders.To_Holder
4795               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4796                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
4797
4798         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
4799            --  Classifier::redefinedClassifier : Classifier
4800
4801            return
4802              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
4803               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4804                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
4805
4806         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
4807            --  RedefinableElement::redefinedElement : RedefinableElement
4808
4809            return
4810              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
4811               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4812                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
4813
4814         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
4815            --  RedefinableElement::redefinitionContext : Classifier
4816
4817            return
4818              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
4819               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4820                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
4821
4822         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
4823            --  Classifier::representation : CollaborationUse
4824
4825            return
4826              AMF.Internals.Holders.UML_Holders.To_Holder
4827               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
4828                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4829                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
4830
4831         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
4832            --  Classifier::substitution : Substitution
4833
4834            return
4835              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
4836               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4837                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
4838
4839         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
4840            --  TemplateableElement::templateBinding : TemplateBinding
4841
4842            return
4843              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
4844               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4845                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
4846
4847         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
4848            --  Classifier::templateParameter : ClassifierTemplateParameter
4849
4850            return
4851              AMF.Internals.Holders.UML_Holders.To_Holder
4852               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
4853                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4854                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
4855
4856         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
4857            --  ParameterableElement::templateParameter : TemplateParameter
4858
4859            return
4860              AMF.Internals.Holders.UML_Holders.To_Holder
4861               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
4862                 (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4863                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
4864
4865         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
4866            --  Classifier::useCase : UseCase
4867
4868            return
4869              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
4870               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4871                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
4872
4873         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
4874            --  NamedElement::visibility : VisibilityKind
4875
4876            return
4877              AMF.UML.Holders.To_Holder
4878               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4879                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
4880
4881         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
4882            --  PackageableElement::visibility : VisibilityKind
4883
4884            return
4885              AMF.UML.Holders.Visibility_Kinds.To_Holder
4886               (AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
4887                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
4888
4889         else
4890            raise Program_Error;
4891         end if;
4892      end OCL_Sequence_Type_Get;
4893
4894      ----------------------
4895      -- OCL_Set_Type_Get --
4896      ----------------------
4897
4898      function OCL_Set_Type_Get return League.Holders.Holder is
4899      begin
4900         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
4901            --  Classifier::attribute : Property
4902
4903            return
4904              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
4905               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4906                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
4907
4908         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
4909            --  NamedElement::clientDependency : Dependency
4910
4911            return
4912              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
4913               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4914                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
4915
4916         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
4917            --  Classifier::collaborationUse : CollaborationUse
4918
4919            return
4920              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
4921               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4922                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
4923
4924         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
4925            --  Namespace::elementImport : ElementImport
4926
4927            return
4928              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
4929               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4930                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
4931
4932         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Type_Element_Type_A_Type1 then
4933            --  CollectionType::elementType : Classifier
4934
4935            return
4936              AMF.Internals.Holders.UML_Holders.To_Holder
4937               (AMF.UML.Classifiers.UML_Classifier_Access'
4938                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
4939                   (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Type));
4940
4941         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
4942            --  Classifier::feature : Feature
4943
4944            return
4945              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
4946               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4947                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
4948
4949         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
4950            --  Classifier::general : Classifier
4951
4952            return
4953              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
4954               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4955                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
4956
4957         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
4958            --  Classifier::generalization : Generalization
4959
4960            return
4961              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
4962               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4963                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
4964
4965         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
4966            --  Namespace::importedMember : PackageableElement
4967
4968            return
4969              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
4970               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4971                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
4972
4973         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
4974            --  Classifier::inheritedMember : NamedElement
4975
4976            return
4977              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
4978               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4979                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
4980
4981         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
4982            --  Classifier::isAbstract : Boolean
4983
4984            return
4985              League.Holders.Booleans.To_Holder
4986               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4987                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
4988
4989         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
4990            --  Classifier::isFinalSpecialization : Boolean
4991
4992            return
4993              League.Holders.Booleans.To_Holder
4994               (AMF.OCL.Set_Types.OCL_Set_Type_Access
4995                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
4996
4997         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
4998            --  RedefinableElement::isLeaf : Boolean
4999
5000            return
5001              League.Holders.Booleans.To_Holder
5002               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5003                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
5004
5005         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
5006            --  Namespace::member : NamedElement
5007
5008            return
5009              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
5010               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5011                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
5012
5013         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
5014            --  NamedElement::name : String
5015
5016            return
5017              AMF.Holders.To_Holder
5018               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5019                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
5020
5021         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
5022            --  NamedElement::nameExpression : StringExpression
5023
5024            return
5025              AMF.Internals.Holders.UML_Holders.To_Holder
5026               (AMF.UML.String_Expressions.UML_String_Expression_Access'
5027                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
5028                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
5029
5030         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
5031            --  NamedElement::namespace : Namespace
5032
5033            return
5034              AMF.Internals.Holders.UML_Holders.To_Holder
5035               (AMF.UML.Namespaces.UML_Namespace_Access'
5036                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
5037                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
5038
5039         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
5040            --  DataType::ownedAttribute : Property
5041
5042            return
5043              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
5044               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5045                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Attribute);
5046
5047         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
5048            --  Element::ownedComment : Comment
5049
5050            return
5051              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
5052               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5053                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
5054
5055         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
5056            --  Element::ownedElement : Element
5057
5058            return
5059              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
5060               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5061                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
5062
5063         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
5064            --  Namespace::ownedMember : NamedElement
5065
5066            return
5067              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
5068               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5069                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
5070
5071         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
5072            --  DataType::ownedOperation : Operation
5073
5074            return
5075              AMF.UML.Operations.Collections.UML_Operation_Collections.Internals.To_Holder
5076               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5077                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Operation);
5078
5079         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
5080            --  Namespace::ownedRule : Constraint
5081
5082            return
5083              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
5084               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5085                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
5086
5087         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
5088            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
5089
5090            return
5091              AMF.Internals.Holders.UML_Holders.To_Holder
5092               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
5093                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
5094                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
5095
5096         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
5097            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
5098
5099            return
5100              AMF.Internals.Holders.UML_Holders.To_Holder
5101               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
5102                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
5103                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
5104
5105         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
5106            --  Classifier::ownedUseCase : UseCase
5107
5108            return
5109              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
5110               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5111                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
5112
5113         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
5114            --  Element::owner : Element
5115
5116            return
5117              AMF.Internals.Holders.UML_Holders.To_Holder
5118               (AMF.UML.Elements.UML_Element_Access'
5119                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
5120                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
5121
5122         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
5123            --  ParameterableElement::owningTemplateParameter : TemplateParameter
5124
5125            return
5126              AMF.Internals.Holders.UML_Holders.To_Holder
5127               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
5128                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
5129                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
5130
5131         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
5132            --  Type::package : Package
5133
5134            return
5135              AMF.Internals.Holders.UML_Holders.To_Holder
5136               (AMF.UML.Packages.UML_Package_Access'
5137                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
5138                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
5139
5140         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
5141            --  Namespace::packageImport : PackageImport
5142
5143            return
5144              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
5145               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5146                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
5147
5148         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
5149            --  Classifier::powertypeExtent : GeneralizationSet
5150
5151            return
5152              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
5153               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5154                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
5155
5156         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
5157            --  NamedElement::qualifiedName : String
5158
5159            return
5160              AMF.Holders.To_Holder
5161               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5162                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
5163
5164         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
5165            --  Classifier::redefinedClassifier : Classifier
5166
5167            return
5168              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
5169               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5170                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
5171
5172         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
5173            --  RedefinableElement::redefinedElement : RedefinableElement
5174
5175            return
5176              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
5177               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5178                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
5179
5180         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
5181            --  RedefinableElement::redefinitionContext : Classifier
5182
5183            return
5184              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
5185               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5186                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
5187
5188         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
5189            --  Classifier::representation : CollaborationUse
5190
5191            return
5192              AMF.Internals.Holders.UML_Holders.To_Holder
5193               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
5194                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
5195                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
5196
5197         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
5198            --  Classifier::substitution : Substitution
5199
5200            return
5201              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
5202               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5203                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
5204
5205         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
5206            --  TemplateableElement::templateBinding : TemplateBinding
5207
5208            return
5209              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
5210               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5211                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
5212
5213         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
5214            --  Classifier::templateParameter : ClassifierTemplateParameter
5215
5216            return
5217              AMF.Internals.Holders.UML_Holders.To_Holder
5218               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
5219                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
5220                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
5221
5222         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
5223            --  ParameterableElement::templateParameter : TemplateParameter
5224
5225            return
5226              AMF.Internals.Holders.UML_Holders.To_Holder
5227               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
5228                 (AMF.OCL.Set_Types.OCL_Set_Type_Access
5229                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
5230
5231         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
5232            --  Classifier::useCase : UseCase
5233
5234            return
5235              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
5236               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5237                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
5238
5239         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
5240            --  NamedElement::visibility : VisibilityKind
5241
5242            return
5243              AMF.UML.Holders.To_Holder
5244               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5245                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
5246
5247         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
5248            --  PackageableElement::visibility : VisibilityKind
5249
5250            return
5251              AMF.UML.Holders.Visibility_Kinds.To_Holder
5252               (AMF.OCL.Set_Types.OCL_Set_Type_Access
5253                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
5254
5255         else
5256            raise Program_Error;
5257         end if;
5258      end OCL_Set_Type_Get;
5259
5260      -----------------------
5261      -- OCL_State_Exp_Get --
5262      -----------------------
5263
5264      function OCL_State_Exp_Get return League.Holders.Holder is
5265      begin
5266         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
5267            --  NamedElement::clientDependency : Dependency
5268
5269            return
5270              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
5271               (AMF.OCL.State_Exps.OCL_State_Exp_Access
5272                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
5273
5274         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
5275            --  NamedElement::name : String
5276
5277            return
5278              AMF.Holders.To_Holder
5279               (AMF.OCL.State_Exps.OCL_State_Exp_Access
5280                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
5281
5282         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
5283            --  NamedElement::nameExpression : StringExpression
5284
5285            return
5286              AMF.Internals.Holders.UML_Holders.To_Holder
5287               (AMF.UML.String_Expressions.UML_String_Expression_Access'
5288                 (AMF.OCL.State_Exps.OCL_State_Exp_Access
5289                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
5290
5291         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
5292            --  NamedElement::namespace : Namespace
5293
5294            return
5295              AMF.Internals.Holders.UML_Holders.To_Holder
5296               (AMF.UML.Namespaces.UML_Namespace_Access'
5297                 (AMF.OCL.State_Exps.OCL_State_Exp_Access
5298                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
5299
5300         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
5301            --  Element::ownedComment : Comment
5302
5303            return
5304              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
5305               (AMF.OCL.State_Exps.OCL_State_Exp_Access
5306                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
5307
5308         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
5309            --  Element::ownedElement : Element
5310
5311            return
5312              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
5313               (AMF.OCL.State_Exps.OCL_State_Exp_Access
5314                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
5315
5316         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
5317            --  Element::owner : Element
5318
5319            return
5320              AMF.Internals.Holders.UML_Holders.To_Holder
5321               (AMF.UML.Elements.UML_Element_Access'
5322                 (AMF.OCL.State_Exps.OCL_State_Exp_Access
5323                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
5324
5325         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
5326            --  NamedElement::qualifiedName : String
5327
5328            return
5329              AMF.Holders.To_Holder
5330               (AMF.OCL.State_Exps.OCL_State_Exp_Access
5331                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
5332
5333         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_State_Exp_Referred_State_A_Exp9 then
5334            --  StateExp::referredState : State
5335
5336            return
5337              AMF.Internals.Holders.UML_Holders.To_Holder
5338               (AMF.UML.States.UML_State_Access'
5339                 (AMF.OCL.State_Exps.OCL_State_Exp_Access
5340                   (AMF.Internals.Helpers.To_Element (Self)).Get_Referred_State));
5341
5342         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
5343            --  TypedElement::type : Type
5344
5345            return
5346              AMF.Internals.Holders.UML_Holders.To_Holder
5347               (AMF.UML.Types.UML_Type_Access'
5348                 (AMF.OCL.State_Exps.OCL_State_Exp_Access
5349                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
5350
5351         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
5352            --  NamedElement::visibility : VisibilityKind
5353
5354            return
5355              AMF.UML.Holders.To_Holder
5356               (AMF.OCL.State_Exps.OCL_State_Exp_Access
5357                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
5358
5359         else
5360            raise Program_Error;
5361         end if;
5362      end OCL_State_Exp_Get;
5363
5364      --------------------------------
5365      -- OCL_String_Literal_Exp_Get --
5366      --------------------------------
5367
5368      function OCL_String_Literal_Exp_Get return League.Holders.Holder is
5369      begin
5370         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
5371            --  NamedElement::clientDependency : Dependency
5372
5373            return
5374              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
5375               (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5376                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
5377
5378         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
5379            --  NamedElement::name : String
5380
5381            return
5382              AMF.Holders.To_Holder
5383               (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5384                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
5385
5386         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
5387            --  NamedElement::nameExpression : StringExpression
5388
5389            return
5390              AMF.Internals.Holders.UML_Holders.To_Holder
5391               (AMF.UML.String_Expressions.UML_String_Expression_Access'
5392                 (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5393                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
5394
5395         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
5396            --  NamedElement::namespace : Namespace
5397
5398            return
5399              AMF.Internals.Holders.UML_Holders.To_Holder
5400               (AMF.UML.Namespaces.UML_Namespace_Access'
5401                 (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5402                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
5403
5404         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
5405            --  Element::ownedComment : Comment
5406
5407            return
5408              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
5409               (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5410                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
5411
5412         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
5413            --  Element::ownedElement : Element
5414
5415            return
5416              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
5417               (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5418                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
5419
5420         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
5421            --  Element::owner : Element
5422
5423            return
5424              AMF.Internals.Holders.UML_Holders.To_Holder
5425               (AMF.UML.Elements.UML_Element_Access'
5426                 (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5427                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
5428
5429         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
5430            --  NamedElement::qualifiedName : String
5431
5432            return
5433              AMF.Holders.To_Holder
5434               (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5435                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
5436
5437         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_String_Literal_Exp_String_Symbol then
5438            --  StringLiteralExp::stringSymbol : String
5439
5440            return
5441              League.Holders.To_Holder
5442               (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5443                 (AMF.Internals.Helpers.To_Element (Self)).Get_String_Symbol);
5444
5445         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
5446            --  TypedElement::type : Type
5447
5448            return
5449              AMF.Internals.Holders.UML_Holders.To_Holder
5450               (AMF.UML.Types.UML_Type_Access'
5451                 (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5452                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
5453
5454         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
5455            --  NamedElement::visibility : VisibilityKind
5456
5457            return
5458              AMF.UML.Holders.To_Holder
5459               (AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
5460                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
5461
5462         else
5463            raise Program_Error;
5464         end if;
5465      end OCL_String_Literal_Exp_Get;
5466
5467      -------------------------------------
5468      -- OCL_Template_Parameter_Type_Get --
5469      -------------------------------------
5470
5471      function OCL_Template_Parameter_Type_Get return League.Holders.Holder is
5472      begin
5473         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
5474            --  Classifier::attribute : Property
5475
5476            return
5477              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
5478               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5479                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
5480
5481         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
5482            --  NamedElement::clientDependency : Dependency
5483
5484            return
5485              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
5486               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5487                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
5488
5489         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
5490            --  Classifier::collaborationUse : CollaborationUse
5491
5492            return
5493              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
5494               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5495                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
5496
5497         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
5498            --  Namespace::elementImport : ElementImport
5499
5500            return
5501              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
5502               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5503                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
5504
5505         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
5506            --  Classifier::feature : Feature
5507
5508            return
5509              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
5510               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5511                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
5512
5513         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
5514            --  Classifier::general : Classifier
5515
5516            return
5517              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
5518               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5519                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
5520
5521         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
5522            --  Classifier::generalization : Generalization
5523
5524            return
5525              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
5526               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5527                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
5528
5529         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
5530            --  Namespace::importedMember : PackageableElement
5531
5532            return
5533              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
5534               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5535                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
5536
5537         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
5538            --  Classifier::inheritedMember : NamedElement
5539
5540            return
5541              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
5542               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5543                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
5544
5545         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
5546            --  Classifier::isAbstract : Boolean
5547
5548            return
5549              League.Holders.Booleans.To_Holder
5550               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5551                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
5552
5553         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
5554            --  Classifier::isFinalSpecialization : Boolean
5555
5556            return
5557              League.Holders.Booleans.To_Holder
5558               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5559                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
5560
5561         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
5562            --  RedefinableElement::isLeaf : Boolean
5563
5564            return
5565              League.Holders.Booleans.To_Holder
5566               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5567                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
5568
5569         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
5570            --  Namespace::member : NamedElement
5571
5572            return
5573              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
5574               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5575                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
5576
5577         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
5578            --  NamedElement::name : String
5579
5580            return
5581              AMF.Holders.To_Holder
5582               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5583                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
5584
5585         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
5586            --  NamedElement::nameExpression : StringExpression
5587
5588            return
5589              AMF.Internals.Holders.UML_Holders.To_Holder
5590               (AMF.UML.String_Expressions.UML_String_Expression_Access'
5591                 (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5592                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
5593
5594         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
5595            --  NamedElement::namespace : Namespace
5596
5597            return
5598              AMF.Internals.Holders.UML_Holders.To_Holder
5599               (AMF.UML.Namespaces.UML_Namespace_Access'
5600                 (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5601                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
5602
5603         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
5604            --  Element::ownedComment : Comment
5605
5606            return
5607              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
5608               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5609                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
5610
5611         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
5612            --  Element::ownedElement : Element
5613
5614            return
5615              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
5616               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5617                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
5618
5619         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
5620            --  Namespace::ownedMember : NamedElement
5621
5622            return
5623              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
5624               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5625                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
5626
5627         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
5628            --  Namespace::ownedRule : Constraint
5629
5630            return
5631              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
5632               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5633                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
5634
5635         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
5636            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
5637
5638            return
5639              AMF.Internals.Holders.UML_Holders.To_Holder
5640               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
5641                 (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5642                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
5643
5644         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
5645            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
5646
5647            return
5648              AMF.Internals.Holders.UML_Holders.To_Holder
5649               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
5650                 (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5651                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
5652
5653         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
5654            --  Classifier::ownedUseCase : UseCase
5655
5656            return
5657              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
5658               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5659                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
5660
5661         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
5662            --  Element::owner : Element
5663
5664            return
5665              AMF.Internals.Holders.UML_Holders.To_Holder
5666               (AMF.UML.Elements.UML_Element_Access'
5667                 (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5668                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
5669
5670         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
5671            --  ParameterableElement::owningTemplateParameter : TemplateParameter
5672
5673            return
5674              AMF.Internals.Holders.UML_Holders.To_Holder
5675               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
5676                 (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5677                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
5678
5679         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
5680            --  Type::package : Package
5681
5682            return
5683              AMF.Internals.Holders.UML_Holders.To_Holder
5684               (AMF.UML.Packages.UML_Package_Access'
5685                 (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5686                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
5687
5688         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
5689            --  Namespace::packageImport : PackageImport
5690
5691            return
5692              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
5693               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5694                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
5695
5696         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
5697            --  Classifier::powertypeExtent : GeneralizationSet
5698
5699            return
5700              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
5701               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5702                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
5703
5704         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
5705            --  NamedElement::qualifiedName : String
5706
5707            return
5708              AMF.Holders.To_Holder
5709               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5710                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
5711
5712         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
5713            --  Classifier::redefinedClassifier : Classifier
5714
5715            return
5716              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
5717               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5718                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
5719
5720         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
5721            --  RedefinableElement::redefinedElement : RedefinableElement
5722
5723            return
5724              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
5725               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5726                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
5727
5728         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
5729            --  RedefinableElement::redefinitionContext : Classifier
5730
5731            return
5732              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
5733               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5734                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
5735
5736         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
5737            --  Classifier::representation : CollaborationUse
5738
5739            return
5740              AMF.Internals.Holders.UML_Holders.To_Holder
5741               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
5742                 (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5743                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
5744
5745         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Template_Parameter_Type_Specification then
5746            --  TemplateParameterType::specification : String
5747
5748            return
5749              AMF.Holders.To_Holder
5750               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5751                 (AMF.Internals.Helpers.To_Element (Self)).Get_Specification);
5752
5753         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
5754            --  Classifier::substitution : Substitution
5755
5756            return
5757              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
5758               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5759                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
5760
5761         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
5762            --  TemplateableElement::templateBinding : TemplateBinding
5763
5764            return
5765              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
5766               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5767                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
5768
5769         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
5770            --  Classifier::templateParameter : ClassifierTemplateParameter
5771
5772            return
5773              AMF.Internals.Holders.UML_Holders.To_Holder
5774               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
5775                 (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5776                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
5777
5778         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
5779            --  ParameterableElement::templateParameter : TemplateParameter
5780
5781            return
5782              AMF.Internals.Holders.UML_Holders.To_Holder
5783               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
5784                 (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5785                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
5786
5787         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
5788            --  Classifier::useCase : UseCase
5789
5790            return
5791              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
5792               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5793                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
5794
5795         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
5796            --  NamedElement::visibility : VisibilityKind
5797
5798            return
5799              AMF.UML.Holders.To_Holder
5800               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5801                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
5802
5803         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
5804            --  PackageableElement::visibility : VisibilityKind
5805
5806            return
5807              AMF.UML.Holders.Visibility_Kinds.To_Holder
5808               (AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
5809                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
5810
5811         else
5812            raise Program_Error;
5813         end if;
5814      end OCL_Template_Parameter_Type_Get;
5815
5816      -------------------------------
5817      -- OCL_Tuple_Literal_Exp_Get --
5818      -------------------------------
5819
5820      function OCL_Tuple_Literal_Exp_Get return League.Holders.Holder is
5821      begin
5822         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
5823            --  NamedElement::clientDependency : Dependency
5824
5825            return
5826              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
5827               (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5828                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
5829
5830         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
5831            --  NamedElement::name : String
5832
5833            return
5834              AMF.Holders.To_Holder
5835               (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5836                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
5837
5838         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
5839            --  NamedElement::nameExpression : StringExpression
5840
5841            return
5842              AMF.Internals.Holders.UML_Holders.To_Holder
5843               (AMF.UML.String_Expressions.UML_String_Expression_Access'
5844                 (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5845                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
5846
5847         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
5848            --  NamedElement::namespace : Namespace
5849
5850            return
5851              AMF.Internals.Holders.UML_Holders.To_Holder
5852               (AMF.UML.Namespaces.UML_Namespace_Access'
5853                 (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5854                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
5855
5856         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
5857            --  Element::ownedComment : Comment
5858
5859            return
5860              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
5861               (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5862                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
5863
5864         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
5865            --  Element::ownedElement : Element
5866
5867            return
5868              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
5869               (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5870                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
5871
5872         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
5873            --  Element::owner : Element
5874
5875            return
5876              AMF.Internals.Holders.UML_Holders.To_Holder
5877               (AMF.UML.Elements.UML_Element_Access'
5878                 (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5879                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
5880
5881         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Tuple_Literal_Exp_Part_A_Exp3 then
5882            --  TupleLiteralExp::part : TupleLiteralPart
5883
5884            return
5885              AMF.OCL.Tuple_Literal_Parts.Collections.OCL_Tuple_Literal_Part_Collections.Internals.To_Holder
5886               (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5887                 (AMF.Internals.Helpers.To_Element (Self)).Get_Part);
5888
5889         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
5890            --  NamedElement::qualifiedName : String
5891
5892            return
5893              AMF.Holders.To_Holder
5894               (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5895                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
5896
5897         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
5898            --  TypedElement::type : Type
5899
5900            return
5901              AMF.Internals.Holders.UML_Holders.To_Holder
5902               (AMF.UML.Types.UML_Type_Access'
5903                 (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5904                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
5905
5906         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
5907            --  NamedElement::visibility : VisibilityKind
5908
5909            return
5910              AMF.UML.Holders.To_Holder
5911               (AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
5912                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
5913
5914         else
5915            raise Program_Error;
5916         end if;
5917      end OCL_Tuple_Literal_Exp_Get;
5918
5919      --------------------------------
5920      -- OCL_Tuple_Literal_Part_Get --
5921      --------------------------------
5922
5923      function OCL_Tuple_Literal_Part_Get return League.Holders.Holder is
5924      begin
5925         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Tuple_Literal_Part_Attribute_A_Part2 then
5926            --  TupleLiteralPart::attribute : Property
5927
5928            return
5929              AMF.Internals.Holders.UML_Holders.To_Holder
5930               (AMF.UML.Properties.UML_Property_Access'
5931                 (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
5932                   (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute));
5933
5934         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
5935            --  NamedElement::clientDependency : Dependency
5936
5937            return
5938              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
5939               (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
5940                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
5941
5942         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
5943            --  NamedElement::name : String
5944
5945            return
5946              AMF.Holders.To_Holder
5947               (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
5948                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
5949
5950         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
5951            --  NamedElement::nameExpression : StringExpression
5952
5953            return
5954              AMF.Internals.Holders.UML_Holders.To_Holder
5955               (AMF.UML.String_Expressions.UML_String_Expression_Access'
5956                 (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
5957                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
5958
5959         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
5960            --  NamedElement::namespace : Namespace
5961
5962            return
5963              AMF.Internals.Holders.UML_Holders.To_Holder
5964               (AMF.UML.Namespaces.UML_Namespace_Access'
5965                 (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
5966                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
5967
5968         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
5969            --  Element::ownedComment : Comment
5970
5971            return
5972              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
5973               (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
5974                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
5975
5976         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
5977            --  Element::ownedElement : Element
5978
5979            return
5980              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
5981               (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
5982                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
5983
5984         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
5985            --  Element::owner : Element
5986
5987            return
5988              AMF.Internals.Holders.UML_Holders.To_Holder
5989               (AMF.UML.Elements.UML_Element_Access'
5990                 (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
5991                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
5992
5993         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
5994            --  NamedElement::qualifiedName : String
5995
5996            return
5997              AMF.Holders.To_Holder
5998               (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
5999                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
6000
6001         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
6002            --  TypedElement::type : Type
6003
6004            return
6005              AMF.Internals.Holders.UML_Holders.To_Holder
6006               (AMF.UML.Types.UML_Type_Access'
6007                 (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
6008                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
6009
6010         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
6011            --  NamedElement::visibility : VisibilityKind
6012
6013            return
6014              AMF.UML.Holders.To_Holder
6015               (AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
6016                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
6017
6018         else
6019            raise Program_Error;
6020         end if;
6021      end OCL_Tuple_Literal_Part_Get;
6022
6023      ------------------------
6024      -- OCL_Tuple_Type_Get --
6025      ------------------------
6026
6027      function OCL_Tuple_Type_Get return League.Holders.Holder is
6028      begin
6029         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
6030            --  Classifier::attribute : Property
6031
6032            return
6033              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
6034               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6035                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
6036
6037         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
6038            --  NamedElement::clientDependency : Dependency
6039
6040            return
6041              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
6042               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6043                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
6044
6045         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
6046            --  Classifier::collaborationUse : CollaborationUse
6047
6048            return
6049              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
6050               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6051                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
6052
6053         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
6054            --  Namespace::elementImport : ElementImport
6055
6056            return
6057              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
6058               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6059                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
6060
6061         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
6062            --  Classifier::feature : Feature
6063
6064            return
6065              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
6066               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6067                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
6068
6069         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
6070            --  Classifier::general : Classifier
6071
6072            return
6073              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
6074               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6075                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
6076
6077         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
6078            --  Classifier::generalization : Generalization
6079
6080            return
6081              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
6082               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6083                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
6084
6085         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
6086            --  Namespace::importedMember : PackageableElement
6087
6088            return
6089              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
6090               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6091                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
6092
6093         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
6094            --  Classifier::inheritedMember : NamedElement
6095
6096            return
6097              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
6098               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6099                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
6100
6101         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
6102            --  Classifier::isAbstract : Boolean
6103
6104            return
6105              League.Holders.Booleans.To_Holder
6106               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6107                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
6108
6109         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
6110            --  Classifier::isFinalSpecialization : Boolean
6111
6112            return
6113              League.Holders.Booleans.To_Holder
6114               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6115                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
6116
6117         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
6118            --  RedefinableElement::isLeaf : Boolean
6119
6120            return
6121              League.Holders.Booleans.To_Holder
6122               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6123                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
6124
6125         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
6126            --  Namespace::member : NamedElement
6127
6128            return
6129              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
6130               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6131                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
6132
6133         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
6134            --  NamedElement::name : String
6135
6136            return
6137              AMF.Holders.To_Holder
6138               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6139                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
6140
6141         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
6142            --  NamedElement::nameExpression : StringExpression
6143
6144            return
6145              AMF.Internals.Holders.UML_Holders.To_Holder
6146               (AMF.UML.String_Expressions.UML_String_Expression_Access'
6147                 (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6148                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
6149
6150         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
6151            --  NamedElement::namespace : Namespace
6152
6153            return
6154              AMF.Internals.Holders.UML_Holders.To_Holder
6155               (AMF.UML.Namespaces.UML_Namespace_Access'
6156                 (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6157                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
6158
6159         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Attribute_Property_Datatype then
6160            --  DataType::ownedAttribute : Property
6161
6162            return
6163              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
6164               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6165                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Attribute);
6166
6167         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
6168            --  Element::ownedComment : Comment
6169
6170            return
6171              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
6172               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6173                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
6174
6175         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
6176            --  Element::ownedElement : Element
6177
6178            return
6179              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
6180               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6181                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
6182
6183         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
6184            --  Namespace::ownedMember : NamedElement
6185
6186            return
6187              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
6188               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6189                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
6190
6191         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Data_Type_Owned_Operation_Operation_Datatype then
6192            --  DataType::ownedOperation : Operation
6193
6194            return
6195              AMF.UML.Operations.Collections.UML_Operation_Collections.Internals.To_Holder
6196               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6197                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Operation);
6198
6199         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
6200            --  Namespace::ownedRule : Constraint
6201
6202            return
6203              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
6204               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6205                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
6206
6207         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
6208            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
6209
6210            return
6211              AMF.Internals.Holders.UML_Holders.To_Holder
6212               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
6213                 (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6214                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
6215
6216         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
6217            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
6218
6219            return
6220              AMF.Internals.Holders.UML_Holders.To_Holder
6221               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
6222                 (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6223                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
6224
6225         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
6226            --  Classifier::ownedUseCase : UseCase
6227
6228            return
6229              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
6230               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6231                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
6232
6233         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
6234            --  Element::owner : Element
6235
6236            return
6237              AMF.Internals.Holders.UML_Holders.To_Holder
6238               (AMF.UML.Elements.UML_Element_Access'
6239                 (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6240                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
6241
6242         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
6243            --  ParameterableElement::owningTemplateParameter : TemplateParameter
6244
6245            return
6246              AMF.Internals.Holders.UML_Holders.To_Holder
6247               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
6248                 (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6249                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
6250
6251         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
6252            --  Type::package : Package
6253
6254            return
6255              AMF.Internals.Holders.UML_Holders.To_Holder
6256               (AMF.UML.Packages.UML_Package_Access'
6257                 (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6258                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
6259
6260         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
6261            --  Namespace::packageImport : PackageImport
6262
6263            return
6264              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
6265               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6266                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
6267
6268         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
6269            --  Classifier::powertypeExtent : GeneralizationSet
6270
6271            return
6272              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
6273               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6274                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
6275
6276         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
6277            --  NamedElement::qualifiedName : String
6278
6279            return
6280              AMF.Holders.To_Holder
6281               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6282                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
6283
6284         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
6285            --  Classifier::redefinedClassifier : Classifier
6286
6287            return
6288              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
6289               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6290                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
6291
6292         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
6293            --  RedefinableElement::redefinedElement : RedefinableElement
6294
6295            return
6296              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
6297               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6298                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
6299
6300         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
6301            --  RedefinableElement::redefinitionContext : Classifier
6302
6303            return
6304              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
6305               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6306                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
6307
6308         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
6309            --  Classifier::representation : CollaborationUse
6310
6311            return
6312              AMF.Internals.Holders.UML_Holders.To_Holder
6313               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
6314                 (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6315                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
6316
6317         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
6318            --  Classifier::substitution : Substitution
6319
6320            return
6321              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
6322               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6323                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
6324
6325         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
6326            --  TemplateableElement::templateBinding : TemplateBinding
6327
6328            return
6329              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
6330               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6331                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
6332
6333         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
6334            --  Classifier::templateParameter : ClassifierTemplateParameter
6335
6336            return
6337              AMF.Internals.Holders.UML_Holders.To_Holder
6338               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
6339                 (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6340                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
6341
6342         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
6343            --  ParameterableElement::templateParameter : TemplateParameter
6344
6345            return
6346              AMF.Internals.Holders.UML_Holders.To_Holder
6347               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
6348                 (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6349                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
6350
6351         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
6352            --  Classifier::useCase : UseCase
6353
6354            return
6355              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
6356               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6357                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
6358
6359         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
6360            --  NamedElement::visibility : VisibilityKind
6361
6362            return
6363              AMF.UML.Holders.To_Holder
6364               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6365                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
6366
6367         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
6368            --  PackageableElement::visibility : VisibilityKind
6369
6370            return
6371              AMF.UML.Holders.Visibility_Kinds.To_Holder
6372               (AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
6373                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
6374
6375         else
6376            raise Program_Error;
6377         end if;
6378      end OCL_Tuple_Type_Get;
6379
6380      ----------------------
6381      -- OCL_Type_Exp_Get --
6382      ----------------------
6383
6384      function OCL_Type_Exp_Get return League.Holders.Holder is
6385      begin
6386         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
6387            --  NamedElement::clientDependency : Dependency
6388
6389            return
6390              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
6391               (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6392                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
6393
6394         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
6395            --  NamedElement::name : String
6396
6397            return
6398              AMF.Holders.To_Holder
6399               (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6400                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
6401
6402         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
6403            --  NamedElement::nameExpression : StringExpression
6404
6405            return
6406              AMF.Internals.Holders.UML_Holders.To_Holder
6407               (AMF.UML.String_Expressions.UML_String_Expression_Access'
6408                 (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6409                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
6410
6411         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
6412            --  NamedElement::namespace : Namespace
6413
6414            return
6415              AMF.Internals.Holders.UML_Holders.To_Holder
6416               (AMF.UML.Namespaces.UML_Namespace_Access'
6417                 (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6418                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
6419
6420         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
6421            --  Element::ownedComment : Comment
6422
6423            return
6424              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
6425               (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6426                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
6427
6428         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
6429            --  Element::ownedElement : Element
6430
6431            return
6432              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
6433               (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6434                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
6435
6436         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
6437            --  Element::owner : Element
6438
6439            return
6440              AMF.Internals.Holders.UML_Holders.To_Holder
6441               (AMF.UML.Elements.UML_Element_Access'
6442                 (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6443                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
6444
6445         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
6446            --  NamedElement::qualifiedName : String
6447
6448            return
6449              AMF.Holders.To_Holder
6450               (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6451                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
6452
6453         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Type_Exp_Referred_Type_A_Exp11 then
6454            --  TypeExp::referredType : Classifier
6455
6456            return
6457              AMF.Internals.Holders.UML_Holders.To_Holder
6458               (AMF.UML.Classifiers.UML_Classifier_Access'
6459                 (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6460                   (AMF.Internals.Helpers.To_Element (Self)).Get_Referred_Type));
6461
6462         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
6463            --  TypedElement::type : Type
6464
6465            return
6466              AMF.Internals.Holders.UML_Holders.To_Holder
6467               (AMF.UML.Types.UML_Type_Access'
6468                 (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6469                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
6470
6471         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
6472            --  NamedElement::visibility : VisibilityKind
6473
6474            return
6475              AMF.UML.Holders.To_Holder
6476               (AMF.OCL.Type_Exps.OCL_Type_Exp_Access
6477                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
6478
6479         else
6480            raise Program_Error;
6481         end if;
6482      end OCL_Type_Exp_Get;
6483
6484      -------------------------------------------
6485      -- OCL_Unlimited_Natural_Literal_Exp_Get --
6486      -------------------------------------------
6487
6488      function OCL_Unlimited_Natural_Literal_Exp_Get return League.Holders.Holder is
6489      begin
6490         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
6491            --  NamedElement::clientDependency : Dependency
6492
6493            return
6494              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
6495               (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6496                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
6497
6498         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
6499            --  NamedElement::name : String
6500
6501            return
6502              AMF.Holders.To_Holder
6503               (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6504                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
6505
6506         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
6507            --  NamedElement::nameExpression : StringExpression
6508
6509            return
6510              AMF.Internals.Holders.UML_Holders.To_Holder
6511               (AMF.UML.String_Expressions.UML_String_Expression_Access'
6512                 (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6513                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
6514
6515         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
6516            --  NamedElement::namespace : Namespace
6517
6518            return
6519              AMF.Internals.Holders.UML_Holders.To_Holder
6520               (AMF.UML.Namespaces.UML_Namespace_Access'
6521                 (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6522                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
6523
6524         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
6525            --  Element::ownedComment : Comment
6526
6527            return
6528              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
6529               (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6530                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
6531
6532         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
6533            --  Element::ownedElement : Element
6534
6535            return
6536              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
6537               (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6538                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
6539
6540         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
6541            --  Element::owner : Element
6542
6543            return
6544              AMF.Internals.Holders.UML_Holders.To_Holder
6545               (AMF.UML.Elements.UML_Element_Access'
6546                 (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6547                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
6548
6549         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
6550            --  NamedElement::qualifiedName : String
6551
6552            return
6553              AMF.Holders.To_Holder
6554               (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6555                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
6556
6557         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
6558            --  TypedElement::type : Type
6559
6560            return
6561              AMF.Internals.Holders.UML_Holders.To_Holder
6562               (AMF.UML.Types.UML_Type_Access'
6563                 (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6564                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
6565
6566         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Unlimited_Natural_Literal_Exp_Unlimited_Natural_Symbol then
6567            --  UnlimitedNaturalLiteralExp::unlimitedNaturalSymbol : UnlimitedNatural
6568
6569            return
6570              AMF.Holders.Unlimited_Naturals.To_Holder
6571               (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6572                 (AMF.Internals.Helpers.To_Element (Self)).Get_Unlimited_Natural_Symbol);
6573
6574         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
6575            --  NamedElement::visibility : VisibilityKind
6576
6577            return
6578              AMF.UML.Holders.To_Holder
6579               (AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
6580                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
6581
6582         else
6583            raise Program_Error;
6584         end if;
6585      end OCL_Unlimited_Natural_Literal_Exp_Get;
6586
6587      -----------------------------------
6588      -- OCL_Unspecified_Value_Exp_Get --
6589      -----------------------------------
6590
6591      function OCL_Unspecified_Value_Exp_Get return League.Holders.Holder is
6592      begin
6593         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
6594            --  NamedElement::clientDependency : Dependency
6595
6596            return
6597              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
6598               (AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
6599                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
6600
6601         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
6602            --  NamedElement::name : String
6603
6604            return
6605              AMF.Holders.To_Holder
6606               (AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
6607                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
6608
6609         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
6610            --  NamedElement::nameExpression : StringExpression
6611
6612            return
6613              AMF.Internals.Holders.UML_Holders.To_Holder
6614               (AMF.UML.String_Expressions.UML_String_Expression_Access'
6615                 (AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
6616                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
6617
6618         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
6619            --  NamedElement::namespace : Namespace
6620
6621            return
6622              AMF.Internals.Holders.UML_Holders.To_Holder
6623               (AMF.UML.Namespaces.UML_Namespace_Access'
6624                 (AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
6625                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
6626
6627         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
6628            --  Element::ownedComment : Comment
6629
6630            return
6631              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
6632               (AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
6633                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
6634
6635         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
6636            --  Element::ownedElement : Element
6637
6638            return
6639              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
6640               (AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
6641                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
6642
6643         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
6644            --  Element::owner : Element
6645
6646            return
6647              AMF.Internals.Holders.UML_Holders.To_Holder
6648               (AMF.UML.Elements.UML_Element_Access'
6649                 (AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
6650                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
6651
6652         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
6653            --  NamedElement::qualifiedName : String
6654
6655            return
6656              AMF.Holders.To_Holder
6657               (AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
6658                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
6659
6660         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
6661            --  TypedElement::type : Type
6662
6663            return
6664              AMF.Internals.Holders.UML_Holders.To_Holder
6665               (AMF.UML.Types.UML_Type_Access'
6666                 (AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
6667                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
6668
6669         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
6670            --  NamedElement::visibility : VisibilityKind
6671
6672            return
6673              AMF.UML.Holders.To_Holder
6674               (AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
6675                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
6676
6677         else
6678            raise Program_Error;
6679         end if;
6680      end OCL_Unspecified_Value_Exp_Get;
6681
6682      ----------------------
6683      -- OCL_Variable_Get --
6684      ----------------------
6685
6686      function OCL_Variable_Get return League.Holders.Holder is
6687      begin
6688         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
6689            --  NamedElement::clientDependency : Dependency
6690
6691            return
6692              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
6693               (AMF.OCL.Variables.OCL_Variable_Access
6694                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
6695
6696         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Variable_Init_Expression_A_Initialized_Element then
6697            --  Variable::initExpression : OclExpression
6698
6699            return
6700              AMF.Internals.Holders.OCL_Holders.To_Holder
6701               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access'
6702                 (AMF.OCL.Variables.OCL_Variable_Access
6703                   (AMF.Internals.Helpers.To_Element (Self)).Get_Init_Expression));
6704
6705         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
6706            --  NamedElement::name : String
6707
6708            return
6709              AMF.Holders.To_Holder
6710               (AMF.OCL.Variables.OCL_Variable_Access
6711                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
6712
6713         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
6714            --  NamedElement::nameExpression : StringExpression
6715
6716            return
6717              AMF.Internals.Holders.UML_Holders.To_Holder
6718               (AMF.UML.String_Expressions.UML_String_Expression_Access'
6719                 (AMF.OCL.Variables.OCL_Variable_Access
6720                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
6721
6722         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
6723            --  NamedElement::namespace : Namespace
6724
6725            return
6726              AMF.Internals.Holders.UML_Holders.To_Holder
6727               (AMF.UML.Namespaces.UML_Namespace_Access'
6728                 (AMF.OCL.Variables.OCL_Variable_Access
6729                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
6730
6731         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
6732            --  Element::ownedComment : Comment
6733
6734            return
6735              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
6736               (AMF.OCL.Variables.OCL_Variable_Access
6737                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
6738
6739         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
6740            --  Element::ownedElement : Element
6741
6742            return
6743              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
6744               (AMF.OCL.Variables.OCL_Variable_Access
6745                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
6746
6747         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
6748            --  Element::owner : Element
6749
6750            return
6751              AMF.Internals.Holders.UML_Holders.To_Holder
6752               (AMF.UML.Elements.UML_Element_Access'
6753                 (AMF.OCL.Variables.OCL_Variable_Access
6754                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
6755
6756         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
6757            --  NamedElement::qualifiedName : String
6758
6759            return
6760              AMF.Holders.To_Holder
6761               (AMF.OCL.Variables.OCL_Variable_Access
6762                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
6763
6764         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Variable_Represented_Parameter_A_Variable then
6765            --  Variable::representedParameter : Parameter
6766
6767            return
6768              AMF.Internals.Holders.UML_Holders.To_Holder
6769               (AMF.UML.Parameters.UML_Parameter_Access'
6770                 (AMF.OCL.Variables.OCL_Variable_Access
6771                   (AMF.Internals.Helpers.To_Element (Self)).Get_Represented_Parameter));
6772
6773         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
6774            --  TypedElement::type : Type
6775
6776            return
6777              AMF.Internals.Holders.UML_Holders.To_Holder
6778               (AMF.UML.Types.UML_Type_Access'
6779                 (AMF.OCL.Variables.OCL_Variable_Access
6780                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
6781
6782         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
6783            --  NamedElement::visibility : VisibilityKind
6784
6785            return
6786              AMF.UML.Holders.To_Holder
6787               (AMF.OCL.Variables.OCL_Variable_Access
6788                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
6789
6790         else
6791            raise Program_Error;
6792         end if;
6793      end OCL_Variable_Get;
6794
6795      --------------------------
6796      -- OCL_Variable_Exp_Get --
6797      --------------------------
6798
6799      function OCL_Variable_Exp_Get return League.Holders.Holder is
6800      begin
6801         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
6802            --  NamedElement::clientDependency : Dependency
6803
6804            return
6805              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
6806               (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6807                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
6808
6809         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
6810            --  NamedElement::name : String
6811
6812            return
6813              AMF.Holders.To_Holder
6814               (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6815                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
6816
6817         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
6818            --  NamedElement::nameExpression : StringExpression
6819
6820            return
6821              AMF.Internals.Holders.UML_Holders.To_Holder
6822               (AMF.UML.String_Expressions.UML_String_Expression_Access'
6823                 (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6824                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
6825
6826         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
6827            --  NamedElement::namespace : Namespace
6828
6829            return
6830              AMF.Internals.Holders.UML_Holders.To_Holder
6831               (AMF.UML.Namespaces.UML_Namespace_Access'
6832                 (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6833                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
6834
6835         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
6836            --  Element::ownedComment : Comment
6837
6838            return
6839              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
6840               (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6841                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
6842
6843         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
6844            --  Element::ownedElement : Element
6845
6846            return
6847              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
6848               (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6849                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
6850
6851         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
6852            --  Element::owner : Element
6853
6854            return
6855              AMF.Internals.Holders.UML_Holders.To_Holder
6856               (AMF.UML.Elements.UML_Element_Access'
6857                 (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6858                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
6859
6860         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
6861            --  NamedElement::qualifiedName : String
6862
6863            return
6864              AMF.Holders.To_Holder
6865               (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6866                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
6867
6868         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Variable_Exp_Referred_Variable_A_Refering_Exp then
6869            --  VariableExp::referredVariable : Variable
6870
6871            return
6872              AMF.Internals.Holders.OCL_Holders.To_Holder
6873               (AMF.OCL.Variables.OCL_Variable_Access'
6874                 (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6875                   (AMF.Internals.Helpers.To_Element (Self)).Get_Referred_Variable));
6876
6877         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
6878            --  TypedElement::type : Type
6879
6880            return
6881              AMF.Internals.Holders.UML_Holders.To_Holder
6882               (AMF.UML.Types.UML_Type_Access'
6883                 (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6884                   (AMF.Internals.Helpers.To_Element (Self)).Get_Type));
6885
6886         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
6887            --  NamedElement::visibility : VisibilityKind
6888
6889            return
6890              AMF.UML.Holders.To_Holder
6891               (AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
6892                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
6893
6894         else
6895            raise Program_Error;
6896         end if;
6897      end OCL_Variable_Exp_Get;
6898
6899      -----------------------
6900      -- OCL_Void_Type_Get --
6901      -----------------------
6902
6903      function OCL_Void_Type_Get return League.Holders.Holder is
6904      begin
6905         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Attribute_A_Classifier then
6906            --  Classifier::attribute : Property
6907
6908            return
6909              AMF.UML.Properties.Collections.UML_Property_Collections.Internals.To_Holder
6910               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6911                 (AMF.Internals.Helpers.To_Element (Self)).Get_Attribute);
6912
6913         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Client_Dependency_Dependency_Client then
6914            --  NamedElement::clientDependency : Dependency
6915
6916            return
6917              AMF.UML.Dependencies.Collections.UML_Dependency_Collections.Internals.To_Holder
6918               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6919                 (AMF.Internals.Helpers.To_Element (Self)).Get_Client_Dependency);
6920
6921         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Collaboration_Use_A_Classifier then
6922            --  Classifier::collaborationUse : CollaborationUse
6923
6924            return
6925              AMF.UML.Collaboration_Uses.Collections.UML_Collaboration_Use_Collections.Internals.To_Holder
6926               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6927                 (AMF.Internals.Helpers.To_Element (Self)).Get_Collaboration_Use);
6928
6929         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Element_Import_Element_Import_Importing_Namespace then
6930            --  Namespace::elementImport : ElementImport
6931
6932            return
6933              AMF.UML.Element_Imports.Collections.UML_Element_Import_Collections.Internals.To_Holder
6934               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6935                 (AMF.Internals.Helpers.To_Element (Self)).Get_Element_Import);
6936
6937         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Feature_Feature_Featuring_Classifier then
6938            --  Classifier::feature : Feature
6939
6940            return
6941              AMF.UML.Features.Collections.UML_Feature_Collections.Internals.To_Holder
6942               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6943                 (AMF.Internals.Helpers.To_Element (Self)).Get_Feature);
6944
6945         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_General_A_Classifier then
6946            --  Classifier::general : Classifier
6947
6948            return
6949              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
6950               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6951                 (AMF.Internals.Helpers.To_Element (Self)).Get_General);
6952
6953         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Generalization_Generalization_Specific then
6954            --  Classifier::generalization : Generalization
6955
6956            return
6957              AMF.UML.Generalizations.Collections.UML_Generalization_Collections.Internals.To_Holder
6958               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6959                 (AMF.Internals.Helpers.To_Element (Self)).Get_Generalization);
6960
6961         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Imported_Member_A_Namespace then
6962            --  Namespace::importedMember : PackageableElement
6963
6964            return
6965              AMF.UML.Packageable_Elements.Collections.UML_Packageable_Element_Collections.Internals.To_Holder
6966               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6967                 (AMF.Internals.Helpers.To_Element (Self)).Get_Imported_Member);
6968
6969         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Inherited_Member_A_Classifier then
6970            --  Classifier::inheritedMember : NamedElement
6971
6972            return
6973              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
6974               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6975                 (AMF.Internals.Helpers.To_Element (Self)).Get_Inherited_Member);
6976
6977         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
6978            --  Classifier::isAbstract : Boolean
6979
6980            return
6981              League.Holders.Booleans.To_Holder
6982               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6983                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Abstract);
6984
6985         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
6986            --  Classifier::isFinalSpecialization : Boolean
6987
6988            return
6989              League.Holders.Booleans.To_Holder
6990               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6991                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Final_Specialization);
6992
6993         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
6994            --  RedefinableElement::isLeaf : Boolean
6995
6996            return
6997              League.Holders.Booleans.To_Holder
6998               (AMF.OCL.Void_Types.OCL_Void_Type_Access
6999                 (AMF.Internals.Helpers.To_Element (Self)).Get_Is_Leaf);
7000
7001         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Member_A_Member_Namespace then
7002            --  Namespace::member : NamedElement
7003
7004            return
7005              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
7006               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7007                 (AMF.Internals.Helpers.To_Element (Self)).Get_Member);
7008
7009         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
7010            --  NamedElement::name : String
7011
7012            return
7013              AMF.Holders.To_Holder
7014               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7015                 (AMF.Internals.Helpers.To_Element (Self)).Get_Name);
7016
7017         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
7018            --  NamedElement::nameExpression : StringExpression
7019
7020            return
7021              AMF.Internals.Holders.UML_Holders.To_Holder
7022               (AMF.UML.String_Expressions.UML_String_Expression_Access'
7023                 (AMF.OCL.Void_Types.OCL_Void_Type_Access
7024                   (AMF.Internals.Helpers.To_Element (Self)).Get_Name_Expression));
7025
7026         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Namespace_Namespace_Owned_Member then
7027            --  NamedElement::namespace : Namespace
7028
7029            return
7030              AMF.Internals.Holders.UML_Holders.To_Holder
7031               (AMF.UML.Namespaces.UML_Namespace_Access'
7032                 (AMF.OCL.Void_Types.OCL_Void_Type_Access
7033                   (AMF.Internals.Helpers.To_Element (Self)).Get_Namespace));
7034
7035         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Comment_A_Owning_Element then
7036            --  Element::ownedComment : Comment
7037
7038            return
7039              AMF.UML.Comments.Collections.UML_Comment_Collections.Internals.To_Holder
7040               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7041                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Comment);
7042
7043         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owned_Element_Element_Owner then
7044            --  Element::ownedElement : Element
7045
7046            return
7047              AMF.UML.Elements.Collections.UML_Element_Collections.Internals.To_Holder
7048               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7049                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Element);
7050
7051         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Member_Named_Element_Namespace then
7052            --  Namespace::ownedMember : NamedElement
7053
7054            return
7055              AMF.UML.Named_Elements.Collections.UML_Named_Element_Collections.Internals.To_Holder
7056               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7057                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Member);
7058
7059         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Owned_Rule_Constraint_Context then
7060            --  Namespace::ownedRule : Constraint
7061
7062            return
7063              AMF.UML.Constraints.Collections.UML_Constraint_Collections.Internals.To_Holder
7064               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7065                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Rule);
7066
7067         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
7068            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
7069
7070            return
7071              AMF.Internals.Holders.UML_Holders.To_Holder
7072               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access'
7073                 (AMF.OCL.Void_Types.OCL_Void_Type_Access
7074                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
7075
7076         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
7077            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
7078
7079            return
7080              AMF.Internals.Holders.UML_Holders.To_Holder
7081               (AMF.UML.Template_Signatures.UML_Template_Signature_Access'
7082                 (AMF.OCL.Void_Types.OCL_Void_Type_Access
7083                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Template_Signature));
7084
7085         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Use_Case_A_Classifier then
7086            --  Classifier::ownedUseCase : UseCase
7087
7088            return
7089              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
7090               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7091                 (AMF.Internals.Helpers.To_Element (Self)).Get_Owned_Use_Case);
7092
7093         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Element_Owner_Element_Owned_Element then
7094            --  Element::owner : Element
7095
7096            return
7097              AMF.Internals.Holders.UML_Holders.To_Holder
7098               (AMF.UML.Elements.UML_Element_Access'
7099                 (AMF.OCL.Void_Types.OCL_Void_Type_Access
7100                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owner));
7101
7102         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
7103            --  ParameterableElement::owningTemplateParameter : TemplateParameter
7104
7105            return
7106              AMF.Internals.Holders.UML_Holders.To_Holder
7107               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
7108                 (AMF.OCL.Void_Types.OCL_Void_Type_Access
7109                   (AMF.Internals.Helpers.To_Element (Self)).Get_Owning_Template_Parameter));
7110
7111         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
7112            --  Type::package : Package
7113
7114            return
7115              AMF.Internals.Holders.UML_Holders.To_Holder
7116               (AMF.UML.Packages.UML_Package_Access'
7117                 (AMF.OCL.Void_Types.OCL_Void_Type_Access
7118                   (AMF.Internals.Helpers.To_Element (Self)).Get_Package));
7119
7120         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Namespace_Package_Import_Package_Import_Importing_Namespace then
7121            --  Namespace::packageImport : PackageImport
7122
7123            return
7124              AMF.UML.Package_Imports.Collections.UML_Package_Import_Collections.Internals.To_Holder
7125               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7126                 (AMF.Internals.Helpers.To_Element (Self)).Get_Package_Import);
7127
7128         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Powertype_Extent_Generalization_Set_Powertype then
7129            --  Classifier::powertypeExtent : GeneralizationSet
7130
7131            return
7132              AMF.UML.Generalization_Sets.Collections.UML_Generalization_Set_Collections.Internals.To_Holder
7133               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7134                 (AMF.Internals.Helpers.To_Element (Self)).Get_Powertype_Extent);
7135
7136         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Qualified_Name then
7137            --  NamedElement::qualifiedName : String
7138
7139            return
7140              AMF.Holders.To_Holder
7141               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7142                 (AMF.Internals.Helpers.To_Element (Self)).Get_Qualified_Name);
7143
7144         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Redefined_Classifier_A_Classifier then
7145            --  Classifier::redefinedClassifier : Classifier
7146
7147            return
7148              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
7149               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7150                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Classifier);
7151
7152         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefined_Element_A_Redefinable_Element then
7153            --  RedefinableElement::redefinedElement : RedefinableElement
7154
7155            return
7156              AMF.UML.Redefinable_Elements.Collections.UML_Redefinable_Element_Collections.Internals.To_Holder
7157               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7158                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefined_Element);
7159
7160         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Redefinition_Context_A_Redefinable_Element then
7161            --  RedefinableElement::redefinitionContext : Classifier
7162
7163            return
7164              AMF.UML.Classifiers.Collections.UML_Classifier_Collections.Internals.To_Holder
7165               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7166                 (AMF.Internals.Helpers.To_Element (Self)).Get_Redefinition_Context);
7167
7168         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
7169            --  Classifier::representation : CollaborationUse
7170
7171            return
7172              AMF.Internals.Holders.UML_Holders.To_Holder
7173               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access'
7174                 (AMF.OCL.Void_Types.OCL_Void_Type_Access
7175                   (AMF.Internals.Helpers.To_Element (Self)).Get_Representation));
7176
7177         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Substitution_Substitution_Substituting_Classifier then
7178            --  Classifier::substitution : Substitution
7179
7180            return
7181              AMF.UML.Substitutions.Collections.UML_Substitution_Collections.Internals.To_Holder
7182               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7183                 (AMF.Internals.Helpers.To_Element (Self)).Get_Substitution);
7184
7185         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Template_Binding_Template_Binding_Bound_Element then
7186            --  TemplateableElement::templateBinding : TemplateBinding
7187
7188            return
7189              AMF.UML.Template_Bindings.Collections.UML_Template_Binding_Collections.Internals.To_Holder
7190               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7191                 (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Binding);
7192
7193         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
7194            --  Classifier::templateParameter : ClassifierTemplateParameter
7195
7196            return
7197              AMF.Internals.Holders.UML_Holders.To_Holder
7198               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access'
7199                 (AMF.OCL.Void_Types.OCL_Void_Type_Access
7200                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
7201
7202         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
7203            --  ParameterableElement::templateParameter : TemplateParameter
7204
7205            return
7206              AMF.Internals.Holders.UML_Holders.To_Holder
7207               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access'
7208                 (AMF.OCL.Void_Types.OCL_Void_Type_Access
7209                   (AMF.Internals.Helpers.To_Element (Self)).Get_Template_Parameter));
7210
7211         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Use_Case_Use_Case_Subject then
7212            --  Classifier::useCase : UseCase
7213
7214            return
7215              AMF.UML.Use_Cases.Collections.UML_Use_Case_Collections.Internals.To_Holder
7216               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7217                 (AMF.Internals.Helpers.To_Element (Self)).Get_Use_Case);
7218
7219         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
7220            --  NamedElement::visibility : VisibilityKind
7221
7222            return
7223              AMF.UML.Holders.To_Holder
7224               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7225                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
7226
7227         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
7228            --  PackageableElement::visibility : VisibilityKind
7229
7230            return
7231              AMF.UML.Holders.Visibility_Kinds.To_Holder
7232               (AMF.OCL.Void_Types.OCL_Void_Type_Access
7233                 (AMF.Internals.Helpers.To_Element (Self)).Get_Visibility);
7234
7235         else
7236            raise Program_Error;
7237         end if;
7238      end OCL_Void_Type_Get;
7239
7240   begin
7241      case AMF.Internals.Tables.OCL_Element_Table.Table (Self).Kind is
7242         when AMF.Internals.Tables.OCL_Types.E_None =>
7243            raise Program_Error;
7244
7245         when AMF.Internals.Tables.OCL_Types.E_OCL_Any_Type =>
7246            return OCL_Any_Type_Get;
7247
7248         when AMF.Internals.Tables.OCL_Types.E_OCL_Association_Class_Call_Exp =>
7249            return OCL_Association_Class_Call_Exp_Get;
7250
7251         when AMF.Internals.Tables.OCL_Types.E_OCL_Bag_Type =>
7252            return OCL_Bag_Type_Get;
7253
7254         when AMF.Internals.Tables.OCL_Types.E_OCL_Boolean_Literal_Exp =>
7255            return OCL_Boolean_Literal_Exp_Get;
7256
7257         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Item =>
7258            return OCL_Collection_Item_Get;
7259
7260         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Literal_Exp =>
7261            return OCL_Collection_Literal_Exp_Get;
7262
7263         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Range =>
7264            return OCL_Collection_Range_Get;
7265
7266         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Type =>
7267            return OCL_Collection_Type_Get;
7268
7269         when AMF.Internals.Tables.OCL_Types.E_OCL_Enum_Literal_Exp =>
7270            return OCL_Enum_Literal_Exp_Get;
7271
7272         when AMF.Internals.Tables.OCL_Types.E_OCL_Expression_In_Ocl =>
7273            return OCL_Expression_In_Ocl_Get;
7274
7275         when AMF.Internals.Tables.OCL_Types.E_OCL_If_Exp =>
7276            return OCL_If_Exp_Get;
7277
7278         when AMF.Internals.Tables.OCL_Types.E_OCL_Integer_Literal_Exp =>
7279            return OCL_Integer_Literal_Exp_Get;
7280
7281         when AMF.Internals.Tables.OCL_Types.E_OCL_Invalid_Literal_Exp =>
7282            return OCL_Invalid_Literal_Exp_Get;
7283
7284         when AMF.Internals.Tables.OCL_Types.E_OCL_Invalid_Type =>
7285            return OCL_Invalid_Type_Get;
7286
7287         when AMF.Internals.Tables.OCL_Types.E_OCL_Iterate_Exp =>
7288            return OCL_Iterate_Exp_Get;
7289
7290         when AMF.Internals.Tables.OCL_Types.E_OCL_Iterator_Exp =>
7291            return OCL_Iterator_Exp_Get;
7292
7293         when AMF.Internals.Tables.OCL_Types.E_OCL_Let_Exp =>
7294            return OCL_Let_Exp_Get;
7295
7296         when AMF.Internals.Tables.OCL_Types.E_OCL_Message_Exp =>
7297            return OCL_Message_Exp_Get;
7298
7299         when AMF.Internals.Tables.OCL_Types.E_OCL_Message_Type =>
7300            return OCL_Message_Type_Get;
7301
7302         when AMF.Internals.Tables.OCL_Types.E_OCL_Null_Literal_Exp =>
7303            return OCL_Null_Literal_Exp_Get;
7304
7305         when AMF.Internals.Tables.OCL_Types.E_OCL_Operation_Call_Exp =>
7306            return OCL_Operation_Call_Exp_Get;
7307
7308         when AMF.Internals.Tables.OCL_Types.E_OCL_Ordered_Set_Type =>
7309            return OCL_Ordered_Set_Type_Get;
7310
7311         when AMF.Internals.Tables.OCL_Types.E_OCL_Property_Call_Exp =>
7312            return OCL_Property_Call_Exp_Get;
7313
7314         when AMF.Internals.Tables.OCL_Types.E_OCL_Real_Literal_Exp =>
7315            return OCL_Real_Literal_Exp_Get;
7316
7317         when AMF.Internals.Tables.OCL_Types.E_OCL_Sequence_Type =>
7318            return OCL_Sequence_Type_Get;
7319
7320         when AMF.Internals.Tables.OCL_Types.E_OCL_Set_Type =>
7321            return OCL_Set_Type_Get;
7322
7323         when AMF.Internals.Tables.OCL_Types.E_OCL_State_Exp =>
7324            return OCL_State_Exp_Get;
7325
7326         when AMF.Internals.Tables.OCL_Types.E_OCL_String_Literal_Exp =>
7327            return OCL_String_Literal_Exp_Get;
7328
7329         when AMF.Internals.Tables.OCL_Types.E_OCL_Template_Parameter_Type =>
7330            return OCL_Template_Parameter_Type_Get;
7331
7332         when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Literal_Exp =>
7333            return OCL_Tuple_Literal_Exp_Get;
7334
7335         when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Literal_Part =>
7336            return OCL_Tuple_Literal_Part_Get;
7337
7338         when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Type =>
7339            return OCL_Tuple_Type_Get;
7340
7341         when AMF.Internals.Tables.OCL_Types.E_OCL_Type_Exp =>
7342            return OCL_Type_Exp_Get;
7343
7344         when AMF.Internals.Tables.OCL_Types.E_OCL_Unlimited_Natural_Literal_Exp =>
7345            return OCL_Unlimited_Natural_Literal_Exp_Get;
7346
7347         when AMF.Internals.Tables.OCL_Types.E_OCL_Unspecified_Value_Exp =>
7348            return OCL_Unspecified_Value_Exp_Get;
7349
7350         when AMF.Internals.Tables.OCL_Types.E_OCL_Variable =>
7351            return OCL_Variable_Get;
7352
7353         when AMF.Internals.Tables.OCL_Types.E_OCL_Variable_Exp =>
7354            return OCL_Variable_Exp_Get;
7355
7356         when AMF.Internals.Tables.OCL_Types.E_OCL_Void_Type =>
7357            return OCL_Void_Type_Get;
7358      end case;
7359   end Get;
7360
7361   --------------------
7362   -- Get_Meta_Class --
7363   --------------------
7364
7365   function Get_Meta_Class
7366    (Self : AMF.Internals.AMF_Element) return CMOF_Element is
7367   begin
7368      case OCL_Element_Table.Table (Self).Kind is
7369         when AMF.Internals.Tables.OCL_Types.E_None =>
7370            return 0;
7371
7372         when AMF.Internals.Tables.OCL_Types.E_OCL_Any_Type =>
7373            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Any_Type;
7374
7375         when AMF.Internals.Tables.OCL_Types.E_OCL_Association_Class_Call_Exp =>
7376            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Association_Class_Call_Exp;
7377
7378         when AMF.Internals.Tables.OCL_Types.E_OCL_Bag_Type =>
7379            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Bag_Type;
7380
7381         when AMF.Internals.Tables.OCL_Types.E_OCL_Boolean_Literal_Exp =>
7382            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Boolean_Literal_Exp;
7383
7384         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Item =>
7385            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Collection_Item;
7386
7387         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Literal_Exp =>
7388            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Collection_Literal_Exp;
7389
7390         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Range =>
7391            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Collection_Range;
7392
7393         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Type =>
7394            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Collection_Type;
7395
7396         when AMF.Internals.Tables.OCL_Types.E_OCL_Enum_Literal_Exp =>
7397            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Enum_Literal_Exp;
7398
7399         when AMF.Internals.Tables.OCL_Types.E_OCL_Expression_In_Ocl =>
7400            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Expression_In_Ocl;
7401
7402         when AMF.Internals.Tables.OCL_Types.E_OCL_If_Exp =>
7403            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_If_Exp;
7404
7405         when AMF.Internals.Tables.OCL_Types.E_OCL_Integer_Literal_Exp =>
7406            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Integer_Literal_Exp;
7407
7408         when AMF.Internals.Tables.OCL_Types.E_OCL_Invalid_Literal_Exp =>
7409            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Invalid_Literal_Exp;
7410
7411         when AMF.Internals.Tables.OCL_Types.E_OCL_Invalid_Type =>
7412            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Invalid_Type;
7413
7414         when AMF.Internals.Tables.OCL_Types.E_OCL_Iterate_Exp =>
7415            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Iterate_Exp;
7416
7417         when AMF.Internals.Tables.OCL_Types.E_OCL_Iterator_Exp =>
7418            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Iterator_Exp;
7419
7420         when AMF.Internals.Tables.OCL_Types.E_OCL_Let_Exp =>
7421            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Let_Exp;
7422
7423         when AMF.Internals.Tables.OCL_Types.E_OCL_Message_Exp =>
7424            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Message_Exp;
7425
7426         when AMF.Internals.Tables.OCL_Types.E_OCL_Message_Type =>
7427            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Message_Type;
7428
7429         when AMF.Internals.Tables.OCL_Types.E_OCL_Null_Literal_Exp =>
7430            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Null_Literal_Exp;
7431
7432         when AMF.Internals.Tables.OCL_Types.E_OCL_Operation_Call_Exp =>
7433            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Operation_Call_Exp;
7434
7435         when AMF.Internals.Tables.OCL_Types.E_OCL_Ordered_Set_Type =>
7436            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Ordered_Set_Type;
7437
7438         when AMF.Internals.Tables.OCL_Types.E_OCL_Property_Call_Exp =>
7439            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Property_Call_Exp;
7440
7441         when AMF.Internals.Tables.OCL_Types.E_OCL_Real_Literal_Exp =>
7442            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Real_Literal_Exp;
7443
7444         when AMF.Internals.Tables.OCL_Types.E_OCL_Sequence_Type =>
7445            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Sequence_Type;
7446
7447         when AMF.Internals.Tables.OCL_Types.E_OCL_Set_Type =>
7448            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Set_Type;
7449
7450         when AMF.Internals.Tables.OCL_Types.E_OCL_State_Exp =>
7451            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_State_Exp;
7452
7453         when AMF.Internals.Tables.OCL_Types.E_OCL_String_Literal_Exp =>
7454            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_String_Literal_Exp;
7455
7456         when AMF.Internals.Tables.OCL_Types.E_OCL_Template_Parameter_Type =>
7457            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Template_Parameter_Type;
7458
7459         when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Literal_Exp =>
7460            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Tuple_Literal_Exp;
7461
7462         when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Literal_Part =>
7463            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Tuple_Literal_Part;
7464
7465         when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Type =>
7466            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Tuple_Type;
7467
7468         when AMF.Internals.Tables.OCL_Types.E_OCL_Type_Exp =>
7469            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Type_Exp;
7470
7471         when AMF.Internals.Tables.OCL_Types.E_OCL_Unlimited_Natural_Literal_Exp =>
7472            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Unlimited_Natural_Literal_Exp;
7473
7474         when AMF.Internals.Tables.OCL_Types.E_OCL_Unspecified_Value_Exp =>
7475            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Unspecified_Value_Exp;
7476
7477         when AMF.Internals.Tables.OCL_Types.E_OCL_Variable =>
7478            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Variable;
7479
7480         when AMF.Internals.Tables.OCL_Types.E_OCL_Variable_Exp =>
7481            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Variable_Exp;
7482
7483         when AMF.Internals.Tables.OCL_Types.E_OCL_Void_Type =>
7484            return AMF.Internals.Tables.OCL_Metamodel.MC_OCL_Void_Type;
7485      end case;
7486   end Get_Meta_Class;
7487
7488   ---------
7489   -- Set --
7490   ---------
7491
7492   procedure Set
7493    (Self     : AMF.Internals.AMF_Element;
7494     Property : CMOF_Element;
7495     Value    : League.Holders.Holder)
7496   is
7497
7498      procedure OCL_Any_Type_Set;
7499      --  Sets attribute's value of instance of AnyType class.
7500
7501      procedure OCL_Association_Class_Call_Exp_Set;
7502      --  Sets attribute's value of instance of AssociationClassCallExp class.
7503
7504      procedure OCL_Bag_Type_Set;
7505      --  Sets attribute's value of instance of BagType class.
7506
7507      procedure OCL_Boolean_Literal_Exp_Set;
7508      --  Sets attribute's value of instance of BooleanLiteralExp class.
7509
7510      procedure OCL_Collection_Item_Set;
7511      --  Sets attribute's value of instance of CollectionItem class.
7512
7513      procedure OCL_Collection_Literal_Exp_Set;
7514      --  Sets attribute's value of instance of CollectionLiteralExp class.
7515
7516      procedure OCL_Collection_Range_Set;
7517      --  Sets attribute's value of instance of CollectionRange class.
7518
7519      procedure OCL_Collection_Type_Set;
7520      --  Sets attribute's value of instance of CollectionType class.
7521
7522      procedure OCL_Enum_Literal_Exp_Set;
7523      --  Sets attribute's value of instance of EnumLiteralExp class.
7524
7525      procedure OCL_Expression_In_Ocl_Set;
7526      --  Sets attribute's value of instance of ExpressionInOcl class.
7527
7528      procedure OCL_If_Exp_Set;
7529      --  Sets attribute's value of instance of IfExp class.
7530
7531      procedure OCL_Integer_Literal_Exp_Set;
7532      --  Sets attribute's value of instance of IntegerLiteralExp class.
7533
7534      procedure OCL_Invalid_Literal_Exp_Set;
7535      --  Sets attribute's value of instance of InvalidLiteralExp class.
7536
7537      procedure OCL_Invalid_Type_Set;
7538      --  Sets attribute's value of instance of InvalidType class.
7539
7540      procedure OCL_Iterate_Exp_Set;
7541      --  Sets attribute's value of instance of IterateExp class.
7542
7543      procedure OCL_Iterator_Exp_Set;
7544      --  Sets attribute's value of instance of IteratorExp class.
7545
7546      procedure OCL_Let_Exp_Set;
7547      --  Sets attribute's value of instance of LetExp class.
7548
7549      procedure OCL_Message_Exp_Set;
7550      --  Sets attribute's value of instance of MessageExp class.
7551
7552      procedure OCL_Message_Type_Set;
7553      --  Sets attribute's value of instance of MessageType class.
7554
7555      procedure OCL_Null_Literal_Exp_Set;
7556      --  Sets attribute's value of instance of NullLiteralExp class.
7557
7558      procedure OCL_Operation_Call_Exp_Set;
7559      --  Sets attribute's value of instance of OperationCallExp class.
7560
7561      procedure OCL_Ordered_Set_Type_Set;
7562      --  Sets attribute's value of instance of OrderedSetType class.
7563
7564      procedure OCL_Property_Call_Exp_Set;
7565      --  Sets attribute's value of instance of PropertyCallExp class.
7566
7567      procedure OCL_Real_Literal_Exp_Set;
7568      --  Sets attribute's value of instance of RealLiteralExp class.
7569
7570      procedure OCL_Sequence_Type_Set;
7571      --  Sets attribute's value of instance of SequenceType class.
7572
7573      procedure OCL_Set_Type_Set;
7574      --  Sets attribute's value of instance of SetType class.
7575
7576      procedure OCL_State_Exp_Set;
7577      --  Sets attribute's value of instance of StateExp class.
7578
7579      procedure OCL_String_Literal_Exp_Set;
7580      --  Sets attribute's value of instance of StringLiteralExp class.
7581
7582      procedure OCL_Template_Parameter_Type_Set;
7583      --  Sets attribute's value of instance of TemplateParameterType class.
7584
7585      procedure OCL_Tuple_Literal_Exp_Set;
7586      --  Sets attribute's value of instance of TupleLiteralExp class.
7587
7588      procedure OCL_Tuple_Literal_Part_Set;
7589      --  Sets attribute's value of instance of TupleLiteralPart class.
7590
7591      procedure OCL_Tuple_Type_Set;
7592      --  Sets attribute's value of instance of TupleType class.
7593
7594      procedure OCL_Type_Exp_Set;
7595      --  Sets attribute's value of instance of TypeExp class.
7596
7597      procedure OCL_Unlimited_Natural_Literal_Exp_Set;
7598      --  Sets attribute's value of instance of UnlimitedNaturalLiteralExp class.
7599
7600      procedure OCL_Unspecified_Value_Exp_Set;
7601      --  Sets attribute's value of instance of UnspecifiedValueExp class.
7602
7603      procedure OCL_Variable_Set;
7604      --  Sets attribute's value of instance of Variable class.
7605
7606      procedure OCL_Variable_Exp_Set;
7607      --  Sets attribute's value of instance of VariableExp class.
7608
7609      procedure OCL_Void_Type_Set;
7610      --  Sets attribute's value of instance of VoidType class.
7611
7612      ----------------------
7613      -- OCL_Any_Type_Set --
7614      ----------------------
7615
7616      procedure OCL_Any_Type_Set is
7617      begin
7618         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
7619            --  Classifier::isAbstract : Boolean
7620
7621            AMF.OCL.Any_Types.OCL_Any_Type_Access
7622             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
7623               (League.Holders.Booleans.Element (Value));
7624
7625         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
7626            --  Classifier::isFinalSpecialization : Boolean
7627
7628            AMF.OCL.Any_Types.OCL_Any_Type_Access
7629             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
7630               (League.Holders.Booleans.Element (Value));
7631
7632         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
7633            --  RedefinableElement::isLeaf : Boolean
7634
7635            AMF.OCL.Any_Types.OCL_Any_Type_Access
7636             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
7637               (League.Holders.Booleans.Element (Value));
7638
7639         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
7640            --  NamedElement::name : String
7641
7642            AMF.OCL.Any_Types.OCL_Any_Type_Access
7643             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
7644               (AMF.Holders.Element (Value));
7645
7646         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
7647            --  NamedElement::nameExpression : StringExpression
7648
7649            AMF.OCL.Any_Types.OCL_Any_Type_Access
7650             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
7651               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
7652
7653         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
7654            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
7655
7656            AMF.OCL.Any_Types.OCL_Any_Type_Access
7657             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
7658               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
7659
7660         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
7661            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
7662
7663            AMF.OCL.Any_Types.OCL_Any_Type_Access
7664             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
7665               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
7666
7667         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
7668            --  ParameterableElement::owningTemplateParameter : TemplateParameter
7669
7670            AMF.OCL.Any_Types.OCL_Any_Type_Access
7671             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
7672               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
7673
7674         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
7675            --  Type::package : Package
7676
7677            AMF.OCL.Any_Types.OCL_Any_Type_Access
7678             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
7679               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
7680
7681         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
7682            --  Classifier::representation : CollaborationUse
7683
7684            AMF.OCL.Any_Types.OCL_Any_Type_Access
7685             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
7686               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
7687
7688         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
7689            --  Classifier::templateParameter : ClassifierTemplateParameter
7690
7691            AMF.OCL.Any_Types.OCL_Any_Type_Access
7692             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
7693               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
7694
7695         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
7696            --  ParameterableElement::templateParameter : TemplateParameter
7697
7698            AMF.OCL.Any_Types.OCL_Any_Type_Access
7699             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
7700               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
7701
7702         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
7703            --  NamedElement::visibility : VisibilityKind
7704
7705            AMF.OCL.Any_Types.OCL_Any_Type_Access
7706             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
7707               (AMF.UML.Holders.Element (Value));
7708
7709         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
7710            --  PackageableElement::visibility : VisibilityKind
7711
7712            AMF.OCL.Any_Types.OCL_Any_Type_Access
7713             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
7714               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
7715
7716         else
7717            raise Program_Error;
7718         end if;
7719      end OCL_Any_Type_Set;
7720
7721      ----------------------------------------
7722      -- OCL_Association_Class_Call_Exp_Set --
7723      ----------------------------------------
7724
7725      procedure OCL_Association_Class_Call_Exp_Set is
7726      begin
7727         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
7728            --  NamedElement::name : String
7729
7730            AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
7731             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
7732               (AMF.Holders.Element (Value));
7733
7734         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
7735            --  NamedElement::nameExpression : StringExpression
7736
7737            AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
7738             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
7739               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
7740
7741         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Navigation_Call_Exp_Navigation_Source_A_Exp9 then
7742            --  NavigationCallExp::navigationSource : Property
7743
7744            AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
7745             (AMF.Internals.Helpers.To_Element (Self)).Set_Navigation_Source
7746               (AMF.UML.Properties.UML_Property_Access (AMF.Holders.Elements.Element (Value)));
7747
7748         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Association_Class_Call_Exp_Referred_Association_Class_A_Referring_Exp then
7749            --  AssociationClassCallExp::referredAssociationClass : AssociationClass
7750
7751            AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
7752             (AMF.Internals.Helpers.To_Element (Self)).Set_Referred_Association_Class
7753               (AMF.UML.Association_Classes.UML_Association_Class_Access (AMF.Holders.Elements.Element (Value)));
7754
7755         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Call_Exp_Source_A_Applied_Element then
7756            --  CallExp::source : OclExpression
7757
7758            AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
7759             (AMF.Internals.Helpers.To_Element (Self)).Set_Source
7760               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
7761
7762         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
7763            --  TypedElement::type : Type
7764
7765            AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
7766             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
7767               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
7768
7769         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
7770            --  NamedElement::visibility : VisibilityKind
7771
7772            AMF.OCL.Association_Class_Call_Exps.OCL_Association_Class_Call_Exp_Access
7773             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
7774               (AMF.UML.Holders.Element (Value));
7775
7776         else
7777            raise Program_Error;
7778         end if;
7779      end OCL_Association_Class_Call_Exp_Set;
7780
7781      ----------------------
7782      -- OCL_Bag_Type_Set --
7783      ----------------------
7784
7785      procedure OCL_Bag_Type_Set is
7786      begin
7787         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Type_Element_Type_A_Type1 then
7788            --  CollectionType::elementType : Classifier
7789
7790            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7791             (AMF.Internals.Helpers.To_Element (Self)).Set_Element_Type
7792               (AMF.UML.Classifiers.UML_Classifier_Access (AMF.Holders.Elements.Element (Value)));
7793
7794         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
7795            --  Classifier::isAbstract : Boolean
7796
7797            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7798             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
7799               (League.Holders.Booleans.Element (Value));
7800
7801         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
7802            --  Classifier::isFinalSpecialization : Boolean
7803
7804            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7805             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
7806               (League.Holders.Booleans.Element (Value));
7807
7808         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
7809            --  RedefinableElement::isLeaf : Boolean
7810
7811            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7812             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
7813               (League.Holders.Booleans.Element (Value));
7814
7815         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
7816            --  NamedElement::name : String
7817
7818            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7819             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
7820               (AMF.Holders.Element (Value));
7821
7822         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
7823            --  NamedElement::nameExpression : StringExpression
7824
7825            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7826             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
7827               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
7828
7829         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
7830            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
7831
7832            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7833             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
7834               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
7835
7836         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
7837            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
7838
7839            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7840             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
7841               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
7842
7843         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
7844            --  ParameterableElement::owningTemplateParameter : TemplateParameter
7845
7846            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7847             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
7848               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
7849
7850         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
7851            --  Type::package : Package
7852
7853            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7854             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
7855               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
7856
7857         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
7858            --  Classifier::representation : CollaborationUse
7859
7860            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7861             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
7862               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
7863
7864         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
7865            --  Classifier::templateParameter : ClassifierTemplateParameter
7866
7867            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7868             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
7869               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
7870
7871         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
7872            --  ParameterableElement::templateParameter : TemplateParameter
7873
7874            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7875             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
7876               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
7877
7878         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
7879            --  NamedElement::visibility : VisibilityKind
7880
7881            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7882             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
7883               (AMF.UML.Holders.Element (Value));
7884
7885         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
7886            --  PackageableElement::visibility : VisibilityKind
7887
7888            AMF.OCL.Bag_Types.OCL_Bag_Type_Access
7889             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
7890               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
7891
7892         else
7893            raise Program_Error;
7894         end if;
7895      end OCL_Bag_Type_Set;
7896
7897      ---------------------------------
7898      -- OCL_Boolean_Literal_Exp_Set --
7899      ---------------------------------
7900
7901      procedure OCL_Boolean_Literal_Exp_Set is
7902      begin
7903         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Boolean_Literal_Exp_Boolean_Symbol then
7904            --  BooleanLiteralExp::booleanSymbol : Boolean
7905
7906            AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
7907             (AMF.Internals.Helpers.To_Element (Self)).Set_Boolean_Symbol
7908               (League.Holders.Booleans.Element (Value));
7909
7910         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
7911            --  NamedElement::name : String
7912
7913            AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
7914             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
7915               (AMF.Holders.Element (Value));
7916
7917         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
7918            --  NamedElement::nameExpression : StringExpression
7919
7920            AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
7921             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
7922               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
7923
7924         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
7925            --  TypedElement::type : Type
7926
7927            AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
7928             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
7929               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
7930
7931         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
7932            --  NamedElement::visibility : VisibilityKind
7933
7934            AMF.OCL.Boolean_Literal_Exps.OCL_Boolean_Literal_Exp_Access
7935             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
7936               (AMF.UML.Holders.Element (Value));
7937
7938         else
7939            raise Program_Error;
7940         end if;
7941      end OCL_Boolean_Literal_Exp_Set;
7942
7943      -----------------------------
7944      -- OCL_Collection_Item_Set --
7945      -----------------------------
7946
7947      procedure OCL_Collection_Item_Set is
7948      begin
7949         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Item_Item_A_Item1 then
7950            --  CollectionItem::item : OclExpression
7951
7952            AMF.OCL.Collection_Items.OCL_Collection_Item_Access
7953             (AMF.Internals.Helpers.To_Element (Self)).Set_Item
7954               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
7955
7956         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
7957            --  NamedElement::name : String
7958
7959            AMF.OCL.Collection_Items.OCL_Collection_Item_Access
7960             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
7961               (AMF.Holders.Element (Value));
7962
7963         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
7964            --  NamedElement::nameExpression : StringExpression
7965
7966            AMF.OCL.Collection_Items.OCL_Collection_Item_Access
7967             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
7968               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
7969
7970         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
7971            --  TypedElement::type : Type
7972
7973            AMF.OCL.Collection_Items.OCL_Collection_Item_Access
7974             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
7975               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
7976
7977         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
7978            --  NamedElement::visibility : VisibilityKind
7979
7980            AMF.OCL.Collection_Items.OCL_Collection_Item_Access
7981             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
7982               (AMF.UML.Holders.Element (Value));
7983
7984         else
7985            raise Program_Error;
7986         end if;
7987      end OCL_Collection_Item_Set;
7988
7989      ------------------------------------
7990      -- OCL_Collection_Literal_Exp_Set --
7991      ------------------------------------
7992
7993      procedure OCL_Collection_Literal_Exp_Set is
7994      begin
7995         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Literal_Exp_Kind then
7996            --  CollectionLiteralExp::kind : CollectionKind
7997
7998            AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
7999             (AMF.Internals.Helpers.To_Element (Self)).Set_Kind
8000               (AMF.OCL.Holders.Collection_Kinds.Element (Value));
8001
8002         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8003            --  NamedElement::name : String
8004
8005            AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
8006             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8007               (AMF.Holders.Element (Value));
8008
8009         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8010            --  NamedElement::nameExpression : StringExpression
8011
8012            AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
8013             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8014               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8015
8016         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8017            --  TypedElement::type : Type
8018
8019            AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
8020             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8021               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8022
8023         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8024            --  NamedElement::visibility : VisibilityKind
8025
8026            AMF.OCL.Collection_Literal_Exps.OCL_Collection_Literal_Exp_Access
8027             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8028               (AMF.UML.Holders.Element (Value));
8029
8030         else
8031            raise Program_Error;
8032         end if;
8033      end OCL_Collection_Literal_Exp_Set;
8034
8035      ------------------------------
8036      -- OCL_Collection_Range_Set --
8037      ------------------------------
8038
8039      procedure OCL_Collection_Range_Set is
8040      begin
8041         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Range_First_A_First_Owner then
8042            --  CollectionRange::first : OclExpression
8043
8044            AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
8045             (AMF.Internals.Helpers.To_Element (Self)).Set_First
8046               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8047
8048         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Range_Last_A_Last_Owner then
8049            --  CollectionRange::last : OclExpression
8050
8051            AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
8052             (AMF.Internals.Helpers.To_Element (Self)).Set_Last
8053               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8054
8055         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8056            --  NamedElement::name : String
8057
8058            AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
8059             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8060               (AMF.Holders.Element (Value));
8061
8062         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8063            --  NamedElement::nameExpression : StringExpression
8064
8065            AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
8066             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8067               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8068
8069         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8070            --  TypedElement::type : Type
8071
8072            AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
8073             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8074               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8075
8076         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8077            --  NamedElement::visibility : VisibilityKind
8078
8079            AMF.OCL.Collection_Ranges.OCL_Collection_Range_Access
8080             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8081               (AMF.UML.Holders.Element (Value));
8082
8083         else
8084            raise Program_Error;
8085         end if;
8086      end OCL_Collection_Range_Set;
8087
8088      -----------------------------
8089      -- OCL_Collection_Type_Set --
8090      -----------------------------
8091
8092      procedure OCL_Collection_Type_Set is
8093      begin
8094         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Type_Element_Type_A_Type1 then
8095            --  CollectionType::elementType : Classifier
8096
8097            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8098             (AMF.Internals.Helpers.To_Element (Self)).Set_Element_Type
8099               (AMF.UML.Classifiers.UML_Classifier_Access (AMF.Holders.Elements.Element (Value)));
8100
8101         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
8102            --  Classifier::isAbstract : Boolean
8103
8104            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8105             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
8106               (League.Holders.Booleans.Element (Value));
8107
8108         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
8109            --  Classifier::isFinalSpecialization : Boolean
8110
8111            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8112             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
8113               (League.Holders.Booleans.Element (Value));
8114
8115         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
8116            --  RedefinableElement::isLeaf : Boolean
8117
8118            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8119             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
8120               (League.Holders.Booleans.Element (Value));
8121
8122         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8123            --  NamedElement::name : String
8124
8125            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8126             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8127               (AMF.Holders.Element (Value));
8128
8129         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8130            --  NamedElement::nameExpression : StringExpression
8131
8132            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8133             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8134               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8135
8136         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
8137            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
8138
8139            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8140             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
8141               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
8142
8143         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
8144            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
8145
8146            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8147             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
8148               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
8149
8150         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
8151            --  ParameterableElement::owningTemplateParameter : TemplateParameter
8152
8153            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8154             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
8155               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8156
8157         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
8158            --  Type::package : Package
8159
8160            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8161             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
8162               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
8163
8164         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
8165            --  Classifier::representation : CollaborationUse
8166
8167            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8168             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
8169               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
8170
8171         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
8172            --  Classifier::templateParameter : ClassifierTemplateParameter
8173
8174            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8175             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
8176               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8177
8178         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
8179            --  ParameterableElement::templateParameter : TemplateParameter
8180
8181            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8182             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
8183               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8184
8185         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8186            --  NamedElement::visibility : VisibilityKind
8187
8188            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8189             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8190               (AMF.UML.Holders.Element (Value));
8191
8192         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
8193            --  PackageableElement::visibility : VisibilityKind
8194
8195            AMF.OCL.Collection_Types.OCL_Collection_Type_Access
8196             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8197               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
8198
8199         else
8200            raise Program_Error;
8201         end if;
8202      end OCL_Collection_Type_Set;
8203
8204      ------------------------------
8205      -- OCL_Enum_Literal_Exp_Set --
8206      ------------------------------
8207
8208      procedure OCL_Enum_Literal_Exp_Set is
8209      begin
8210         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8211            --  NamedElement::name : String
8212
8213            AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
8214             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8215               (AMF.Holders.Element (Value));
8216
8217         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8218            --  NamedElement::nameExpression : StringExpression
8219
8220            AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
8221             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8222               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8223
8224         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Enum_Literal_Exp_Referred_Enum_Literal_A_Literal_Exp then
8225            --  EnumLiteralExp::referredEnumLiteral : EnumerationLiteral
8226
8227            AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
8228             (AMF.Internals.Helpers.To_Element (Self)).Set_Referred_Enum_Literal
8229               (AMF.UML.Enumeration_Literals.UML_Enumeration_Literal_Access (AMF.Holders.Elements.Element (Value)));
8230
8231         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8232            --  TypedElement::type : Type
8233
8234            AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
8235             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8236               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8237
8238         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8239            --  NamedElement::visibility : VisibilityKind
8240
8241            AMF.OCL.Enum_Literal_Exps.OCL_Enum_Literal_Exp_Access
8242             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8243               (AMF.UML.Holders.Element (Value));
8244
8245         else
8246            raise Program_Error;
8247         end if;
8248      end OCL_Enum_Literal_Exp_Set;
8249
8250      -------------------------------
8251      -- OCL_Expression_In_Ocl_Set --
8252      -------------------------------
8253
8254      procedure OCL_Expression_In_Ocl_Set is
8255      begin
8256         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Opaque_Expression_Behavior_A_Opaque_Expression then
8257            --  OpaqueExpression::behavior : Behavior
8258
8259            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8260             (AMF.Internals.Helpers.To_Element (Self)).Set_Behavior
8261               (AMF.UML.Behaviors.UML_Behavior_Access (AMF.Holders.Elements.Element (Value)));
8262
8263         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Expression_In_Ocl_Body_Expression_A_Top_Expression then
8264            --  ExpressionInOcl::bodyExpression : OclExpression
8265
8266            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8267             (AMF.Internals.Helpers.To_Element (Self)).Set_Body_Expression
8268               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8269
8270         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Expression_In_Ocl_Context_Variable_A_Self_Owner then
8271            --  ExpressionInOcl::contextVariable : Variable
8272
8273            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8274             (AMF.Internals.Helpers.To_Element (Self)).Set_Context_Variable
8275               (AMF.OCL.Variables.OCL_Variable_Access (AMF.Holders.Elements.Element (Value)));
8276
8277         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Expression_In_Ocl_Generated_Type_A_Owning_Classifier then
8278            --  ExpressionInOcl::generatedType : Classifier
8279
8280            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8281             (AMF.Internals.Helpers.To_Element (Self)).Set_Generated_Type
8282               (AMF.UML.Classifiers.UML_Classifier_Access (AMF.Holders.Elements.Element (Value)));
8283
8284         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8285            --  NamedElement::name : String
8286
8287            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8288             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8289               (AMF.Holders.Element (Value));
8290
8291         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8292            --  NamedElement::nameExpression : StringExpression
8293
8294            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8295             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8296               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8297
8298         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
8299            --  ParameterableElement::owningTemplateParameter : TemplateParameter
8300
8301            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8302             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
8303               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8304
8305         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Expression_In_Ocl_Result_Variable_A_Result_Owner then
8306            --  ExpressionInOcl::resultVariable : Variable
8307
8308            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8309             (AMF.Internals.Helpers.To_Element (Self)).Set_Result_Variable
8310               (AMF.OCL.Variables.OCL_Variable_Access (AMF.Holders.Elements.Element (Value)));
8311
8312         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
8313            --  ParameterableElement::templateParameter : TemplateParameter
8314
8315            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8316             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
8317               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8318
8319         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8320            --  TypedElement::type : Type
8321
8322            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8323             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8324               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8325
8326         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8327            --  NamedElement::visibility : VisibilityKind
8328
8329            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8330             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8331               (AMF.UML.Holders.Element (Value));
8332
8333         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
8334            --  PackageableElement::visibility : VisibilityKind
8335
8336            AMF.OCL.Expression_In_Ocls.OCL_Expression_In_Ocl_Access
8337             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8338               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
8339
8340         else
8341            raise Program_Error;
8342         end if;
8343      end OCL_Expression_In_Ocl_Set;
8344
8345      --------------------
8346      -- OCL_If_Exp_Set --
8347      --------------------
8348
8349      procedure OCL_If_Exp_Set is
8350      begin
8351         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_If_Exp_Condition_A_If_Owner then
8352            --  IfExp::condition : OclExpression
8353
8354            AMF.OCL.If_Exps.OCL_If_Exp_Access
8355             (AMF.Internals.Helpers.To_Element (Self)).Set_Condition
8356               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8357
8358         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_If_Exp_Else_Expression_A_Else_Owner then
8359            --  IfExp::elseExpression : OclExpression
8360
8361            AMF.OCL.If_Exps.OCL_If_Exp_Access
8362             (AMF.Internals.Helpers.To_Element (Self)).Set_Else_Expression
8363               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8364
8365         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8366            --  NamedElement::name : String
8367
8368            AMF.OCL.If_Exps.OCL_If_Exp_Access
8369             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8370               (AMF.Holders.Element (Value));
8371
8372         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8373            --  NamedElement::nameExpression : StringExpression
8374
8375            AMF.OCL.If_Exps.OCL_If_Exp_Access
8376             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8377               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8378
8379         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_If_Exp_Then_Expression_A_Then_Owner then
8380            --  IfExp::thenExpression : OclExpression
8381
8382            AMF.OCL.If_Exps.OCL_If_Exp_Access
8383             (AMF.Internals.Helpers.To_Element (Self)).Set_Then_Expression
8384               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8385
8386         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8387            --  TypedElement::type : Type
8388
8389            AMF.OCL.If_Exps.OCL_If_Exp_Access
8390             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8391               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8392
8393         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8394            --  NamedElement::visibility : VisibilityKind
8395
8396            AMF.OCL.If_Exps.OCL_If_Exp_Access
8397             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8398               (AMF.UML.Holders.Element (Value));
8399
8400         else
8401            raise Program_Error;
8402         end if;
8403      end OCL_If_Exp_Set;
8404
8405      ---------------------------------
8406      -- OCL_Integer_Literal_Exp_Set --
8407      ---------------------------------
8408
8409      procedure OCL_Integer_Literal_Exp_Set is
8410      begin
8411         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Integer_Literal_Exp_Integer_Symbol then
8412            --  IntegerLiteralExp::integerSymbol : Integer
8413
8414            AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
8415             (AMF.Internals.Helpers.To_Element (Self)).Set_Integer_Symbol
8416               (League.Holders.Integers.Element (Value));
8417
8418         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8419            --  NamedElement::name : String
8420
8421            AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
8422             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8423               (AMF.Holders.Element (Value));
8424
8425         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8426            --  NamedElement::nameExpression : StringExpression
8427
8428            AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
8429             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8430               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8431
8432         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8433            --  TypedElement::type : Type
8434
8435            AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
8436             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8437               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8438
8439         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8440            --  NamedElement::visibility : VisibilityKind
8441
8442            AMF.OCL.Integer_Literal_Exps.OCL_Integer_Literal_Exp_Access
8443             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8444               (AMF.UML.Holders.Element (Value));
8445
8446         else
8447            raise Program_Error;
8448         end if;
8449      end OCL_Integer_Literal_Exp_Set;
8450
8451      ---------------------------------
8452      -- OCL_Invalid_Literal_Exp_Set --
8453      ---------------------------------
8454
8455      procedure OCL_Invalid_Literal_Exp_Set is
8456      begin
8457         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8458            --  NamedElement::name : String
8459
8460            AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
8461             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8462               (AMF.Holders.Element (Value));
8463
8464         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8465            --  NamedElement::nameExpression : StringExpression
8466
8467            AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
8468             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8469               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8470
8471         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8472            --  TypedElement::type : Type
8473
8474            AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
8475             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8476               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8477
8478         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8479            --  NamedElement::visibility : VisibilityKind
8480
8481            AMF.OCL.Invalid_Literal_Exps.OCL_Invalid_Literal_Exp_Access
8482             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8483               (AMF.UML.Holders.Element (Value));
8484
8485         else
8486            raise Program_Error;
8487         end if;
8488      end OCL_Invalid_Literal_Exp_Set;
8489
8490      --------------------------
8491      -- OCL_Invalid_Type_Set --
8492      --------------------------
8493
8494      procedure OCL_Invalid_Type_Set is
8495      begin
8496         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
8497            --  Classifier::isAbstract : Boolean
8498
8499            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8500             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
8501               (League.Holders.Booleans.Element (Value));
8502
8503         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
8504            --  Classifier::isFinalSpecialization : Boolean
8505
8506            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8507             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
8508               (League.Holders.Booleans.Element (Value));
8509
8510         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
8511            --  RedefinableElement::isLeaf : Boolean
8512
8513            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8514             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
8515               (League.Holders.Booleans.Element (Value));
8516
8517         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8518            --  NamedElement::name : String
8519
8520            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8521             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8522               (AMF.Holders.Element (Value));
8523
8524         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8525            --  NamedElement::nameExpression : StringExpression
8526
8527            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8528             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8529               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8530
8531         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
8532            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
8533
8534            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8535             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
8536               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
8537
8538         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
8539            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
8540
8541            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8542             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
8543               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
8544
8545         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
8546            --  ParameterableElement::owningTemplateParameter : TemplateParameter
8547
8548            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8549             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
8550               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8551
8552         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
8553            --  Type::package : Package
8554
8555            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8556             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
8557               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
8558
8559         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
8560            --  Classifier::representation : CollaborationUse
8561
8562            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8563             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
8564               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
8565
8566         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
8567            --  Classifier::templateParameter : ClassifierTemplateParameter
8568
8569            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8570             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
8571               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8572
8573         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
8574            --  ParameterableElement::templateParameter : TemplateParameter
8575
8576            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8577             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
8578               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8579
8580         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8581            --  NamedElement::visibility : VisibilityKind
8582
8583            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8584             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8585               (AMF.UML.Holders.Element (Value));
8586
8587         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
8588            --  PackageableElement::visibility : VisibilityKind
8589
8590            AMF.OCL.Invalid_Types.OCL_Invalid_Type_Access
8591             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8592               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
8593
8594         else
8595            raise Program_Error;
8596         end if;
8597      end OCL_Invalid_Type_Set;
8598
8599      -------------------------
8600      -- OCL_Iterate_Exp_Set --
8601      -------------------------
8602
8603      procedure OCL_Iterate_Exp_Set is
8604      begin
8605         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Loop_Exp_Body_A_Loop_Body_Owner then
8606            --  LoopExp::body : OclExpression
8607
8608            AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
8609             (AMF.Internals.Helpers.To_Element (Self)).Set_Body
8610               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8611
8612         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8613            --  NamedElement::name : String
8614
8615            AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
8616             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8617               (AMF.Holders.Element (Value));
8618
8619         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8620            --  NamedElement::nameExpression : StringExpression
8621
8622            AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
8623             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8624               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8625
8626         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Iterate_Exp_Result_A_Base_Exp then
8627            --  IterateExp::result : Variable
8628
8629            AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
8630             (AMF.Internals.Helpers.To_Element (Self)).Set_Result
8631               (AMF.OCL.Variables.OCL_Variable_Access (AMF.Holders.Elements.Element (Value)));
8632
8633         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Call_Exp_Source_A_Applied_Element then
8634            --  CallExp::source : OclExpression
8635
8636            AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
8637             (AMF.Internals.Helpers.To_Element (Self)).Set_Source
8638               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8639
8640         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8641            --  TypedElement::type : Type
8642
8643            AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
8644             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8645               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8646
8647         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8648            --  NamedElement::visibility : VisibilityKind
8649
8650            AMF.OCL.Iterate_Exps.OCL_Iterate_Exp_Access
8651             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8652               (AMF.UML.Holders.Element (Value));
8653
8654         else
8655            raise Program_Error;
8656         end if;
8657      end OCL_Iterate_Exp_Set;
8658
8659      --------------------------
8660      -- OCL_Iterator_Exp_Set --
8661      --------------------------
8662
8663      procedure OCL_Iterator_Exp_Set is
8664      begin
8665         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Loop_Exp_Body_A_Loop_Body_Owner then
8666            --  LoopExp::body : OclExpression
8667
8668            AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
8669             (AMF.Internals.Helpers.To_Element (Self)).Set_Body
8670               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8671
8672         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8673            --  NamedElement::name : String
8674
8675            AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
8676             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8677               (AMF.Holders.Element (Value));
8678
8679         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8680            --  NamedElement::nameExpression : StringExpression
8681
8682            AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
8683             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8684               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8685
8686         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Call_Exp_Source_A_Applied_Element then
8687            --  CallExp::source : OclExpression
8688
8689            AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
8690             (AMF.Internals.Helpers.To_Element (Self)).Set_Source
8691               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8692
8693         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8694            --  TypedElement::type : Type
8695
8696            AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
8697             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8698               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8699
8700         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8701            --  NamedElement::visibility : VisibilityKind
8702
8703            AMF.OCL.Iterator_Exps.OCL_Iterator_Exp_Access
8704             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8705               (AMF.UML.Holders.Element (Value));
8706
8707         else
8708            raise Program_Error;
8709         end if;
8710      end OCL_Iterator_Exp_Set;
8711
8712      ---------------------
8713      -- OCL_Let_Exp_Set --
8714      ---------------------
8715
8716      procedure OCL_Let_Exp_Set is
8717      begin
8718         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Let_Exp_In_A_Exp4 then
8719            --  LetExp::in : OclExpression
8720
8721            AMF.OCL.Let_Exps.OCL_Let_Exp_Access
8722             (AMF.Internals.Helpers.To_Element (Self)).Set_In
8723               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8724
8725         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8726            --  NamedElement::name : String
8727
8728            AMF.OCL.Let_Exps.OCL_Let_Exp_Access
8729             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8730               (AMF.Holders.Element (Value));
8731
8732         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8733            --  NamedElement::nameExpression : StringExpression
8734
8735            AMF.OCL.Let_Exps.OCL_Let_Exp_Access
8736             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8737               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8738
8739         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8740            --  TypedElement::type : Type
8741
8742            AMF.OCL.Let_Exps.OCL_Let_Exp_Access
8743             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8744               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8745
8746         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Let_Exp_Variable_A_Exp5 then
8747            --  LetExp::variable : Variable
8748
8749            AMF.OCL.Let_Exps.OCL_Let_Exp_Access
8750             (AMF.Internals.Helpers.To_Element (Self)).Set_Variable
8751               (AMF.OCL.Variables.OCL_Variable_Access (AMF.Holders.Elements.Element (Value)));
8752
8753         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8754            --  NamedElement::visibility : VisibilityKind
8755
8756            AMF.OCL.Let_Exps.OCL_Let_Exp_Access
8757             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8758               (AMF.UML.Holders.Element (Value));
8759
8760         else
8761            raise Program_Error;
8762         end if;
8763      end OCL_Let_Exp_Set;
8764
8765      -------------------------
8766      -- OCL_Message_Exp_Set --
8767      -------------------------
8768
8769      procedure OCL_Message_Exp_Set is
8770      begin
8771         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Exp_Called_Operation_A_Exp6 then
8772            --  MessageExp::calledOperation : CallOperationAction
8773
8774            AMF.OCL.Message_Exps.OCL_Message_Exp_Access
8775             (AMF.Internals.Helpers.To_Element (Self)).Set_Called_Operation
8776               (AMF.UML.Call_Operation_Actions.UML_Call_Operation_Action_Access (AMF.Holders.Elements.Element (Value)));
8777
8778         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8779            --  NamedElement::name : String
8780
8781            AMF.OCL.Message_Exps.OCL_Message_Exp_Access
8782             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8783               (AMF.Holders.Element (Value));
8784
8785         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8786            --  NamedElement::nameExpression : StringExpression
8787
8788            AMF.OCL.Message_Exps.OCL_Message_Exp_Access
8789             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8790               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8791
8792         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Exp_Sent_Signal_A_Exp7 then
8793            --  MessageExp::sentSignal : SendSignalAction
8794
8795            AMF.OCL.Message_Exps.OCL_Message_Exp_Access
8796             (AMF.Internals.Helpers.To_Element (Self)).Set_Sent_Signal
8797               (AMF.UML.Send_Signal_Actions.UML_Send_Signal_Action_Access (AMF.Holders.Elements.Element (Value)));
8798
8799         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Exp_Target_A_Exp8 then
8800            --  MessageExp::target : OclExpression
8801
8802            AMF.OCL.Message_Exps.OCL_Message_Exp_Access
8803             (AMF.Internals.Helpers.To_Element (Self)).Set_Target
8804               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
8805
8806         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8807            --  TypedElement::type : Type
8808
8809            AMF.OCL.Message_Exps.OCL_Message_Exp_Access
8810             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8811               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8812
8813         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8814            --  NamedElement::visibility : VisibilityKind
8815
8816            AMF.OCL.Message_Exps.OCL_Message_Exp_Access
8817             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8818               (AMF.UML.Holders.Element (Value));
8819
8820         else
8821            raise Program_Error;
8822         end if;
8823      end OCL_Message_Exp_Set;
8824
8825      --------------------------
8826      -- OCL_Message_Type_Set --
8827      --------------------------
8828
8829      procedure OCL_Message_Type_Set is
8830      begin
8831         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
8832            --  Classifier::isAbstract : Boolean
8833
8834            AMF.OCL.Message_Types.OCL_Message_Type_Access
8835             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
8836               (League.Holders.Booleans.Element (Value));
8837
8838         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
8839            --  Classifier::isFinalSpecialization : Boolean
8840
8841            AMF.OCL.Message_Types.OCL_Message_Type_Access
8842             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
8843               (League.Holders.Booleans.Element (Value));
8844
8845         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
8846            --  RedefinableElement::isLeaf : Boolean
8847
8848            AMF.OCL.Message_Types.OCL_Message_Type_Access
8849             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
8850               (League.Holders.Booleans.Element (Value));
8851
8852         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8853            --  NamedElement::name : String
8854
8855            AMF.OCL.Message_Types.OCL_Message_Type_Access
8856             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8857               (AMF.Holders.Element (Value));
8858
8859         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8860            --  NamedElement::nameExpression : StringExpression
8861
8862            AMF.OCL.Message_Types.OCL_Message_Type_Access
8863             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8864               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8865
8866         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
8867            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
8868
8869            AMF.OCL.Message_Types.OCL_Message_Type_Access
8870             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
8871               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
8872
8873         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
8874            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
8875
8876            AMF.OCL.Message_Types.OCL_Message_Type_Access
8877             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
8878               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
8879
8880         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
8881            --  ParameterableElement::owningTemplateParameter : TemplateParameter
8882
8883            AMF.OCL.Message_Types.OCL_Message_Type_Access
8884             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
8885               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8886
8887         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
8888            --  Type::package : Package
8889
8890            AMF.OCL.Message_Types.OCL_Message_Type_Access
8891             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
8892               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
8893
8894         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Type_Referred_Operation_A_Type2 then
8895            --  MessageType::referredOperation : Operation
8896
8897            AMF.OCL.Message_Types.OCL_Message_Type_Access
8898             (AMF.Internals.Helpers.To_Element (Self)).Set_Referred_Operation
8899               (AMF.UML.Operations.UML_Operation_Access (AMF.Holders.Elements.Element (Value)));
8900
8901         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Message_Type_Referred_Signal_A_Type3 then
8902            --  MessageType::referredSignal : Signal
8903
8904            AMF.OCL.Message_Types.OCL_Message_Type_Access
8905             (AMF.Internals.Helpers.To_Element (Self)).Set_Referred_Signal
8906               (AMF.UML.Signals.UML_Signal_Access (AMF.Holders.Elements.Element (Value)));
8907
8908         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
8909            --  Classifier::representation : CollaborationUse
8910
8911            AMF.OCL.Message_Types.OCL_Message_Type_Access
8912             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
8913               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
8914
8915         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
8916            --  Classifier::templateParameter : ClassifierTemplateParameter
8917
8918            AMF.OCL.Message_Types.OCL_Message_Type_Access
8919             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
8920               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8921
8922         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
8923            --  ParameterableElement::templateParameter : TemplateParameter
8924
8925            AMF.OCL.Message_Types.OCL_Message_Type_Access
8926             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
8927               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
8928
8929         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8930            --  NamedElement::visibility : VisibilityKind
8931
8932            AMF.OCL.Message_Types.OCL_Message_Type_Access
8933             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8934               (AMF.UML.Holders.Element (Value));
8935
8936         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
8937            --  PackageableElement::visibility : VisibilityKind
8938
8939            AMF.OCL.Message_Types.OCL_Message_Type_Access
8940             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8941               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
8942
8943         else
8944            raise Program_Error;
8945         end if;
8946      end OCL_Message_Type_Set;
8947
8948      ------------------------------
8949      -- OCL_Null_Literal_Exp_Set --
8950      ------------------------------
8951
8952      procedure OCL_Null_Literal_Exp_Set is
8953      begin
8954         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8955            --  NamedElement::name : String
8956
8957            AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
8958             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8959               (AMF.Holders.Element (Value));
8960
8961         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
8962            --  NamedElement::nameExpression : StringExpression
8963
8964            AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
8965             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
8966               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
8967
8968         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
8969            --  TypedElement::type : Type
8970
8971            AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
8972             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
8973               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
8974
8975         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
8976            --  NamedElement::visibility : VisibilityKind
8977
8978            AMF.OCL.Null_Literal_Exps.OCL_Null_Literal_Exp_Access
8979             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
8980               (AMF.UML.Holders.Element (Value));
8981
8982         else
8983            raise Program_Error;
8984         end if;
8985      end OCL_Null_Literal_Exp_Set;
8986
8987      --------------------------------
8988      -- OCL_Operation_Call_Exp_Set --
8989      --------------------------------
8990
8991      procedure OCL_Operation_Call_Exp_Set is
8992      begin
8993         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
8994            --  NamedElement::name : String
8995
8996            AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
8997             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
8998               (AMF.Holders.Element (Value));
8999
9000         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9001            --  NamedElement::nameExpression : StringExpression
9002
9003            AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
9004             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9005               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9006
9007         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Operation_Call_Exp_Referred_Operation_A_Refering_Exp then
9008            --  OperationCallExp::referredOperation : Operation
9009
9010            AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
9011             (AMF.Internals.Helpers.To_Element (Self)).Set_Referred_Operation
9012               (AMF.UML.Operations.UML_Operation_Access (AMF.Holders.Elements.Element (Value)));
9013
9014         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Call_Exp_Source_A_Applied_Element then
9015            --  CallExp::source : OclExpression
9016
9017            AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
9018             (AMF.Internals.Helpers.To_Element (Self)).Set_Source
9019               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
9020
9021         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
9022            --  TypedElement::type : Type
9023
9024            AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
9025             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
9026               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
9027
9028         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9029            --  NamedElement::visibility : VisibilityKind
9030
9031            AMF.OCL.Operation_Call_Exps.OCL_Operation_Call_Exp_Access
9032             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9033               (AMF.UML.Holders.Element (Value));
9034
9035         else
9036            raise Program_Error;
9037         end if;
9038      end OCL_Operation_Call_Exp_Set;
9039
9040      ------------------------------
9041      -- OCL_Ordered_Set_Type_Set --
9042      ------------------------------
9043
9044      procedure OCL_Ordered_Set_Type_Set is
9045      begin
9046         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Type_Element_Type_A_Type1 then
9047            --  CollectionType::elementType : Classifier
9048
9049            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9050             (AMF.Internals.Helpers.To_Element (Self)).Set_Element_Type
9051               (AMF.UML.Classifiers.UML_Classifier_Access (AMF.Holders.Elements.Element (Value)));
9052
9053         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
9054            --  Classifier::isAbstract : Boolean
9055
9056            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9057             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
9058               (League.Holders.Booleans.Element (Value));
9059
9060         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
9061            --  Classifier::isFinalSpecialization : Boolean
9062
9063            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9064             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
9065               (League.Holders.Booleans.Element (Value));
9066
9067         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
9068            --  RedefinableElement::isLeaf : Boolean
9069
9070            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9071             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
9072               (League.Holders.Booleans.Element (Value));
9073
9074         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9075            --  NamedElement::name : String
9076
9077            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9078             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9079               (AMF.Holders.Element (Value));
9080
9081         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9082            --  NamedElement::nameExpression : StringExpression
9083
9084            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9085             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9086               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9087
9088         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
9089            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
9090
9091            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9092             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
9093               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
9094
9095         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
9096            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
9097
9098            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9099             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
9100               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
9101
9102         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
9103            --  ParameterableElement::owningTemplateParameter : TemplateParameter
9104
9105            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9106             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
9107               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9108
9109         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
9110            --  Type::package : Package
9111
9112            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9113             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
9114               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
9115
9116         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
9117            --  Classifier::representation : CollaborationUse
9118
9119            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9120             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
9121               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
9122
9123         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
9124            --  Classifier::templateParameter : ClassifierTemplateParameter
9125
9126            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9127             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
9128               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9129
9130         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
9131            --  ParameterableElement::templateParameter : TemplateParameter
9132
9133            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9134             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
9135               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9136
9137         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9138            --  NamedElement::visibility : VisibilityKind
9139
9140            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9141             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9142               (AMF.UML.Holders.Element (Value));
9143
9144         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
9145            --  PackageableElement::visibility : VisibilityKind
9146
9147            AMF.OCL.Ordered_Set_Types.OCL_Ordered_Set_Type_Access
9148             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9149               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
9150
9151         else
9152            raise Program_Error;
9153         end if;
9154      end OCL_Ordered_Set_Type_Set;
9155
9156      -------------------------------
9157      -- OCL_Property_Call_Exp_Set --
9158      -------------------------------
9159
9160      procedure OCL_Property_Call_Exp_Set is
9161      begin
9162         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9163            --  NamedElement::name : String
9164
9165            AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
9166             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9167               (AMF.Holders.Element (Value));
9168
9169         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9170            --  NamedElement::nameExpression : StringExpression
9171
9172            AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
9173             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9174               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9175
9176         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Navigation_Call_Exp_Navigation_Source_A_Exp9 then
9177            --  NavigationCallExp::navigationSource : Property
9178
9179            AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
9180             (AMF.Internals.Helpers.To_Element (Self)).Set_Navigation_Source
9181               (AMF.UML.Properties.UML_Property_Access (AMF.Holders.Elements.Element (Value)));
9182
9183         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Property_Call_Exp_Referred_Property_A_Refering_Exp then
9184            --  PropertyCallExp::referredProperty : Property
9185
9186            AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
9187             (AMF.Internals.Helpers.To_Element (Self)).Set_Referred_Property
9188               (AMF.UML.Properties.UML_Property_Access (AMF.Holders.Elements.Element (Value)));
9189
9190         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Call_Exp_Source_A_Applied_Element then
9191            --  CallExp::source : OclExpression
9192
9193            AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
9194             (AMF.Internals.Helpers.To_Element (Self)).Set_Source
9195               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
9196
9197         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
9198            --  TypedElement::type : Type
9199
9200            AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
9201             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
9202               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
9203
9204         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9205            --  NamedElement::visibility : VisibilityKind
9206
9207            AMF.OCL.Property_Call_Exps.OCL_Property_Call_Exp_Access
9208             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9209               (AMF.UML.Holders.Element (Value));
9210
9211         else
9212            raise Program_Error;
9213         end if;
9214      end OCL_Property_Call_Exp_Set;
9215
9216      ------------------------------
9217      -- OCL_Real_Literal_Exp_Set --
9218      ------------------------------
9219
9220      procedure OCL_Real_Literal_Exp_Set is
9221      begin
9222         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9223            --  NamedElement::name : String
9224
9225            AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
9226             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9227               (AMF.Holders.Element (Value));
9228
9229         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9230            --  NamedElement::nameExpression : StringExpression
9231
9232            AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
9233             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9234               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9235
9236         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Real_Literal_Exp_Real_Symbol then
9237            --  RealLiteralExp::realSymbol : Real
9238
9239            AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
9240             (AMF.Internals.Helpers.To_Element (Self)).Set_Real_Symbol
9241               (AMF.Holders.Reals.Element (Value));
9242
9243         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
9244            --  TypedElement::type : Type
9245
9246            AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
9247             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
9248               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
9249
9250         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9251            --  NamedElement::visibility : VisibilityKind
9252
9253            AMF.OCL.Real_Literal_Exps.OCL_Real_Literal_Exp_Access
9254             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9255               (AMF.UML.Holders.Element (Value));
9256
9257         else
9258            raise Program_Error;
9259         end if;
9260      end OCL_Real_Literal_Exp_Set;
9261
9262      ---------------------------
9263      -- OCL_Sequence_Type_Set --
9264      ---------------------------
9265
9266      procedure OCL_Sequence_Type_Set is
9267      begin
9268         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Type_Element_Type_A_Type1 then
9269            --  CollectionType::elementType : Classifier
9270
9271            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9272             (AMF.Internals.Helpers.To_Element (Self)).Set_Element_Type
9273               (AMF.UML.Classifiers.UML_Classifier_Access (AMF.Holders.Elements.Element (Value)));
9274
9275         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
9276            --  Classifier::isAbstract : Boolean
9277
9278            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9279             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
9280               (League.Holders.Booleans.Element (Value));
9281
9282         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
9283            --  Classifier::isFinalSpecialization : Boolean
9284
9285            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9286             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
9287               (League.Holders.Booleans.Element (Value));
9288
9289         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
9290            --  RedefinableElement::isLeaf : Boolean
9291
9292            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9293             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
9294               (League.Holders.Booleans.Element (Value));
9295
9296         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9297            --  NamedElement::name : String
9298
9299            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9300             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9301               (AMF.Holders.Element (Value));
9302
9303         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9304            --  NamedElement::nameExpression : StringExpression
9305
9306            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9307             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9308               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9309
9310         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
9311            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
9312
9313            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9314             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
9315               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
9316
9317         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
9318            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
9319
9320            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9321             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
9322               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
9323
9324         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
9325            --  ParameterableElement::owningTemplateParameter : TemplateParameter
9326
9327            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9328             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
9329               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9330
9331         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
9332            --  Type::package : Package
9333
9334            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9335             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
9336               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
9337
9338         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
9339            --  Classifier::representation : CollaborationUse
9340
9341            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9342             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
9343               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
9344
9345         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
9346            --  Classifier::templateParameter : ClassifierTemplateParameter
9347
9348            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9349             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
9350               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9351
9352         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
9353            --  ParameterableElement::templateParameter : TemplateParameter
9354
9355            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9356             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
9357               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9358
9359         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9360            --  NamedElement::visibility : VisibilityKind
9361
9362            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9363             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9364               (AMF.UML.Holders.Element (Value));
9365
9366         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
9367            --  PackageableElement::visibility : VisibilityKind
9368
9369            AMF.OCL.Sequence_Types.OCL_Sequence_Type_Access
9370             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9371               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
9372
9373         else
9374            raise Program_Error;
9375         end if;
9376      end OCL_Sequence_Type_Set;
9377
9378      ----------------------
9379      -- OCL_Set_Type_Set --
9380      ----------------------
9381
9382      procedure OCL_Set_Type_Set is
9383      begin
9384         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Collection_Type_Element_Type_A_Type1 then
9385            --  CollectionType::elementType : Classifier
9386
9387            AMF.OCL.Set_Types.OCL_Set_Type_Access
9388             (AMF.Internals.Helpers.To_Element (Self)).Set_Element_Type
9389               (AMF.UML.Classifiers.UML_Classifier_Access (AMF.Holders.Elements.Element (Value)));
9390
9391         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
9392            --  Classifier::isAbstract : Boolean
9393
9394            AMF.OCL.Set_Types.OCL_Set_Type_Access
9395             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
9396               (League.Holders.Booleans.Element (Value));
9397
9398         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
9399            --  Classifier::isFinalSpecialization : Boolean
9400
9401            AMF.OCL.Set_Types.OCL_Set_Type_Access
9402             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
9403               (League.Holders.Booleans.Element (Value));
9404
9405         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
9406            --  RedefinableElement::isLeaf : Boolean
9407
9408            AMF.OCL.Set_Types.OCL_Set_Type_Access
9409             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
9410               (League.Holders.Booleans.Element (Value));
9411
9412         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9413            --  NamedElement::name : String
9414
9415            AMF.OCL.Set_Types.OCL_Set_Type_Access
9416             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9417               (AMF.Holders.Element (Value));
9418
9419         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9420            --  NamedElement::nameExpression : StringExpression
9421
9422            AMF.OCL.Set_Types.OCL_Set_Type_Access
9423             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9424               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9425
9426         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
9427            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
9428
9429            AMF.OCL.Set_Types.OCL_Set_Type_Access
9430             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
9431               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
9432
9433         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
9434            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
9435
9436            AMF.OCL.Set_Types.OCL_Set_Type_Access
9437             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
9438               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
9439
9440         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
9441            --  ParameterableElement::owningTemplateParameter : TemplateParameter
9442
9443            AMF.OCL.Set_Types.OCL_Set_Type_Access
9444             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
9445               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9446
9447         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
9448            --  Type::package : Package
9449
9450            AMF.OCL.Set_Types.OCL_Set_Type_Access
9451             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
9452               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
9453
9454         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
9455            --  Classifier::representation : CollaborationUse
9456
9457            AMF.OCL.Set_Types.OCL_Set_Type_Access
9458             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
9459               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
9460
9461         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
9462            --  Classifier::templateParameter : ClassifierTemplateParameter
9463
9464            AMF.OCL.Set_Types.OCL_Set_Type_Access
9465             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
9466               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9467
9468         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
9469            --  ParameterableElement::templateParameter : TemplateParameter
9470
9471            AMF.OCL.Set_Types.OCL_Set_Type_Access
9472             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
9473               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9474
9475         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9476            --  NamedElement::visibility : VisibilityKind
9477
9478            AMF.OCL.Set_Types.OCL_Set_Type_Access
9479             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9480               (AMF.UML.Holders.Element (Value));
9481
9482         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
9483            --  PackageableElement::visibility : VisibilityKind
9484
9485            AMF.OCL.Set_Types.OCL_Set_Type_Access
9486             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9487               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
9488
9489         else
9490            raise Program_Error;
9491         end if;
9492      end OCL_Set_Type_Set;
9493
9494      -----------------------
9495      -- OCL_State_Exp_Set --
9496      -----------------------
9497
9498      procedure OCL_State_Exp_Set is
9499      begin
9500         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9501            --  NamedElement::name : String
9502
9503            AMF.OCL.State_Exps.OCL_State_Exp_Access
9504             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9505               (AMF.Holders.Element (Value));
9506
9507         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9508            --  NamedElement::nameExpression : StringExpression
9509
9510            AMF.OCL.State_Exps.OCL_State_Exp_Access
9511             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9512               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9513
9514         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_State_Exp_Referred_State_A_Exp9 then
9515            --  StateExp::referredState : State
9516
9517            AMF.OCL.State_Exps.OCL_State_Exp_Access
9518             (AMF.Internals.Helpers.To_Element (Self)).Set_Referred_State
9519               (AMF.UML.States.UML_State_Access (AMF.Holders.Elements.Element (Value)));
9520
9521         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
9522            --  TypedElement::type : Type
9523
9524            AMF.OCL.State_Exps.OCL_State_Exp_Access
9525             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
9526               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
9527
9528         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9529            --  NamedElement::visibility : VisibilityKind
9530
9531            AMF.OCL.State_Exps.OCL_State_Exp_Access
9532             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9533               (AMF.UML.Holders.Element (Value));
9534
9535         else
9536            raise Program_Error;
9537         end if;
9538      end OCL_State_Exp_Set;
9539
9540      --------------------------------
9541      -- OCL_String_Literal_Exp_Set --
9542      --------------------------------
9543
9544      procedure OCL_String_Literal_Exp_Set is
9545      begin
9546         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9547            --  NamedElement::name : String
9548
9549            AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
9550             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9551               (AMF.Holders.Element (Value));
9552
9553         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9554            --  NamedElement::nameExpression : StringExpression
9555
9556            AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
9557             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9558               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9559
9560         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_String_Literal_Exp_String_Symbol then
9561            --  StringLiteralExp::stringSymbol : String
9562
9563            AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
9564             (AMF.Internals.Helpers.To_Element (Self)).Set_String_Symbol
9565               (League.Holders.Element (Value));
9566
9567         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
9568            --  TypedElement::type : Type
9569
9570            AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
9571             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
9572               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
9573
9574         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9575            --  NamedElement::visibility : VisibilityKind
9576
9577            AMF.OCL.String_Literal_Exps.OCL_String_Literal_Exp_Access
9578             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9579               (AMF.UML.Holders.Element (Value));
9580
9581         else
9582            raise Program_Error;
9583         end if;
9584      end OCL_String_Literal_Exp_Set;
9585
9586      -------------------------------------
9587      -- OCL_Template_Parameter_Type_Set --
9588      -------------------------------------
9589
9590      procedure OCL_Template_Parameter_Type_Set is
9591      begin
9592         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
9593            --  Classifier::isAbstract : Boolean
9594
9595            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9596             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
9597               (League.Holders.Booleans.Element (Value));
9598
9599         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
9600            --  Classifier::isFinalSpecialization : Boolean
9601
9602            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9603             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
9604               (League.Holders.Booleans.Element (Value));
9605
9606         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
9607            --  RedefinableElement::isLeaf : Boolean
9608
9609            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9610             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
9611               (League.Holders.Booleans.Element (Value));
9612
9613         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9614            --  NamedElement::name : String
9615
9616            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9617             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9618               (AMF.Holders.Element (Value));
9619
9620         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9621            --  NamedElement::nameExpression : StringExpression
9622
9623            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9624             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9625               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9626
9627         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
9628            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
9629
9630            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9631             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
9632               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
9633
9634         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
9635            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
9636
9637            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9638             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
9639               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
9640
9641         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
9642            --  ParameterableElement::owningTemplateParameter : TemplateParameter
9643
9644            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9645             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
9646               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9647
9648         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
9649            --  Type::package : Package
9650
9651            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9652             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
9653               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
9654
9655         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
9656            --  Classifier::representation : CollaborationUse
9657
9658            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9659             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
9660               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
9661
9662         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Template_Parameter_Type_Specification then
9663            --  TemplateParameterType::specification : String
9664
9665            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9666             (AMF.Internals.Helpers.To_Element (Self)).Set_Specification
9667               (AMF.Holders.Element (Value));
9668
9669         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
9670            --  Classifier::templateParameter : ClassifierTemplateParameter
9671
9672            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9673             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
9674               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9675
9676         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
9677            --  ParameterableElement::templateParameter : TemplateParameter
9678
9679            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9680             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
9681               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9682
9683         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9684            --  NamedElement::visibility : VisibilityKind
9685
9686            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9687             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9688               (AMF.UML.Holders.Element (Value));
9689
9690         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
9691            --  PackageableElement::visibility : VisibilityKind
9692
9693            AMF.OCL.Template_Parameter_Types.OCL_Template_Parameter_Type_Access
9694             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9695               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
9696
9697         else
9698            raise Program_Error;
9699         end if;
9700      end OCL_Template_Parameter_Type_Set;
9701
9702      -------------------------------
9703      -- OCL_Tuple_Literal_Exp_Set --
9704      -------------------------------
9705
9706      procedure OCL_Tuple_Literal_Exp_Set is
9707      begin
9708         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9709            --  NamedElement::name : String
9710
9711            AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
9712             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9713               (AMF.Holders.Element (Value));
9714
9715         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9716            --  NamedElement::nameExpression : StringExpression
9717
9718            AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
9719             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9720               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9721
9722         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
9723            --  TypedElement::type : Type
9724
9725            AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
9726             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
9727               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
9728
9729         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9730            --  NamedElement::visibility : VisibilityKind
9731
9732            AMF.OCL.Tuple_Literal_Exps.OCL_Tuple_Literal_Exp_Access
9733             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9734               (AMF.UML.Holders.Element (Value));
9735
9736         else
9737            raise Program_Error;
9738         end if;
9739      end OCL_Tuple_Literal_Exp_Set;
9740
9741      --------------------------------
9742      -- OCL_Tuple_Literal_Part_Set --
9743      --------------------------------
9744
9745      procedure OCL_Tuple_Literal_Part_Set is
9746      begin
9747         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Tuple_Literal_Part_Attribute_A_Part2 then
9748            --  TupleLiteralPart::attribute : Property
9749
9750            AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
9751             (AMF.Internals.Helpers.To_Element (Self)).Set_Attribute
9752               (AMF.UML.Properties.UML_Property_Access (AMF.Holders.Elements.Element (Value)));
9753
9754         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9755            --  NamedElement::name : String
9756
9757            AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
9758             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9759               (AMF.Holders.Element (Value));
9760
9761         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9762            --  NamedElement::nameExpression : StringExpression
9763
9764            AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
9765             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9766               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9767
9768         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
9769            --  TypedElement::type : Type
9770
9771            AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
9772             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
9773               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
9774
9775         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9776            --  NamedElement::visibility : VisibilityKind
9777
9778            AMF.OCL.Tuple_Literal_Parts.OCL_Tuple_Literal_Part_Access
9779             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9780               (AMF.UML.Holders.Element (Value));
9781
9782         else
9783            raise Program_Error;
9784         end if;
9785      end OCL_Tuple_Literal_Part_Set;
9786
9787      ------------------------
9788      -- OCL_Tuple_Type_Set --
9789      ------------------------
9790
9791      procedure OCL_Tuple_Type_Set is
9792      begin
9793         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
9794            --  Classifier::isAbstract : Boolean
9795
9796            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9797             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
9798               (League.Holders.Booleans.Element (Value));
9799
9800         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
9801            --  Classifier::isFinalSpecialization : Boolean
9802
9803            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9804             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
9805               (League.Holders.Booleans.Element (Value));
9806
9807         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
9808            --  RedefinableElement::isLeaf : Boolean
9809
9810            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9811             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
9812               (League.Holders.Booleans.Element (Value));
9813
9814         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9815            --  NamedElement::name : String
9816
9817            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9818             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9819               (AMF.Holders.Element (Value));
9820
9821         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9822            --  NamedElement::nameExpression : StringExpression
9823
9824            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9825             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9826               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9827
9828         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
9829            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
9830
9831            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9832             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
9833               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
9834
9835         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
9836            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
9837
9838            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9839             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
9840               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
9841
9842         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
9843            --  ParameterableElement::owningTemplateParameter : TemplateParameter
9844
9845            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9846             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
9847               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9848
9849         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
9850            --  Type::package : Package
9851
9852            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9853             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
9854               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
9855
9856         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
9857            --  Classifier::representation : CollaborationUse
9858
9859            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9860             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
9861               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
9862
9863         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
9864            --  Classifier::templateParameter : ClassifierTemplateParameter
9865
9866            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9867             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
9868               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9869
9870         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
9871            --  ParameterableElement::templateParameter : TemplateParameter
9872
9873            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9874             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
9875               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
9876
9877         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9878            --  NamedElement::visibility : VisibilityKind
9879
9880            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9881             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9882               (AMF.UML.Holders.Element (Value));
9883
9884         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
9885            --  PackageableElement::visibility : VisibilityKind
9886
9887            AMF.OCL.Tuple_Types.OCL_Tuple_Type_Access
9888             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9889               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
9890
9891         else
9892            raise Program_Error;
9893         end if;
9894      end OCL_Tuple_Type_Set;
9895
9896      ----------------------
9897      -- OCL_Type_Exp_Set --
9898      ----------------------
9899
9900      procedure OCL_Type_Exp_Set is
9901      begin
9902         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9903            --  NamedElement::name : String
9904
9905            AMF.OCL.Type_Exps.OCL_Type_Exp_Access
9906             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9907               (AMF.Holders.Element (Value));
9908
9909         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9910            --  NamedElement::nameExpression : StringExpression
9911
9912            AMF.OCL.Type_Exps.OCL_Type_Exp_Access
9913             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9914               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9915
9916         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Type_Exp_Referred_Type_A_Exp11 then
9917            --  TypeExp::referredType : Classifier
9918
9919            AMF.OCL.Type_Exps.OCL_Type_Exp_Access
9920             (AMF.Internals.Helpers.To_Element (Self)).Set_Referred_Type
9921               (AMF.UML.Classifiers.UML_Classifier_Access (AMF.Holders.Elements.Element (Value)));
9922
9923         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
9924            --  TypedElement::type : Type
9925
9926            AMF.OCL.Type_Exps.OCL_Type_Exp_Access
9927             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
9928               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
9929
9930         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9931            --  NamedElement::visibility : VisibilityKind
9932
9933            AMF.OCL.Type_Exps.OCL_Type_Exp_Access
9934             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9935               (AMF.UML.Holders.Element (Value));
9936
9937         else
9938            raise Program_Error;
9939         end if;
9940      end OCL_Type_Exp_Set;
9941
9942      -------------------------------------------
9943      -- OCL_Unlimited_Natural_Literal_Exp_Set --
9944      -------------------------------------------
9945
9946      procedure OCL_Unlimited_Natural_Literal_Exp_Set is
9947      begin
9948         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9949            --  NamedElement::name : String
9950
9951            AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
9952             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9953               (AMF.Holders.Element (Value));
9954
9955         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
9956            --  NamedElement::nameExpression : StringExpression
9957
9958            AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
9959             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
9960               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
9961
9962         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
9963            --  TypedElement::type : Type
9964
9965            AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
9966             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
9967               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
9968
9969         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Unlimited_Natural_Literal_Exp_Unlimited_Natural_Symbol then
9970            --  UnlimitedNaturalLiteralExp::unlimitedNaturalSymbol : UnlimitedNatural
9971
9972            AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
9973             (AMF.Internals.Helpers.To_Element (Self)).Set_Unlimited_Natural_Symbol
9974               (AMF.Holders.Unlimited_Naturals.Element (Value));
9975
9976         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
9977            --  NamedElement::visibility : VisibilityKind
9978
9979            AMF.OCL.Unlimited_Natural_Literal_Exps.OCL_Unlimited_Natural_Literal_Exp_Access
9980             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
9981               (AMF.UML.Holders.Element (Value));
9982
9983         else
9984            raise Program_Error;
9985         end if;
9986      end OCL_Unlimited_Natural_Literal_Exp_Set;
9987
9988      -----------------------------------
9989      -- OCL_Unspecified_Value_Exp_Set --
9990      -----------------------------------
9991
9992      procedure OCL_Unspecified_Value_Exp_Set is
9993      begin
9994         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
9995            --  NamedElement::name : String
9996
9997            AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
9998             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
9999               (AMF.Holders.Element (Value));
10000
10001         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
10002            --  NamedElement::nameExpression : StringExpression
10003
10004            AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
10005             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
10006               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
10007
10008         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
10009            --  TypedElement::type : Type
10010
10011            AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
10012             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
10013               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
10014
10015         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
10016            --  NamedElement::visibility : VisibilityKind
10017
10018            AMF.OCL.Unspecified_Value_Exps.OCL_Unspecified_Value_Exp_Access
10019             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
10020               (AMF.UML.Holders.Element (Value));
10021
10022         else
10023            raise Program_Error;
10024         end if;
10025      end OCL_Unspecified_Value_Exp_Set;
10026
10027      ----------------------
10028      -- OCL_Variable_Set --
10029      ----------------------
10030
10031      procedure OCL_Variable_Set is
10032      begin
10033         if Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Variable_Init_Expression_A_Initialized_Element then
10034            --  Variable::initExpression : OclExpression
10035
10036            AMF.OCL.Variables.OCL_Variable_Access
10037             (AMF.Internals.Helpers.To_Element (Self)).Set_Init_Expression
10038               (AMF.OCL.Ocl_Expressions.OCL_Ocl_Expression_Access (AMF.Holders.Elements.Element (Value)));
10039
10040         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
10041            --  NamedElement::name : String
10042
10043            AMF.OCL.Variables.OCL_Variable_Access
10044             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
10045               (AMF.Holders.Element (Value));
10046
10047         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
10048            --  NamedElement::nameExpression : StringExpression
10049
10050            AMF.OCL.Variables.OCL_Variable_Access
10051             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
10052               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
10053
10054         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Variable_Represented_Parameter_A_Variable then
10055            --  Variable::representedParameter : Parameter
10056
10057            AMF.OCL.Variables.OCL_Variable_Access
10058             (AMF.Internals.Helpers.To_Element (Self)).Set_Represented_Parameter
10059               (AMF.UML.Parameters.UML_Parameter_Access (AMF.Holders.Elements.Element (Value)));
10060
10061         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
10062            --  TypedElement::type : Type
10063
10064            AMF.OCL.Variables.OCL_Variable_Access
10065             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
10066               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
10067
10068         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
10069            --  NamedElement::visibility : VisibilityKind
10070
10071            AMF.OCL.Variables.OCL_Variable_Access
10072             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
10073               (AMF.UML.Holders.Element (Value));
10074
10075         else
10076            raise Program_Error;
10077         end if;
10078      end OCL_Variable_Set;
10079
10080      --------------------------
10081      -- OCL_Variable_Exp_Set --
10082      --------------------------
10083
10084      procedure OCL_Variable_Exp_Set is
10085      begin
10086         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
10087            --  NamedElement::name : String
10088
10089            AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
10090             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
10091               (AMF.Holders.Element (Value));
10092
10093         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
10094            --  NamedElement::nameExpression : StringExpression
10095
10096            AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
10097             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
10098               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
10099
10100         elsif Property = AMF.Internals.Tables.OCL_Metamodel.MP_OCL_Variable_Exp_Referred_Variable_A_Refering_Exp then
10101            --  VariableExp::referredVariable : Variable
10102
10103            AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
10104             (AMF.Internals.Helpers.To_Element (Self)).Set_Referred_Variable
10105               (AMF.OCL.Variables.OCL_Variable_Access (AMF.Holders.Elements.Element (Value)));
10106
10107         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Typed_Element_Type_A_Typed_Element then
10108            --  TypedElement::type : Type
10109
10110            AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
10111             (AMF.Internals.Helpers.To_Element (Self)).Set_Type
10112               (AMF.UML.Types.UML_Type_Access (AMF.Holders.Elements.Element (Value)));
10113
10114         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
10115            --  NamedElement::visibility : VisibilityKind
10116
10117            AMF.OCL.Variable_Exps.OCL_Variable_Exp_Access
10118             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
10119               (AMF.UML.Holders.Element (Value));
10120
10121         else
10122            raise Program_Error;
10123         end if;
10124      end OCL_Variable_Exp_Set;
10125
10126      -----------------------
10127      -- OCL_Void_Type_Set --
10128      -----------------------
10129
10130      procedure OCL_Void_Type_Set is
10131      begin
10132         if Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Abstract then
10133            --  Classifier::isAbstract : Boolean
10134
10135            AMF.OCL.Void_Types.OCL_Void_Type_Access
10136             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Abstract
10137               (League.Holders.Booleans.Element (Value));
10138
10139         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Is_Final_Specialization then
10140            --  Classifier::isFinalSpecialization : Boolean
10141
10142            AMF.OCL.Void_Types.OCL_Void_Type_Access
10143             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Final_Specialization
10144               (League.Holders.Booleans.Element (Value));
10145
10146         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Redefinable_Element_Is_Leaf then
10147            --  RedefinableElement::isLeaf : Boolean
10148
10149            AMF.OCL.Void_Types.OCL_Void_Type_Access
10150             (AMF.Internals.Helpers.To_Element (Self)).Set_Is_Leaf
10151               (League.Holders.Booleans.Element (Value));
10152
10153         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name then
10154            --  NamedElement::name : String
10155
10156            AMF.OCL.Void_Types.OCL_Void_Type_Access
10157             (AMF.Internals.Helpers.To_Element (Self)).Set_Name
10158               (AMF.Holders.Element (Value));
10159
10160         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Name_Expression_A_Named_Element then
10161            --  NamedElement::nameExpression : StringExpression
10162
10163            AMF.OCL.Void_Types.OCL_Void_Type_Access
10164             (AMF.Internals.Helpers.To_Element (Self)).Set_Name_Expression
10165               (AMF.UML.String_Expressions.UML_String_Expression_Access (AMF.Holders.Elements.Element (Value)));
10166
10167         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Owned_Template_Signature_Redefinable_Template_Signature_Classifier then
10168            --  Classifier::ownedTemplateSignature : RedefinableTemplateSignature
10169
10170            AMF.OCL.Void_Types.OCL_Void_Type_Access
10171             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
10172               (AMF.UML.Redefinable_Template_Signatures.UML_Redefinable_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
10173
10174         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Templateable_Element_Owned_Template_Signature_Template_Signature_Template then
10175            --  TemplateableElement::ownedTemplateSignature : TemplateSignature
10176
10177            AMF.OCL.Void_Types.OCL_Void_Type_Access
10178             (AMF.Internals.Helpers.To_Element (Self)).Set_Owned_Template_Signature
10179               (AMF.UML.Template_Signatures.UML_Template_Signature_Access (AMF.Holders.Elements.Element (Value)));
10180
10181         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Owning_Template_Parameter_Template_Parameter_Owned_Parametered_Element then
10182            --  ParameterableElement::owningTemplateParameter : TemplateParameter
10183
10184            AMF.OCL.Void_Types.OCL_Void_Type_Access
10185             (AMF.Internals.Helpers.To_Element (Self)).Set_Owning_Template_Parameter
10186               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
10187
10188         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Type_Package_Package_Owned_Type then
10189            --  Type::package : Package
10190
10191            AMF.OCL.Void_Types.OCL_Void_Type_Access
10192             (AMF.Internals.Helpers.To_Element (Self)).Set_Package
10193               (AMF.UML.Packages.UML_Package_Access (AMF.Holders.Elements.Element (Value)));
10194
10195         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Representation_A_Classifier then
10196            --  Classifier::representation : CollaborationUse
10197
10198            AMF.OCL.Void_Types.OCL_Void_Type_Access
10199             (AMF.Internals.Helpers.To_Element (Self)).Set_Representation
10200               (AMF.UML.Collaboration_Uses.UML_Collaboration_Use_Access (AMF.Holders.Elements.Element (Value)));
10201
10202         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Classifier_Template_Parameter_Classifier_Template_Parameter_Parametered_Element then
10203            --  Classifier::templateParameter : ClassifierTemplateParameter
10204
10205            AMF.OCL.Void_Types.OCL_Void_Type_Access
10206             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
10207               (AMF.UML.Classifier_Template_Parameters.UML_Classifier_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
10208
10209         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Parameterable_Element_Template_Parameter_Template_Parameter_Parametered_Element then
10210            --  ParameterableElement::templateParameter : TemplateParameter
10211
10212            AMF.OCL.Void_Types.OCL_Void_Type_Access
10213             (AMF.Internals.Helpers.To_Element (Self)).Set_Template_Parameter
10214               (AMF.UML.Template_Parameters.UML_Template_Parameter_Access (AMF.Holders.Elements.Element (Value)));
10215
10216         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Named_Element_Visibility then
10217            --  NamedElement::visibility : VisibilityKind
10218
10219            AMF.OCL.Void_Types.OCL_Void_Type_Access
10220             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
10221               (AMF.UML.Holders.Element (Value));
10222
10223         elsif Property = AMF.Internals.Tables.UML_Metamodel.MP_UML_Packageable_Element_Visibility then
10224            --  PackageableElement::visibility : VisibilityKind
10225
10226            AMF.OCL.Void_Types.OCL_Void_Type_Access
10227             (AMF.Internals.Helpers.To_Element (Self)).Set_Visibility
10228               (AMF.UML.Holders.Visibility_Kinds.Element (Value));
10229
10230         else
10231            raise Program_Error;
10232         end if;
10233      end OCL_Void_Type_Set;
10234   begin
10235      case OCL_Element_Table.Table (Self).Kind is
10236         when AMF.Internals.Tables.OCL_Types.E_None =>
10237            raise Program_Error;
10238
10239         when AMF.Internals.Tables.OCL_Types.E_OCL_Any_Type =>
10240            OCL_Any_Type_Set;
10241
10242         when AMF.Internals.Tables.OCL_Types.E_OCL_Association_Class_Call_Exp =>
10243            OCL_Association_Class_Call_Exp_Set;
10244
10245         when AMF.Internals.Tables.OCL_Types.E_OCL_Bag_Type =>
10246            OCL_Bag_Type_Set;
10247
10248         when AMF.Internals.Tables.OCL_Types.E_OCL_Boolean_Literal_Exp =>
10249            OCL_Boolean_Literal_Exp_Set;
10250
10251         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Item =>
10252            OCL_Collection_Item_Set;
10253
10254         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Literal_Exp =>
10255            OCL_Collection_Literal_Exp_Set;
10256
10257         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Range =>
10258            OCL_Collection_Range_Set;
10259
10260         when AMF.Internals.Tables.OCL_Types.E_OCL_Collection_Type =>
10261            OCL_Collection_Type_Set;
10262
10263         when AMF.Internals.Tables.OCL_Types.E_OCL_Enum_Literal_Exp =>
10264            OCL_Enum_Literal_Exp_Set;
10265
10266         when AMF.Internals.Tables.OCL_Types.E_OCL_Expression_In_Ocl =>
10267            OCL_Expression_In_Ocl_Set;
10268
10269         when AMF.Internals.Tables.OCL_Types.E_OCL_If_Exp =>
10270            OCL_If_Exp_Set;
10271
10272         when AMF.Internals.Tables.OCL_Types.E_OCL_Integer_Literal_Exp =>
10273            OCL_Integer_Literal_Exp_Set;
10274
10275         when AMF.Internals.Tables.OCL_Types.E_OCL_Invalid_Literal_Exp =>
10276            OCL_Invalid_Literal_Exp_Set;
10277
10278         when AMF.Internals.Tables.OCL_Types.E_OCL_Invalid_Type =>
10279            OCL_Invalid_Type_Set;
10280
10281         when AMF.Internals.Tables.OCL_Types.E_OCL_Iterate_Exp =>
10282            OCL_Iterate_Exp_Set;
10283
10284         when AMF.Internals.Tables.OCL_Types.E_OCL_Iterator_Exp =>
10285            OCL_Iterator_Exp_Set;
10286
10287         when AMF.Internals.Tables.OCL_Types.E_OCL_Let_Exp =>
10288            OCL_Let_Exp_Set;
10289
10290         when AMF.Internals.Tables.OCL_Types.E_OCL_Message_Exp =>
10291            OCL_Message_Exp_Set;
10292
10293         when AMF.Internals.Tables.OCL_Types.E_OCL_Message_Type =>
10294            OCL_Message_Type_Set;
10295
10296         when AMF.Internals.Tables.OCL_Types.E_OCL_Null_Literal_Exp =>
10297            OCL_Null_Literal_Exp_Set;
10298
10299         when AMF.Internals.Tables.OCL_Types.E_OCL_Operation_Call_Exp =>
10300            OCL_Operation_Call_Exp_Set;
10301
10302         when AMF.Internals.Tables.OCL_Types.E_OCL_Ordered_Set_Type =>
10303            OCL_Ordered_Set_Type_Set;
10304
10305         when AMF.Internals.Tables.OCL_Types.E_OCL_Property_Call_Exp =>
10306            OCL_Property_Call_Exp_Set;
10307
10308         when AMF.Internals.Tables.OCL_Types.E_OCL_Real_Literal_Exp =>
10309            OCL_Real_Literal_Exp_Set;
10310
10311         when AMF.Internals.Tables.OCL_Types.E_OCL_Sequence_Type =>
10312            OCL_Sequence_Type_Set;
10313
10314         when AMF.Internals.Tables.OCL_Types.E_OCL_Set_Type =>
10315            OCL_Set_Type_Set;
10316
10317         when AMF.Internals.Tables.OCL_Types.E_OCL_State_Exp =>
10318            OCL_State_Exp_Set;
10319
10320         when AMF.Internals.Tables.OCL_Types.E_OCL_String_Literal_Exp =>
10321            OCL_String_Literal_Exp_Set;
10322
10323         when AMF.Internals.Tables.OCL_Types.E_OCL_Template_Parameter_Type =>
10324            OCL_Template_Parameter_Type_Set;
10325
10326         when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Literal_Exp =>
10327            OCL_Tuple_Literal_Exp_Set;
10328
10329         when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Literal_Part =>
10330            OCL_Tuple_Literal_Part_Set;
10331
10332         when AMF.Internals.Tables.OCL_Types.E_OCL_Tuple_Type =>
10333            OCL_Tuple_Type_Set;
10334
10335         when AMF.Internals.Tables.OCL_Types.E_OCL_Type_Exp =>
10336            OCL_Type_Exp_Set;
10337
10338         when AMF.Internals.Tables.OCL_Types.E_OCL_Unlimited_Natural_Literal_Exp =>
10339            OCL_Unlimited_Natural_Literal_Exp_Set;
10340
10341         when AMF.Internals.Tables.OCL_Types.E_OCL_Unspecified_Value_Exp =>
10342            OCL_Unspecified_Value_Exp_Set;
10343
10344         when AMF.Internals.Tables.OCL_Types.E_OCL_Variable =>
10345            OCL_Variable_Set;
10346
10347         when AMF.Internals.Tables.OCL_Types.E_OCL_Variable_Exp =>
10348            OCL_Variable_Exp_Set;
10349
10350         when AMF.Internals.Tables.OCL_Types.E_OCL_Void_Type =>
10351            OCL_Void_Type_Set;
10352      end case;
10353   end Set;
10354
10355end AMF.Internals.Tables.OCL_Reflection;
10356