[220558] Convert to Metamodel action makes too many elements private
diff --git a/plugins/org.eclipse.uml2.uml/model/Infrastructure.emx b/plugins/org.eclipse.uml2.uml/model/Infrastructure.emx
index 28da3df..6de404d 100644
--- a/plugins/org.eclipse.uml2.uml/model/Infrastructure.emx
+++ b/plugins/org.eclipse.uml2.uml/model/Infrastructure.emx
@@ -4976,7 +4976,7 @@
               <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_racnkhTaEdqZu-3Jy1-uYg"/>

             </ownedAttribute>

           </packagedElement>

-          <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CAD9E0F01D0" name="VisibilityKind">

+          <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CAD9E0F01D0" name="VisibilityKind" visibility="private">

             <ownedComment xmi:id="_raJsoRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAD9E0F01D0">

               <body>VisibilityKind is an enumeration type that defines literals to determine the visibility of elements in a model.</body>

             </ownedComment>

@@ -6281,22 +6281,22 @@
             <styles xmi:type="umlnotation:UMLDiagramStyle" xmi:id="_reUa9BTaEdqZu-3Jy1-uYg"/>

           </contents>

         </eAnnotations>

-        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010A4007B" name="Integer">

+        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010A4007B" name="Integer" visibility="private">

           <ownedComment xmi:id="_rdk0FBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CA010A4007B">

             <body>An integer is a primitive type representing integer values.</body>

           </ownedComment>

         </packagedElement>

-        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010AC0090" name="Boolean">

+        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010AC0090" name="Boolean" visibility="private">

           <ownedComment xmi:id="_rd3vARTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CA010AC0090">

             <body>A Boolean type is used for logical expression, consisting of the predefined values true and false.</body>

           </ownedComment>

         </packagedElement>

-        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010B103C3" name="String">

+        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010B103C3" name="String" visibility="private">

           <ownedComment xmi:id="_reBgAxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CA010B103C3">

             <body>A string is a sequence of characters in some suitable character set used to display information about the model. Character sets may include non-Roman alphabets and characters.</body>

           </ownedComment>

         </packagedElement>

-        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3DE6A93C0003" name="UnlimitedNatural">

+        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3DE6A93C0003" name="UnlimitedNatural" visibility="private">

           <ownedComment xmi:id="_reBgDRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DE6A93C0003">

             <body>An unlimited natural is a primitive type representing unlimited natural values.</body>

           </ownedComment>

@@ -15223,7 +15223,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rr4V1RTaEdqZu-3Jy1-uYg"/>

           </ownedAttribute>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D4161A8F100CC" name="ParameterDirectionKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D4161A8F100CC" name="ParameterDirectionKind" visibility="private">

           <ownedComment xmi:id="_rpM1XRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D4161A8F100CC">

             <body>Parameter direction kind is an enumeration type that defines literals used to specify direction of parameters.</body>

           </ownedComment>

@@ -15248,7 +15248,7 @@
             </ownedComment>

           </ownedLiteral>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D41C2D6020188" name="VisibilityKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D41C2D6020188" name="VisibilityKind" visibility="private">

           <ownedComment xmi:id="_rpfwPBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D41C2D6020188">

             <body>VisibilityKind is an enumeration type that defines literals to determine the visibility of elements in a model.</body>

           </ownedComment>

diff --git a/plugins/org.eclipse.uml2.uml/model/Infrastructure.uml b/plugins/org.eclipse.uml2.uml/model/Infrastructure.uml
index 4ac67fc..33b4f9c 100644
--- a/plugins/org.eclipse.uml2.uml/model/Infrastructure.uml
+++ b/plugins/org.eclipse.uml2.uml/model/Infrastructure.uml
@@ -1116,7 +1116,7 @@
               <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_racnkhTaEdqZu-3Jy1-uYg"/>
             </ownedAttribute>
           </packagedElement>
-          <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CAD9E0F01D0" name="VisibilityKind">
+          <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CAD9E0F01D0" name="VisibilityKind" visibility="private">
             <ownedComment xmi:id="_raJsoRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAD9E0F01D0">
               <body>VisibilityKind is an enumeration type that defines literals to determine the visibility of elements in a model.</body>
             </ownedComment>
@@ -1713,22 +1713,22 @@
         </packagedElement>
       </packagedElement>
       <packagedElement xmi:type="uml:Package" xmi:id="_3ADC7B74022D3C9FFCC70354" name="PrimitiveTypes">
-        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010A4007B" name="Integer">
+        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010A4007B" name="Integer" visibility="private">
           <ownedComment xmi:id="_rdk0FBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CA010A4007B">
             <body>An integer is a primitive type representing integer values.</body>
           </ownedComment>
         </packagedElement>
-        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010AC0090" name="Boolean">
+        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010AC0090" name="Boolean" visibility="private">
           <ownedComment xmi:id="_rd3vARTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CA010AC0090">
             <body>A Boolean type is used for logical expression, consisting of the predefined values true and false.</body>
           </ownedComment>
         </packagedElement>
-        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010B103C3" name="String">
+        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3CA010B103C3" name="String" visibility="private">
           <ownedComment xmi:id="_reBgAxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CA010B103C3">
             <body>A string is a sequence of characters in some suitable character set used to display information about the model. Character sets may include non-Roman alphabets and characters.</body>
           </ownedComment>
         </packagedElement>
-        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3DE6A93C0003" name="UnlimitedNatural">
+        <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_3ADC7B74022D3DE6A93C0003" name="UnlimitedNatural" visibility="private">
           <ownedComment xmi:id="_reBgDRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DE6A93C0003">
             <body>An unlimited natural is a primitive type representing unlimited natural values.</body>
           </ownedComment>
@@ -4074,7 +4074,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rr4V1RTaEdqZu-3Jy1-uYg"/>
           </ownedAttribute>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D4161A8F100CC" name="ParameterDirectionKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D4161A8F100CC" name="ParameterDirectionKind" visibility="private">
           <ownedComment xmi:id="_rpM1XRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D4161A8F100CC">
             <body>Parameter direction kind is an enumeration type that defines literals used to specify direction of parameters.</body>
           </ownedComment>
@@ -4099,7 +4099,7 @@
             </ownedComment>
           </ownedLiteral>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D41C2D6020188" name="VisibilityKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D41C2D6020188" name="VisibilityKind" visibility="private">
           <ownedComment xmi:id="_rpfwPBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D41C2D6020188">
             <body>VisibilityKind is an enumeration type that defines literals to determine the visibility of elements in a model.</body>
           </ownedComment>
diff --git a/plugins/org.eclipse.uml2.uml/model/Superstructure.emx b/plugins/org.eclipse.uml2.uml/model/Superstructure.emx
index 0154d86..5f60a0f 100644
--- a/plugins/org.eclipse.uml2.uml/model/Superstructure.emx
+++ b/plugins/org.eclipse.uml2.uml/model/Superstructure.emx
@@ -18966,7 +18966,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_r_P9whTaEdqZu-3Jy1-uYg"/>

           </ownedAttribute>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B72DC630100" name="ObjectNodeOrderingKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B72DC630100" name="ObjectNodeOrderingKind" visibility="private">

           <ownedComment xmi:id="_r7OZZBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B72DC630100">

             <body>ObjectNodeOrderingKind is an enumeration indicating queuing order within a node.</body>

           </ownedComment>

@@ -18991,7 +18991,7 @@
             </ownedComment>

           </ownedLiteral>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3C7EB0F6009B" name="ParameterEffectKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3C7EB0F6009B" name="ParameterEffectKind" visibility="private">

           <ownedComment xmi:id="_r67eeRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3C7EB0F6009B">

             <body>The datatype ParameterEffectKind is an enumeration that indicates the effect of a behavior on values passed in or out of its parameters.</body>

           </ownedComment>

@@ -21826,7 +21826,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sCYKUhTaEdqZu-3Jy1-uYg" value="1"/>

           </ownedAttribute>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3DF29C100119" name="ExpansionKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3DF29C100119" name="ExpansionKind" visibility="private">

           <ownedComment xmi:id="_sByUeBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DF29C100119">

             <body>ExpansionKind is an enumeration type used to specify how multiple executions of an expansion region interact.</body>

           </ownedComment>

@@ -36693,7 +36693,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sXPnGhTaEdqZu-3Jy1-uYg"/>

           </ownedAttribute>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3DFFC6AB0253" name="AggregationKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3DFFC6AB0253" name="AggregationKind" visibility="private">

           <ownedComment xmi:id="_sQrsBBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DFFC6AB0253">

             <body>AggregationKind is an enumeration type that specifies the literals for defining the kind of aggregation of a property.</body>

           </ownedComment>

@@ -36713,7 +36713,7 @@
             </ownedComment>

           </ownedLiteral>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CEE419F03B0" name="ParameterDirectionKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CEE419F03B0" name="ParameterDirectionKind" visibility="private">

           <ownedComment xmi:id="_sQPAHxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CEE419F03B0">

             <body>Parameter direction kind is an enumeration type that defines literals used to specify direction of parameters.</body>

           </ownedComment>

@@ -36734,7 +36734,7 @@
             </ownedComment>

           </ownedLiteral>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CAAF25600F8" name="VisibilityKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CAAF25600F8" name="VisibilityKind" visibility="private">

           <ownedComment xmi:id="_sKuN-BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAAF25600F8">

             <body>VisibilityKind is an enumeration type that defines literals to determine the visibility of elements in a model.</body>

           </ownedComment>

@@ -40830,7 +40830,7 @@
             <body>An operation may invoke both the execution of method behaviors as well as other behavioral responses.</body>

           </ownedComment>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D33F0EC2002BC" name="CallConcurrencyKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D33F0EC2002BC" name="CallConcurrencyKind" visibility="private">

           <ownedComment xmi:id="_Ny3VMOEeEdqI1ohUEQYFdg" annotatedElement="_3ADC7B74022D33F0EC2002BC">

             <body>CallConcurrencyKind is an enumeration type.</body>

           </ownedComment>

@@ -44706,7 +44706,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sbRLcxTaEdqZu-3Jy1-uYg"/>

           </ownedAttribute>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3E025A1801EA" name="ConnectorKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3E025A1801EA" name="ConnectorKind" visibility="private">

           <ownedComment xmi:id="_Kn6cIOEeEdqI1ohUEQYFdg" annotatedElement="_3ADC7B74022D3E025A1801EA">

             <body>ConnectorKind is an enumeration type.</body>

           </ownedComment>

@@ -53368,7 +53368,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-uOEIWd1EdqCCpdUvbQY5w" value="1"/>

           </ownedAttribute>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3D05BBDA038F" name="MessageKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3D05BBDA038F" name="MessageKind" visibility="private">

           <ownedComment xmi:id="_sEwv9BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D05BBDA038F">

             <body>This is an enumerated type that identifies the type of message.</body>

           </ownedComment>

@@ -53393,7 +53393,7 @@
             </ownedComment>

           </ownedLiteral>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3D621AD300F4" name="MessageSort">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3D621AD300F4" name="MessageSort" visibility="private">

           <ownedComment xmi:id="_sE6g8BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D621AD300F4">

             <body>This is an enumerated type that identifies the type of communication action that was used to generate the message.</body>

           </ownedComment>

@@ -55245,7 +55245,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sJYxORTaEdqZu-3Jy1-uYg"/>

           </ownedAttribute>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B7A272600B4" name="InteractionOperatorKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B7A272600B4" name="InteractionOperatorKind" visibility="private">

           <ownedComment xmi:id="_sH48gxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B7A272600B4">

             <body>InteractionOperatorKind is an enumeration designating the different kinds of operators of combined fragments. The interaction operand defines the type of operator of a combined fragment.</body>

           </ownedComment>

@@ -58587,7 +58587,7 @@
             </specification>

           </ownedRule>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B94B827009C" name="PseudostateKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B94B827009C" name="PseudostateKind" visibility="private">

           <ownedComment xmi:id="_sgVRuBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B94B827009C">

             <body>PseudostateKind is an enumeration type.</body>

           </ownedComment>

@@ -58643,7 +58643,7 @@
             </ownedComment>

           </ownedLiteral>

         </packagedElement>

-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3E5B99180230" name="TransitionKind">

+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3E5B99180230" name="TransitionKind" visibility="private">

           <ownedComment xmi:id="_sg7HghTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E5B99180230">

             <body>TransitionKind is an enumeration type.</body>

           </ownedComment>

diff --git a/plugins/org.eclipse.uml2.uml/model/Superstructure.uml b/plugins/org.eclipse.uml2.uml/model/Superstructure.uml
index a8f83e0..0f04504 100644
--- a/plugins/org.eclipse.uml2.uml/model/Superstructure.uml
+++ b/plugins/org.eclipse.uml2.uml/model/Superstructure.uml
@@ -3826,7 +3826,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_r_P9whTaEdqZu-3Jy1-uYg"/>
           </ownedAttribute>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B72DC630100" name="ObjectNodeOrderingKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B72DC630100" name="ObjectNodeOrderingKind" visibility="private">
           <ownedComment xmi:id="_r7OZZBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B72DC630100">
             <body>ObjectNodeOrderingKind is an enumeration indicating queuing order within a node.</body>
           </ownedComment>
@@ -3851,7 +3851,7 @@
             </ownedComment>
           </ownedLiteral>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3C7EB0F6009B" name="ParameterEffectKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3C7EB0F6009B" name="ParameterEffectKind" visibility="private">
           <ownedComment xmi:id="_r67eeRTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3C7EB0F6009B">
             <body>The datatype ParameterEffectKind is an enumeration that indicates the effect of a behavior on values passed in or out of its parameters.</body>
           </ownedComment>
@@ -4489,7 +4489,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sCYKUhTaEdqZu-3Jy1-uYg" value="1"/>
           </ownedAttribute>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3DF29C100119" name="ExpansionKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3DF29C100119" name="ExpansionKind" visibility="private">
           <ownedComment xmi:id="_sByUeBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DF29C100119">
             <body>ExpansionKind is an enumeration type used to specify how multiple executions of an expansion region interact.</body>
           </ownedComment>
@@ -8332,7 +8332,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sXPnGhTaEdqZu-3Jy1-uYg"/>
           </ownedAttribute>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3DFFC6AB0253" name="AggregationKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3DFFC6AB0253" name="AggregationKind" visibility="private">
           <ownedComment xmi:id="_sQrsBBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3DFFC6AB0253">
             <body>AggregationKind is an enumeration type that specifies the literals for defining the kind of aggregation of a property.</body>
           </ownedComment>
@@ -8352,7 +8352,7 @@
             </ownedComment>
           </ownedLiteral>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CEE419F03B0" name="ParameterDirectionKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CEE419F03B0" name="ParameterDirectionKind" visibility="private">
           <ownedComment xmi:id="_sQPAHxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CEE419F03B0">
             <body>Parameter direction kind is an enumeration type that defines literals used to specify direction of parameters.</body>
           </ownedComment>
@@ -8373,7 +8373,7 @@
             </ownedComment>
           </ownedLiteral>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CAAF25600F8" name="VisibilityKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3CAAF25600F8" name="VisibilityKind" visibility="private">
           <ownedComment xmi:id="_sKuN-BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3CAAF25600F8">
             <body>VisibilityKind is an enumeration type that defines literals to determine the visibility of elements in a model.</body>
           </ownedComment>
@@ -9315,7 +9315,7 @@
             <body>An operation may invoke both the execution of method behaviors as well as other behavioral responses.</body>
           </ownedComment>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D33F0EC2002BC" name="CallConcurrencyKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D33F0EC2002BC" name="CallConcurrencyKind" visibility="private">
           <ownedComment xmi:id="_Ny3VMOEeEdqI1ohUEQYFdg" annotatedElement="_3ADC7B74022D33F0EC2002BC">
             <body>CallConcurrencyKind is an enumeration type.</body>
           </ownedComment>
@@ -10235,7 +10235,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sbRLcxTaEdqZu-3Jy1-uYg"/>
           </ownedAttribute>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3E025A1801EA" name="ConnectorKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3E025A1801EA" name="ConnectorKind" visibility="private">
           <ownedComment xmi:id="_Kn6cIOEeEdqI1ohUEQYFdg" annotatedElement="_3ADC7B74022D3E025A1801EA">
             <body>ConnectorKind is an enumeration type.</body>
           </ownedComment>
@@ -11732,7 +11732,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-uOEIWd1EdqCCpdUvbQY5w" value="1"/>
           </ownedAttribute>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3D05BBDA038F" name="MessageKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3D05BBDA038F" name="MessageKind" visibility="private">
           <ownedComment xmi:id="_sEwv9BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D05BBDA038F">
             <body>This is an enumerated type that identifies the type of message.</body>
           </ownedComment>
@@ -11757,7 +11757,7 @@
             </ownedComment>
           </ownedLiteral>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3D621AD300F4" name="MessageSort">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3D621AD300F4" name="MessageSort" visibility="private">
           <ownedComment xmi:id="_sE6g8BTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3D621AD300F4">
             <body>This is an enumerated type that identifies the type of communication action that was used to generate the message.</body>
           </ownedComment>
@@ -12363,7 +12363,7 @@
             <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_sJYxORTaEdqZu-3Jy1-uYg"/>
           </ownedAttribute>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B7A272600B4" name="InteractionOperatorKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B7A272600B4" name="InteractionOperatorKind" visibility="private">
           <ownedComment xmi:id="_sH48gxTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B7A272600B4">
             <body>InteractionOperatorKind is an enumeration designating the different kinds of operators of combined fragments. The interaction operand defines the type of operator of a combined fragment.</body>
           </ownedComment>
@@ -13493,7 +13493,7 @@
             </specification>
           </ownedRule>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B94B827009C" name="PseudostateKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3B94B827009C" name="PseudostateKind" visibility="private">
           <ownedComment xmi:id="_sgVRuBTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3B94B827009C">
             <body>PseudostateKind is an enumeration type.</body>
           </ownedComment>
@@ -13549,7 +13549,7 @@
             </ownedComment>
           </ownedLiteral>
         </packagedElement>
-        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3E5B99180230" name="TransitionKind">
+        <packagedElement xmi:type="uml:Enumeration" xmi:id="_3ADC7B74022D3E5B99180230" name="TransitionKind" visibility="private">
           <ownedComment xmi:id="_sg7HghTaEdqZu-3Jy1-uYg" annotatedElement="_3ADC7B74022D3E5B99180230">
             <body>TransitionKind is an enumeration type.</body>
           </ownedComment>
diff --git a/plugins/org.eclipse.uml2.uml/model/UML.merged.uml b/plugins/org.eclipse.uml2.uml/model/UML.merged.uml
index eff027c..e61ca51 100644
--- a/plugins/org.eclipse.uml2.uml/model/UML.merged.uml
+++ b/plugins/org.eclipse.uml2.uml/model/UML.merged.uml
@@ -4,22 +4,22 @@
     <packageImport xmi:id="__as3cGvaEdq4DLWZOhbdEA">
       <importedPackage xmi:type="uml:Model" href="Ecore.uml#_SeWiQMX_EduPJbEsMYXjUQ"/>
     </packageImport>
-    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_XqvEIGvsEdqG6fBIPwe-mw" name="Integer">
+    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_XqvEIGvsEdqG6fBIPwe-mw" name="Integer" visibility="private">
       <ownedComment xmi:id="_QcIAKscBEdyrC427ygySag" annotatedElement="_XqvEIGvsEdqG6fBIPwe-mw">
         <body>An integer is a primitive type representing integer values.</body>
       </ownedComment>
     </packagedElement>
-    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_UdivYGvsEdqG6fBIPwe-mw" name="Boolean">
+    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_UdivYGvsEdqG6fBIPwe-mw" name="Boolean" visibility="private">
       <ownedComment xmi:id="_QcIAK8cBEdyrC427ygySag" annotatedElement="_UdivYGvsEdqG6fBIPwe-mw">
         <body>A Boolean type is used for logical expression, consisting of the predefined values true and false.</body>
       </ownedComment>
     </packagedElement>
-    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_aAyVgGvsEdqG6fBIPwe-mw" name="String">
+    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_aAyVgGvsEdqG6fBIPwe-mw" name="String" visibility="private">
       <ownedComment xmi:id="_QcIALMcBEdyrC427ygySag" annotatedElement="_aAyVgGvsEdqG6fBIPwe-mw">
         <body>A string is a sequence of characters in some suitable character set used to display information about the model. Character sets may include non-Roman alphabets and characters.</body>
       </ownedComment>
     </packagedElement>
-    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_dRZxsGvsEdqG6fBIPwe-mw" name="UnlimitedNatural">
+    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_dRZxsGvsEdqG6fBIPwe-mw" name="UnlimitedNatural" visibility="private">
       <ownedComment xmi:id="_QcIALccBEdyrC427ygySag" annotatedElement="_dRZxsGvsEdqG6fBIPwe-mw">
         <body>An unlimited natural is a primitive type representing unlimited natural values.</body>
       </ownedComment>
@@ -992,7 +992,7 @@
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Qdw-8McBEdyrC427ygySag"/>
       </ownedAttribute>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_B3q9cGwNEdq7X4sGURiZYA" name="AggregationKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_B3q9cGwNEdq7X4sGURiZYA" name="AggregationKind" visibility="private">
       <ownedComment xmi:id="_Qdw-8ccBEdyrC427ygySag" annotatedElement="_B3q9cGwNEdq7X4sGURiZYA">
         <body>AggregationKind is an enumeration type that specifies the literals for defining the kind of aggregation of a property.</body>
       </ownedComment>
@@ -1012,7 +1012,7 @@
         </ownedComment>
       </ownedLiteral>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_Qb-2IscBEdyrC427ygySag" name="ParameterDirectionKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_Qb-2IscBEdyrC427ygySag" name="ParameterDirectionKind" visibility="private">
       <ownedComment xmi:id="_Qb-2I8cBEdyrC427ygySag" annotatedElement="_Qb-2IscBEdyrC427ygySag">
         <body>Parameter direction kind is an enumeration type that defines literals used to specify direction of parameters.</body>
       </ownedComment>
@@ -1037,7 +1037,7 @@
         </ownedComment>
       </ownedLiteral>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_AyM_oGwMEdq7X4sGURiZYA" name="VisibilityKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_AyM_oGwMEdq7X4sGURiZYA" name="VisibilityKind" visibility="private">
       <ownedComment xmi:id="_Qb-2LMcBEdyrC427ygySag" annotatedElement="_AyM_oGwMEdq7X4sGURiZYA">
         <body>VisibilityKind is an enumeration type that defines literals to determine the visibility of elements in a model.</body>
       </ownedComment>
@@ -3391,7 +3391,7 @@
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_QfQNfMcBEdyrC427ygySag" value="1"/>
       </ownedAttribute>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_Y_jskGvtEdqG6fBIPwe-mw" name="MessageKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_Y_jskGvtEdqG6fBIPwe-mw" name="MessageKind" visibility="private">
       <ownedComment xmi:id="_QfQNfccBEdyrC427ygySag" annotatedElement="_Y_jskGvtEdqG6fBIPwe-mw">
         <body>This is an enumerated type that identifies the type of message.</body>
       </ownedComment>
@@ -3416,7 +3416,7 @@
         </ownedComment>
       </ownedLiteral>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QfQNhscBEdyrC427ygySag" name="MessageSort">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QfQNhscBEdyrC427ygySag" name="MessageSort" visibility="private">
       <ownedComment xmi:id="_QfQNh8cBEdyrC427ygySag" annotatedElement="_QfQNhscBEdyrC427ygySag">
         <body>This is an enumerated type that identifies the type of communication action that was used to generate the message.</body>
       </ownedComment>
@@ -4035,7 +4035,7 @@
       </ownedComment>
       <generalization xmi:id="_Qf_zj8cBEdyrC427ygySag" general="_jKxnwGwLEdq7X4sGURiZYA"/>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_Qf_zkccBEdyrC427ygySag" name="CallConcurrencyKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_Qf_zkccBEdyrC427ygySag" name="CallConcurrencyKind" visibility="private">
       <ownedComment xmi:id="_Qf_zkscBEdyrC427ygySag" annotatedElement="_Qf_zkccBEdyrC427ygySag">
         <body>CallConcurrencyKind is an enumeration type.</body>
       </ownedComment>
@@ -4534,7 +4534,7 @@
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_QgTVwccBEdyrC427ygySag"/>
       </ownedAttribute>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QgcfUMcBEdyrC427ygySag" name="ConnectorKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QgcfUMcBEdyrC427ygySag" name="ConnectorKind" visibility="private">
       <ownedComment xmi:id="_QgcfUccBEdyrC427ygySag" annotatedElement="_QgcfUMcBEdyrC427ygySag">
         <body>ConnectorKind is an enumeration type.</body>
       </ownedComment>
@@ -5493,7 +5493,7 @@
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_QgmRCscBEdyrC427ygySag"/>
       </ownedAttribute>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QgmRC8cBEdyrC427ygySag" name="InteractionOperatorKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QgmRC8cBEdyrC427ygySag" name="InteractionOperatorKind" visibility="private">
       <ownedComment xmi:id="_QgmRDMcBEdyrC427ygySag" annotatedElement="_QgmRC8cBEdyrC427ygySag">
         <body>InteractionOperatorKind is an enumeration designating the different kinds of operators of combined fragments. The interaction operand defines the type of operator of a combined fragment.</body>
       </ownedComment>
@@ -7315,7 +7315,7 @@
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_QhC8k8cBEdyrC427ygySag" value="1"/>
       </ownedAttribute>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QhV3cscBEdyrC427ygySag" name="PseudostateKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QhV3cscBEdyrC427ygySag" name="PseudostateKind" visibility="private">
       <ownedComment xmi:id="_QhV3c8cBEdyrC427ygySag" annotatedElement="_QhV3cscBEdyrC427ygySag">
         <body>PseudostateKind is an enumeration type.</body>
       </ownedComment>
@@ -7371,7 +7371,7 @@
         </ownedComment>
       </ownedLiteral>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QhV3iMcBEdyrC427ygySag" name="TransitionKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QhV3iMcBEdyrC427ygySag" name="TransitionKind" visibility="private">
       <ownedComment xmi:id="_QhV3iccBEdyrC427ygySag" annotatedElement="_QhV3iMcBEdyrC427ygySag">
         <body>TransitionKind is an enumeration type.</body>
       </ownedComment>
@@ -11214,7 +11214,7 @@
         <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_QiPPgMcBEdyrC427ygySag"/>
       </ownedAttribute>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QiPPg8cBEdyrC427ygySag" name="ObjectNodeOrderingKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QiPPg8cBEdyrC427ygySag" name="ObjectNodeOrderingKind" visibility="private">
       <ownedComment xmi:id="_QiPPhMcBEdyrC427ygySag" annotatedElement="_QiPPg8cBEdyrC427ygySag">
         <body>ObjectNodeOrderingKind is an enumeration indicating queuing order within a node.</body>
       </ownedComment>
@@ -11239,7 +11239,7 @@
         </ownedComment>
       </ownedLiteral>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QiPPjccBEdyrC427ygySag" name="ParameterEffectKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QiPPjccBEdyrC427ygySag" name="ParameterEffectKind" visibility="private">
       <ownedComment xmi:id="_QiPPjscBEdyrC427ygySag" annotatedElement="_QiPPjccBEdyrC427ygySag">
         <body>The datatype ParameterEffectKind is an enumeration that indicates the effect of a behavior on values passed in or out of its parameters.</body>
       </ownedComment>
@@ -11952,7 +11952,7 @@
         <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_QiiKPscBEdyrC427ygySag" value="1"/>
       </ownedAttribute>
     </packagedElement>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QiiKP8cBEdyrC427ygySag" name="ExpansionKind">
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_QiiKP8cBEdyrC427ygySag" name="ExpansionKind" visibility="private">
       <ownedComment xmi:id="_QiiKQMcBEdyrC427ygySag" annotatedElement="_QiiKP8cBEdyrC427ygySag">
         <body>ExpansionKind is an enumeration type used to specify how multiple executions of an expansion region interact.</body>
       </ownedComment>
diff --git a/plugins/org.eclipse.uml2.uml/model/UML.uml b/plugins/org.eclipse.uml2.uml/model/UML.uml
index 2728178..e247fb0 100644
--- a/plugins/org.eclipse.uml2.uml/model/UML.uml
+++ b/plugins/org.eclipse.uml2.uml/model/UML.uml
@@ -1813,13 +1813,13 @@
         </ownedParameter>
       </ownedOperation>
     </packagedElement>
-    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_UdivYGvsEdqG6fBIPwe-mw" name="Boolean"/>
-    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_XqvEIGvsEdqG6fBIPwe-mw" name="Integer"/>
-    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_aAyVgGvsEdqG6fBIPwe-mw" name="String"/>
-    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_dRZxsGvsEdqG6fBIPwe-mw" name="UnlimitedNatural"/>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_B3q9cGwNEdq7X4sGURiZYA" name="AggregationKind"/>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_Y_jskGvtEdqG6fBIPwe-mw" name="MessageKind"/>
-    <packagedElement xmi:type="uml:Enumeration" xmi:id="_AyM_oGwMEdq7X4sGURiZYA" name="VisibilityKind"/>
+    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_UdivYGvsEdqG6fBIPwe-mw" name="Boolean" visibility="private"/>
+    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_XqvEIGvsEdqG6fBIPwe-mw" name="Integer" visibility="private"/>
+    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_aAyVgGvsEdqG6fBIPwe-mw" name="String" visibility="private"/>
+    <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_dRZxsGvsEdqG6fBIPwe-mw" name="UnlimitedNatural" visibility="private"/>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_B3q9cGwNEdq7X4sGURiZYA" name="AggregationKind" visibility="private"/>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_Y_jskGvtEdqG6fBIPwe-mw" name="MessageKind" visibility="private"/>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_AyM_oGwMEdq7X4sGURiZYA" name="VisibilityKind" visibility="private"/>
     <packagedElement xmi:type="uml:Class" xmi:id="_-Ixo8H4XEdq7cMP_l1l5Gg" name="Duration">
       <ownedOperation xmi:id="_I3a88H4YEdq7cMP_l1l5Gg" name="stringValue" visibility="protected" isQuery="true">
         <ownedParameter xmi:id="_I3a88X4YEdq7cMP_l1l5Gg" type="_aAyVgGvsEdqG6fBIPwe-mw" direction="return"/>