Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorptessier2013-12-09 12:54:58 +0000
committerptessier2013-12-09 12:54:58 +0000
commitfd81cd4859586c05ed55a10a01dd263ff0008525 (patch)
treeea191ca10d4c610215b3df21f5fd4916555d49ac /plugins/infra/org.eclipse.papyrus.infra.newchild
parent10b262a6d543fed1b9e5f0f4501dd375f9a0a6d9 (diff)
downloadorg.eclipse.papyrus-fd81cd4859586c05ed55a10a01dd263ff0008525.tar.gz
org.eclipse.papyrus-fd81cd4859586c05ed55a10a01dd263ff0008525.tar.xz
org.eclipse.papyrus-fd81cd4859586c05ed55a10a01dd263ff0008525.zip
351803: [New Child] Papyrus shall provide a customizable "New Child"
menu https://bugs.eclipse.org/bugs/show_bug.cgi?id=351803
Diffstat (limited to 'plugins/infra/org.eclipse.papyrus.infra.newchild')
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/.classpath7
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/.project28
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/META-INF/MANIFEST.MF28
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/about.html28
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/build.properties11
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/plugin.properties12
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/plugin.xml20
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.di17
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.notation181
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.uml57
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/resource/NewChildDevelopperDoc.docxbin0 -> 118177 bytes
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/resource/elementCreationMenuModel.ecore22
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/resource/elementCreationMenuModel.genmodel23
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.di50
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.notation1103
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.uml111
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/schema/org.eclipse.papyrus.infra.newchild.exsd107
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/CreationMenu.java104
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/ElementCreationMenuModelFactory.java51
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/ElementCreationMenuModelPackage.java433
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/Folder.java40
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/Menu.java77
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/CreationMenuImpl.java270
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/ElementCreationMenuModelFactoryImpl.java106
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/ElementCreationMenuModelPackageImpl.java285
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/FolderImpl.java150
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/MenuImpl.java217
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelAdapterFactory.java156
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelResourceFactoryImpl.java41
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelResourceImpl.java28
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelSwitch.java154
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelXMLProcessor.java50
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/Activator.java63
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuFactory.java311
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuListener.java61
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuRegistry.java123
37 files changed, 4532 insertions, 0 deletions
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/.classpath b/plugins/infra/org.eclipse.papyrus.infra.newchild/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/.project b/plugins/infra/org.eclipse.papyrus.infra.newchild/.project
new file mode 100644
index 00000000000..d8cf9d53eac
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.infra.newchild</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/.settings/org.eclipse.jdt.core.prefs b/plugins/infra/org.eclipse.papyrus.infra.newchild/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/META-INF/MANIFEST.MF b/plugins/infra/org.eclipse.papyrus.infra.newchild/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..d260bcc31ba
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/META-INF/MANIFEST.MF
@@ -0,0 +1,28 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.infra.newchild;singleton:=true
+Bundle-Version: 0.10.0.qualifier
+Bundle-ClassPath: .
+Bundle-Activator: org.eclipse.papyrus.infra.newchild.Activator
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.emf;bundle-version="2.6.0",
+ org.eclipse.emf.ecore,
+ org.eclipse.osgi,
+ org.eclipse.emf.ecore.xmi,
+ org.eclipse.papyrus.infra.queries.core.configuration;visibility:=reexport,
+ org.eclipse.papyrus.infra.extendedtypes;visibility:=reexport,
+ org.eclipse.papyrus.infra.services.resourceloading;bundle-version="1.0.0",
+ org.eclipse.emf.transaction,
+ org.eclipse.gmf.runtime.emf.type.core,
+ org.eclipse.papyrus.infra.services.edit,
+ org.eclipse.papyrus.infra.gmfdiag.commands
+Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Export-Package: ElementCreationMenuModel,
+ ElementCreationMenuModel.impl,
+ ElementCreationMenuModel.util,
+ org.eclipse.papyrus.infra.newchild
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/about.html b/plugins/infra/org.eclipse.papyrus.infra.newchild/about.html
new file mode 100644
index 00000000000..82d49bf5f81
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+
+<p>June 5, 2007</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/build.properties b/plugins/infra/org.eclipse.papyrus.infra.newchild/build.properties
new file mode 100644
index 00000000000..4a099f04813
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/build.properties
@@ -0,0 +1,11 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ plugin.properties,\
+ about.html,\
+ schema/
+src.includes = about.html,\
+ schema/
+jre.compilation.profile = J2SE-1.5
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/plugin.properties b/plugins/infra/org.eclipse.papyrus.infra.newchild/plugin.properties
new file mode 100644
index 00000000000..cd4b48f6a7c
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/plugin.properties
@@ -0,0 +1,12 @@
+#################################################################################
+# Copyright (c) 2013 CEA LIST
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Patrick Tessier (CEA LIST) - Initial API and implementation
+##################################################################################
+pluginName=Papyrus infra new child (Incubation)
+providerName=Eclipse Modeling Project
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/plugin.xml b/plugins/infra/org.eclipse.papyrus.infra.newchild/plugin.xml
new file mode 100644
index 00000000000..390a9b37228
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/plugin.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension-point id="org.eclipse.papyrus.infra.newchild" name="ElementCreationMenuModel" schema="schema/org.eclipse.papyrus.infra.newchild.exsd"/>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated elementCreationMenuModel -->
+ <package
+ uri="http://ElementCreationMenuModel"
+ class="ElementCreationMenuModel.ElementCreationMenuModelPackage"
+ genModel="resource/elementCreationMenuModel.genmodel"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.extension_parser">
+ <!-- @generated elementCreationMenuModel -->
+ <parser
+ type="elementcreationmenumodel"
+ class="ElementCreationMenuModel.util.ElementCreationMenuModelResourceFactoryImpl"/>
+ </extension>
+</plugin>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.di b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.di
new file mode 100644
index 00000000000..5b79c6a5609
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.di
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<di:SashWindowsMngr xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:di="http://www.eclipse.org/papyrus/0.7.0/sashdi">
+ <pageList>
+ <availablePage>
+ <emfPageIdentifier href="ElementCreationMenuModel.notation#_VJWf0FXPEeOhVe6k7yzS3A"/>
+ </availablePage>
+ </pageList>
+ <sashModel currentSelection="//@sashModel/@windows.0/@children.0">
+ <windows>
+ <children xsi:type="di:TabFolder">
+ <children>
+ <emfPageIdentifier href="ElementCreationMenuModel.notation#_VJWf0FXPEeOhVe6k7yzS3A"/>
+ </children>
+ </children>
+ </windows>
+ </sashModel>
+</di:SashWindowsMngr>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.notation b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.notation
new file mode 100644
index 00000000000..aafcf18df9f
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.notation
@@ -0,0 +1,181 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML" xmi:id="_VJWf0FXPEeOhVe6k7yzS3A" type="PapyrusUMLClassDiagram" name="NewDiagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_mxFLgVXPEeOhVe6k7yzS3A" type="2008" fontName="Segoe UI" gradient="8905185, 16777215, 0" lineColor="255">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_mxFLg1XPEeOhVe6k7yzS3A" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_mxFLhFXPEeOhVe6k7yzS3A" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_mxFLhVXPEeOhVe6k7yzS3A" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_mxFLhlXPEeOhVe6k7yzS3A" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_mxFLh1XPEeOhVe6k7yzS3A" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_mxFLiFXPEeOhVe6k7yzS3A" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_mxFLiVXPEeOhVe6k7yzS3A" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_mxFLilXPEeOhVe6k7yzS3A" type="7017">
+ <children xmi:type="notation:Shape" xmi:id="_bHiDkVXREeOhVe6k7yzS3A" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="ElementCreationMenuModel.uml#_bHiDkFXREeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bHiDklXREeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__7ilcFgXEeOKQOyOw2l5lw" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="ElementCreationMenuModel.uml#_8Pa5AFgXEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__7ilcVgXEeOKQOyOw2l5lw" x="74" y="24"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_I8zKkFgYEeOKQOyOw2l5lw" type="3012" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Q36nAFgYEeOKQOyOw2l5lw" source="CustomAppearance_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Q36nAVgYEeOKQOyOw2l5lw" key="CustomAppearance_MaskValue" value="126"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="ElementCreationMenuModel.uml#_G2lsAFgYEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_I8zKkVgYEeOKQOyOw2l5lw" x="154" y="28"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_mxFLi1XPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_mxFLjFXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_mxFLjVXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mxFLjlXPEeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_mxFLj1XPEeOhVe6k7yzS3A" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_mxFLkFXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_mxFLkVXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_mxFLklXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mxFLk1XPEeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_mxFLlFXPEeOhVe6k7yzS3A" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_mxFLlVXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_mxFLllXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_mxFLl1XPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mxFLmFXPEeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_mxO8gFXPEeOhVe6k7yzS3A" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_mxO8gVXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mxO8glXPEeOhVe6k7yzS3A"/>
+ </children>
+ <element xmi:type="uml:Class" href="ElementCreationMenuModel.uml#_mxFLgFXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mxFLglXPEeOhVe6k7yzS3A" x="435" y="205"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_z-H0kVXPEeOhVe6k7yzS3A" type="2008" fontName="Segoe UI" gradient="8905185, 16777215, 0" lineColor="255">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_z-H0k1XPEeOhVe6k7yzS3A" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_z-H0lFXPEeOhVe6k7yzS3A" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_z-H0lVXPEeOhVe6k7yzS3A" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_z-H0llXPEeOhVe6k7yzS3A" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_z-H0l1XPEeOhVe6k7yzS3A" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_z-H0mFXPEeOhVe6k7yzS3A" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_z-H0mVXPEeOhVe6k7yzS3A" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_z-H0mlXPEeOhVe6k7yzS3A" type="7017">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_z-H0m1XPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_z-H0nFXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_z-H0nVXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z-H0nlXPEeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_z-H0n1XPEeOhVe6k7yzS3A" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_z-H0oFXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_z-H0oVXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_z-H0olXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z-H0o1XPEeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_z-H0pFXPEeOhVe6k7yzS3A" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_z-H0pVXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_z-H0plXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_z-H0p1XPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z-H0qFXPEeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_z-RlkFXPEeOhVe6k7yzS3A" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_z-RlkVXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z-RlklXPEeOhVe6k7yzS3A"/>
+ </children>
+ <element xmi:type="uml:Class" href="ElementCreationMenuModel.uml#_z-H0kFXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z-H0klXPEeOhVe6k7yzS3A" x="135" y="210"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_97LTkVXPEeOhVe6k7yzS3A" type="2008" fontName="Segoe UI" gradient="8905185, 16777215, 0" lineColor="255">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_97LTk1XPEeOhVe6k7yzS3A" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_97LTlFXPEeOhVe6k7yzS3A" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_97LTlVXPEeOhVe6k7yzS3A" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_97LTllXPEeOhVe6k7yzS3A" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_97LTl1XPEeOhVe6k7yzS3A" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_97LTmFXPEeOhVe6k7yzS3A" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_97LTmVXPEeOhVe6k7yzS3A" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_97LTmlXPEeOhVe6k7yzS3A" type="7017">
+ <children xmi:type="notation:Shape" xmi:id="_HvDL8VXREeOhVe6k7yzS3A" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="ElementCreationMenuModel.uml#_HvDL8FXREeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_HvDL8lXREeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_rF1woVgREeOKQOyOw2l5lw" type="3012" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:Property" href="ElementCreationMenuModel.uml#_rF1woFgREeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rF1wolgREeOKQOyOw2l5lw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_97LTm1XPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_97LTnFXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_97LTnVXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_97LTnlXPEeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_97LTn1XPEeOhVe6k7yzS3A" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_97LToFXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_97LToVXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_97LTolXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_97LTo1XPEeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_97LTpFXPEeOhVe6k7yzS3A" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_97LTpVXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_97LTplXPEeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_97LTp1XPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_97LTqFXPEeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_97UdgFXPEeOhVe6k7yzS3A" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_97UdgVXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_97UdglXPEeOhVe6k7yzS3A"/>
+ </children>
+ <element xmi:type="uml:Class" href="ElementCreationMenuModel.uml#_97LTkFXPEeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_97LTklXPEeOhVe6k7yzS3A" x="285" y="35"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_VJWf0VXPEeOhVe6k7yzS3A"/>
+ <element xmi:type="uml:Model" href="ElementCreationMenuModel.uml#_VJPLEFXPEeOhVe6k7yzS3A"/>
+ <edges xmi:type="notation:Connector" xmi:id="_y1uMoFXQEeOhVe6k7yzS3A" type="4002" source="_z-H0kVXPEeOhVe6k7yzS3A" target="_97LTkVXPEeOhVe6k7yzS3A" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_y1uMo1XQEeOhVe6k7yzS3A" type="6007">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_y1uMpFXQEeOhVe6k7yzS3A" y="40"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_y1uMoVXQEeOhVe6k7yzS3A" fontName="Segoe UI"/>
+ <element xmi:type="uml:Generalization" href="ElementCreationMenuModel.uml#_y1kboFXQEeOhVe6k7yzS3A"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y1uMolXQEeOhVe6k7yzS3A" points="[16, -12, -122, 86]$[136, -87, -2, 11]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y13WkFXQEeOhVe6k7yzS3A" id="(0.55,0.12)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y13WkVXQEeOhVe6k7yzS3A" id="(0.43,0.89)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_0fDh8VXQEeOhVe6k7yzS3A" type="4002" source="_mxFLgVXPEeOhVe6k7yzS3A" target="_97LTkVXPEeOhVe6k7yzS3A" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_0fDh9FXQEeOhVe6k7yzS3A" type="6007">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_0fDh9VXQEeOhVe6k7yzS3A" y="40"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_0fDh8lXQEeOhVe6k7yzS3A" fontName="Segoe UI"/>
+ <element xmi:type="uml:Generalization" href="ElementCreationMenuModel.uml#_0fDh8FXQEeOhVe6k7yzS3A"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0fDh81XQEeOhVe6k7yzS3A" points="[-20, -12, 132, 83]$[-153, -82, -1, 13]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0fMr4FXQEeOhVe6k7yzS3A" id="(0.51,0.12)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0fMr4VXQEeOhVe6k7yzS3A" id="(0.49,0.87)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_8fSH51XQEeOhVe6k7yzS3A" type="4001" source="_z-H0kVXPEeOhVe6k7yzS3A" target="_97LTkVXPEeOhVe6k7yzS3A" routing="Rectilinear" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8fSH6lXQEeOhVe6k7yzS3A" type="6001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8fSH61XQEeOhVe6k7yzS3A" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_8fSH7FXQEeOhVe6k7yzS3A" type="6002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8fSH7VXQEeOhVe6k7yzS3A" x="-34" y="24"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_8fSH7lXQEeOhVe6k7yzS3A" type="6003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8fSH71XQEeOhVe6k7yzS3A" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_8fSH8FXQEeOhVe6k7yzS3A" type="6005">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8fSH8VXQEeOhVe6k7yzS3A" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_8fSH8lXQEeOhVe6k7yzS3A" type="6033">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8fSH81XQEeOhVe6k7yzS3A" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_8fSH9FXQEeOhVe6k7yzS3A" type="6034">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8fSH9VXQEeOhVe6k7yzS3A" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8fSH6FXQEeOhVe6k7yzS3A" fontName="Segoe UI"/>
+ <element xmi:type="uml:Association" href="ElementCreationMenuModel.uml#_8fSH41XQEeOhVe6k7yzS3A"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8fSH6VXQEeOhVe6k7yzS3A" points="[21, 0, -95, 145]$[116, 0, 0, 145]$[116, -131, 0, 14]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8flC0FXQEeOhVe6k7yzS3A" id="(0.79,0.56)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_8flC0VXQEeOhVe6k7yzS3A" id="(0.45,0.86)"/>
+ </edges>
+</notation:Diagram>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.uml b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.uml
new file mode 100644
index 00000000000..3c900ef4d8c
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/ElementCreationMenuModel.uml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20110701" xmlns:xmi="http://www.omg.org/spec/XMI/20110701" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ActionLanguage="http://www.omg.org/spec/ALF/20120827/ActionLanguage-Profile" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML" xsi:schemaLocation="http://www.omg.org/spec/ALF/20120827/ActionLanguage-Profile pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#_sYse0YZLEeKyw49uR6nx3g">
+ <uml:Model xmi:id="_VJPLEFXPEeOhVe6k7yzS3A" name="ElementCreationMenuModel">
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_VJPLEVXPEeOhVe6k7yzS3A">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Class" xmi:id="_mxFLgFXPEeOhVe6k7yzS3A" name="CreationMenu">
+ <generalization xmi:type="uml:Generalization" xmi:id="_0fDh8FXQEeOhVe6k7yzS3A" general="_97LTkFXPEeOhVe6k7yzS3A"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_bHiDkFXREeOhVe6k7yzS3A" name="elementTypeIDRef">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fUXQYFXREeOhVe6k7yzS3A"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fUXQYVXREeOhVe6k7yzS3A" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_8Pa5AFgXEeOKQOyOw2l5lw" name="role">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_8Pa5AVgXEeOKQOyOw2l5lw"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_8Pa5AlgXEeOKQOyOw2l5lw" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_G2lsAFgYEeOKQOyOw2l5lw" name="displayAllRoles">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_G2lsAVgYEeOKQOyOw2l5lw" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_G2lsAlgYEeOKQOyOw2l5lw" value="1"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_Pb58AFgYEeOKQOyOw2l5lw" name="defaultValue" value="true"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_z-H0kFXPEeOhVe6k7yzS3A" name="Folder">
+ <generalization xmi:type="uml:Generalization" xmi:id="_y1kboFXQEeOhVe6k7yzS3A" general="_97LTkFXPEeOhVe6k7yzS3A"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_8fSH4FXQEeOhVe6k7yzS3A" name="menu" type="_97LTkFXPEeOhVe6k7yzS3A" isOrdered="true" aggregation="composite" association="_8fSH41XQEeOhVe6k7yzS3A">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_8fSH4VXQEeOhVe6k7yzS3A"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_8fSH4lXQEeOhVe6k7yzS3A" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_97LTkFXPEeOhVe6k7yzS3A" name="Menu" isAbstract="true">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_HvDL8FXREeOhVe6k7yzS3A" name="label">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_rF1woFgREeOKQOyOw2l5lw" name="icon">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_wcwyAFgREeOKQOyOw2l5lw"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_wcwyAVgREeOKQOyOw2l5lw" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_8fSH41XQEeOhVe6k7yzS3A" name="folder_menu_1" memberEnd="_8fSH5FXQEeOhVe6k7yzS3A _8fSH4FXQEeOhVe6k7yzS3A">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_8fSH5FXQEeOhVe6k7yzS3A" name="folder" type="_z-H0kFXPEeOhVe6k7yzS3A" association="_8fSH41XQEeOhVe6k7yzS3A">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_8fSH5VXQEeOhVe6k7yzS3A" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_8fSH5lXQEeOhVe6k7yzS3A" value="1"/>
+ </ownedEnd>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_sUiYYlgREeOKQOyOw2l5lw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_sU1TUFgREeOKQOyOw2l5lw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#_sYse0YZLEeKyw49uR6nx3g"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#ActionLanguage"/>
+ </profileApplication>
+ </uml:Model>
+ <ActionLanguage:TextualRepresentation xmi:id="_sU1TUVgREeOKQOyOw2l5lw" language="org.eclipse.papyrus.uml.textedit.property.xtext.UmlProperty"/>
+</xmi:XMI>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/NewChildDevelopperDoc.docx b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/NewChildDevelopperDoc.docx
new file mode 100644
index 00000000000..c0b87219f18
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/NewChildDevelopperDoc.docx
Binary files differ
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/elementCreationMenuModel.ecore b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/elementCreationMenuModel.ecore
new file mode 100644
index 00000000000..744464c368c
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/elementCreationMenuModel.ecore
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="ElementCreationMenuModel" nsURI="http://ElementCreationMenuModel"
+ nsPrefix="ElementCreationMenuModel">
+ <eClassifiers xsi:type="ecore:EClass" name="Folder" eSuperTypes="#//Menu">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="menu" upperBound="-1" eType="#//Menu"
+ containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Menu" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="icon" ordered="false" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="CreationMenu" eSuperTypes="#//Menu">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="elementTypeIdRef" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="role" ordered="false" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="displayAllRoles" ordered="false"
+ lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"
+ defaultValueLiteral="true"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/elementCreationMenuModel.genmodel b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/elementCreationMenuModel.genmodel
new file mode 100644
index 00000000000..cd8da9bdfee
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/elementCreationMenuModel.genmodel
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.papyrus.infra.newchild/src" modelPluginID="org.eclipse.papyrus.infra.newchild"
+ modelName="ElementCreationMenuModel" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="6.0" copyrightFields="false"
+ usedGenPackages="../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore" operationReflection="true"
+ importOrganizing="true">
+ <foreignModel>elementCreationMenuModel.ecore</foreignModel>
+ <genPackages prefix="ElementCreationMenuModel" resource="XML" disposableProviderFactory="true"
+ ecorePackage="elementCreationMenuModel.ecore#/">
+ <genClasses ecoreClass="elementCreationMenuModel.ecore#//Folder">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference elementCreationMenuModel.ecore#//Folder/menu"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="elementCreationMenuModel.ecore#//Menu">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elementCreationMenuModel.ecore#//Menu/label"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elementCreationMenuModel.ecore#//Menu/icon"/>
+ </genClasses>
+ <genClasses ecoreClass="elementCreationMenuModel.ecore#//CreationMenu">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elementCreationMenuModel.ecore#//CreationMenu/elementTypeIdRef"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute elementCreationMenuModel.ecore#//CreationMenu/Role"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.di b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.di
new file mode 100644
index 00000000000..1980c8e603f
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.di
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<di:SashWindowsMngr xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:di="http://www.eclipse.org/papyrus/0.7.0/sashdi">
+ <pageList>
+ <availablePage>
+ <emfPageIdentifier href="papyrusNewChild.notation#_Py2DcFOFEeOuspyO4PzXCg"/>
+ </availablePage>
+ <availablePage>
+ <emfPageIdentifier href="papyrusNewChild.notation#_hb3voFOFEeOuspyO4PzXCg"/>
+ </availablePage>
+ <availablePage>
+ <emfPageIdentifier href="papyrusNewChild.notation#_swsygFOIEeOuspyO4PzXCg"/>
+ </availablePage>
+ <availablePage>
+ <emfPageIdentifier href="papyrusNewChild.notation#_uB23AFW6EeOhVe6k7yzS3A"/>
+ </availablePage>
+ <availablePage>
+ <emfPageIdentifier href="papyrusNewChild.notation#_o5dr8FXdEeOW-JPqZK_EZg"/>
+ </availablePage>
+ <availablePage>
+ <emfPageIdentifier href="papyrusNewChild.notation#_Fo2BgFXeEeOW-JPqZK_EZg"/>
+ </availablePage>
+ <availablePage>
+ <emfPageIdentifier href="papyrusNewChild.notation#_uhdN0FgPEeOKQOyOw2l5lw"/>
+ </availablePage>
+ </pageList>
+ <sashModel currentSelection="//@sashModel/@windows.0/@children.0">
+ <windows>
+ <children xsi:type="di:TabFolder">
+ <children>
+ <emfPageIdentifier href="papyrusNewChild.notation#_Py2DcFOFEeOuspyO4PzXCg"/>
+ </children>
+ <children>
+ <emfPageIdentifier href="papyrusNewChild.notation#_hb3voFOFEeOuspyO4PzXCg"/>
+ </children>
+ <children>
+ <emfPageIdentifier href="papyrusNewChild.notation#_swsygFOIEeOuspyO4PzXCg"/>
+ </children>
+ <children>
+ <emfPageIdentifier href="papyrusNewChild.notation#_uB23AFW6EeOhVe6k7yzS3A"/>
+ </children>
+ <children>
+ <emfPageIdentifier href="papyrusNewChild.notation#_uhdN0FgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children>
+ <emfPageIdentifier href="papyrusNewChild.notation#_Fo2BgFXeEeOW-JPqZK_EZg"/>
+ </children>
+ </children>
+ </windows>
+ </sashModel>
+</di:SashWindowsMngr>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.notation b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.notation
new file mode 100644
index 00000000000..e30ab615d61
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.notation
@@ -0,0 +1,1103 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Requirements="http://www.eclipse.org/papyrus/0.7.0/SysML/Requirements" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:nattable="http://www.eclipse.org/papyrus/nattable/model" xmlns:nattableaxis="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis" xmlns:nattableaxisconfiguration="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration" xmlns:nattableaxisprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider" xmlns:nattableconfiguration="http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/0.7.0/SysML/Requirements http://www.eclipse.org/papyrus/0.7.0/SysML#//requirements http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis http://www.eclipse.org/papyrus/nattable/model#//nattableaxis http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model#//nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableconfiguration">
+ <notation:Diagram xmi:id="_Py2DcFOFEeOuspyO4PzXCg" type="Package" name="PackageDiagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_QS7RsFOFEeOuspyO4PzXCg" type="2007" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QS-VAFOFEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QS-8EFOFEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QS-8EVOFEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QS-8ElOFEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QS-8E1OFEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QS-8FFOFEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_QS-8FVOFEeOuspyO4PzXCg" type="5026"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_QS_jIFOFEeOuspyO4PzXCg" type="7016">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QS_jIVOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QS_jIlOFEeOuspyO4PzXCg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QTWIcFOFEeOuspyO4PzXCg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QTWIcVOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QTWIclOFEeOuspyO4PzXCg"/>
+ </children>
+ <element xmi:type="uml:Package" href="papyrusNewChild.uml#_IqDb0FOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QS7RsVOFEeOuspyO4PzXCg" x="480" y="50"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Qoi8YFOFEeOuspyO4PzXCg" type="2007" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QokKgFOFEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QokKgVOFEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QokKglOFEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QokKg1OFEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QokKhFOFEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QokKhVOFEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_QokxkFOFEeOuspyO4PzXCg" type="5026"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_QokxkVOFEeOuspyO4PzXCg" type="7016">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QokxklOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Qokxk1OFEeOuspyO4PzXCg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_QopqEFOFEeOuspyO4PzXCg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_QopqEVOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QopqElOFEeOuspyO4PzXCg"/>
+ </children>
+ <element xmi:type="uml:Package" href="papyrusNewChild.uml#_JXz5sFOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Qoi8YVOFEeOuspyO4PzXCg" x="480" y="210"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Q8z8MFOFEeOuspyO4PzXCg" type="2007" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Q80jQFOFEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Q80jQVOFEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Q81KUFOFEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Q81KUVOFEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Q81KUlOFEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Q81KU1OFEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Q81KVFOFEeOuspyO4PzXCg" type="5026"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Q81KVVOFEeOuspyO4PzXCg" type="7016">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Q81KVlOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q81KV1OFEeOuspyO4PzXCg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_Q88fEFOFEeOuspyO4PzXCg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Q88fEVOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q88fElOFEeOuspyO4PzXCg"/>
+ </children>
+ <element xmi:type="uml:Package" href="papyrusNewChild.uml#_JnbDAFOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q8z8MVOFEeOuspyO4PzXCg" x="730" y="415"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_RZtTkFOFEeOuspyO4PzXCg" type="2007" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_RZt6oFOFEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_RZt6oVOFEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_RZt6olOFEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_RZt6o1OFEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_RZuhsFOFEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_RZuhsVOFEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_RZuhslOFEeOuspyO4PzXCg" type="5026"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_RZuhs1OFEeOuspyO4PzXCg" type="7016">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_RZuhtFOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RZuhtVOFEeOuspyO4PzXCg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_RZ12cFOFEeOuspyO4PzXCg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_RZ12cVOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RZ12clOFEeOuspyO4PzXCg"/>
+ </children>
+ <element xmi:type="uml:Package" href="papyrusNewChild.uml#_Nc3DgFOFEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RZtTkVOFEeOuspyO4PzXCg" x="255" y="415"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_Py2DcVOFEeOuspyO4PzXCg"/>
+ <element xmi:type="uml:Model" href="papyrusNewChild.uml#_a0QCwFOCEeOE6bh9v5dYKg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_T6YgkFOFEeOuspyO4PzXCg" type="4006" source="_Qoi8YFOFEeOuspyO4PzXCg" target="_QS7RsFOFEeOuspyO4PzXCg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_T6aVwFOFEeOuspyO4PzXCg" type="6014">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T6aVwVOFEeOuspyO4PzXCg" x="-14" y="54"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_T6aVwlOFEeOuspyO4PzXCg" type="6015">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T6aVw1OFEeOuspyO4PzXCg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_T6YgkVOFEeOuspyO4PzXCg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Abstraction" href="papyrusNewChild.uml#_T6P9sFOFEeOuspyO4PzXCg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_T6YgklOFEeOuspyO4PzXCg" points="[-6, -11, -45, 115]$[-61, -89, -100, 37]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_T6o_QFOFEeOuspyO4PzXCg" id="(0.5,0.2)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_UqWk8FOFEeOuspyO4PzXCg" type="4006" source="_Q8z8MFOFEeOuspyO4PzXCg" target="_Qoi8YFOFEeOuspyO4PzXCg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_UqXzEFOFEeOuspyO4PzXCg" type="6014">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_UqXzEVOFEeOuspyO4PzXCg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_UqXzElOFEeOuspyO4PzXCg" type="6015">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_UqYaIFOFEeOuspyO4PzXCg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_UqXMAFOFEeOuspyO4PzXCg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Abstraction" href="papyrusNewChild.uml#_UqVW0FOFEeOuspyO4PzXCg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_UqXMAVOFEeOuspyO4PzXCg" points="[-16, -13, 168, 155]$[-157, -118, 27, 50]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Uqg9AFOFEeOuspyO4PzXCg" id="(0.17,0.13)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Vk_oQFOFEeOuspyO4PzXCg" type="4008" source="_RZtTkFOFEeOuspyO4PzXCg" target="_Qoi8YFOFEeOuspyO4PzXCg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VlAPUFOFEeOuspyO4PzXCg" type="6026">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VlAPUVOFEeOuspyO4PzXCg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_VlAPUlOFEeOuspyO4PzXCg" type="6027">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VlAPU1OFEeOuspyO4PzXCg" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Vk_oQVOFEeOuspyO4PzXCg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Dependency" href="papyrusNewChild.uml#_VkwXsFOFEeOuspyO4PzXCg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Vk_oQlOFEeOuspyO4PzXCg" points="[24, -29, -141, 169]$[125, -194, -40, 4]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VlKAUFOFEeOuspyO4PzXCg" id="(0.2,0.57)"/>
+ </edges>
+ </notation:Diagram>
+ <nattable:Table xmi:id="_hb3voFOFEeOuspyO4PzXCg" name="Requirements" currentRowAxisProvider="_hb3vpVOFEeOuspyO4PzXCg" currentColumnAxisProvider="_hb3voVOFEeOuspyO4PzXCg">
+ <context xmi:type="uml:Package" href="papyrusNewChild.uml#_IqDb0FOFEeOuspyO4PzXCg"/>
+ <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.sysml.nattable.requirement.config/configs/requirement.nattableconfiguration#/"/>
+ <columnAxisProvidersHistory xmi:type="nattableaxisprovider:SlaveObjectAxisProvider" xmi:id="_hb3voVOFEeOuspyO4PzXCg" description="Provides the columns of the tables with a default configuration" name="Requirements Feature Columns Provider">
+ <axis xmi:type="nattableaxis:FeatureIdAxis" xmi:id="_hb3volOFEeOuspyO4PzXCg" element="property_of_stereotype:/SysML::Requirements::Requirement::id">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.sysml.nattable.requirement.config/configs/requirement.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.1"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_hb3vo1OFEeOuspyO4PzXCg">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.sysml.nattable.requirement.config/configs/requirement.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </axis>
+ <axis xmi:type="nattableaxis:FeatureIdAxis" xmi:id="_hb3vpFOFEeOuspyO4PzXCg" element="property_of_stereotype:/SysML::Requirements::Requirement::text">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.sysml.nattable.requirement.config/configs/requirement.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.1"/>
+ </axis>
+ <axis xmi:type="nattableaxis:FeatureIdAxis" xmi:id="_OKhiwFgPEeOKQOyOw2l5lw" element="property_of_stereotype:/SysML::Requirements::Requirement::refinedBy">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.sysml.nattable.requirement.config/configs/requirement.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.1"/>
+ </axis>
+ </columnAxisProvidersHistory>
+ <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_hb3vpVOFEeOuspyO4PzXCg" description="Provides the requirements directly owned by the context of the table" name="Requirement Axis Provider" disconnectSlave="true"/>
+ </nattable:Table>
+ <notation:Diagram xmi:id="_swsygFOIEeOuspyO4PzXCg" type="UseCase" name="UseCaseDiagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_uxPt8FOIEeOuspyO4PzXCg" type="2015" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uxPt8lOIEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uxPt81OIEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uxPt9FOIEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uxPt9VOIEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uxPt9lOIEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uxPt91OIEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_uxPt-FOIEeOuspyO4PzXCg" type="5019"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_uxPt-VOIEeOuspyO4PzXCg" type="7011">
+ <children xmi:type="notation:Shape" xmi:id="_-b1XgFOIEeOuspyO4PzXCg" type="3009" fontName="Segoe UI" fillColor="8905185" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-b1XglOIEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-b1Xg1OIEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-b1XhFOIEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-b1XhVOIEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-b1XhlOIEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-b1Xh1OIEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_-b1XiFOIEeOuspyO4PzXCg" type="5018"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_-b1XiVOIEeOuspyO4PzXCg" type="7012">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_-b1XilOIEeOuspyO4PzXCg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_-b1Xi1OIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-b1XjFOIEeOuspyO4PzXCg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_-b-hcFOIEeOuspyO4PzXCg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_-b-hcVOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-b-hclOIEeOuspyO4PzXCg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_-bickFOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-b1XgVOIEeOuspyO4PzXCg" x="220" y="13"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_EPnUAVOJEeOuspyO4PzXCg" type="3009" fontName="Segoe UI" fillColor="8905185" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_EPnUA1OJEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_EPnUBFOJEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_EPnUBVOJEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_EPnUBlOJEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_EPnUB1OJEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_EPnUCFOJEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_EPnUCVOJEeOuspyO4PzXCg" type="5018"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_EPnUClOJEeOuspyO4PzXCg" type="7012">
+ <children xmi:type="notation:Shape" xmi:id="_lYtP4FW6EeOhVe6k7yzS3A" type="3007" fontName="Segoe UI" lineColor="0">
+ <element xmi:type="uml:ExtensionPoint" href="papyrusNewChild.uml#_lYRLAVW6EeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lYtP4VW6EeOhVe6k7yzS3A"/>
+ </children>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_EPnUC1OJEeOuspyO4PzXCg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_EPnUDFOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EPnUDVOJEeOuspyO4PzXCg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_EPxFAFOJEeOuspyO4PzXCg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_EPxFAVOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EPxFAlOJEeOuspyO4PzXCg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_EPnUAFOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EPnUAlOJEeOuspyO4PzXCg" x="115" y="253"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_WZ_ZwVOJEeOuspyO4PzXCg" type="3009" fontName="Segoe UI" fillColor="8905185" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_WZ_Zw1OJEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_WZ_ZxFOJEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_WZ_ZxVOJEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_WZ_ZxlOJEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_WZ_Zx1OJEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_WZ_ZyFOJEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_WZ_ZyVOJEeOuspyO4PzXCg" type="5018"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_WaJKwFOJEeOuspyO4PzXCg" type="7012">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_WaJKwVOJEeOuspyO4PzXCg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_WaJKwlOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WaJKw1OJEeOuspyO4PzXCg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_WaJKxFOJEeOuspyO4PzXCg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_WaJKxVOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WaJKxlOJEeOuspyO4PzXCg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_WZ_ZwFOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WZ_ZwlOJEeOuspyO4PzXCg" x="170" y="118"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_uSWWAFOJEeOuspyO4PzXCg" type="3009" fontName="Segoe UI" fillColor="8905185" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uSWWAlOJEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uSWWA1OJEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uSWWBFOJEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uSWWBVOJEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uSWWBlOJEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uSWWB1OJEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_uSWWCFOJEeOuspyO4PzXCg" type="5018"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_uSWWCVOJEeOuspyO4PzXCg" type="7012">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_uSWWClOJEeOuspyO4PzXCg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_uSWWC1OJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uSWWDFOJEeOuspyO4PzXCg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_uSff8FOJEeOuspyO4PzXCg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_uSff8VOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uSff8lOJEeOuspyO4PzXCg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_uSMlAFOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uSWWAVOJEeOuspyO4PzXCg" x="115" y="353"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_cXd44FW6EeOhVe6k7yzS3A" type="3009" fontName="Segoe UI" fillColor="8047085" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cXnp4FW6EeOhVe6k7yzS3A" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cXnp4VW6EeOhVe6k7yzS3A" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cXnp4lW6EeOhVe6k7yzS3A" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cXnp41W6EeOhVe6k7yzS3A" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cXnp5FW6EeOhVe6k7yzS3A" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cXnp5VW6EeOhVe6k7yzS3A" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_cXnp5lW6EeOhVe6k7yzS3A" type="5018"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_cXnp51W6EeOhVe6k7yzS3A" type="7012">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cXnp6FW6EeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cXnp6VW6EeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cXnp6lW6EeOhVe6k7yzS3A"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_cXnp61W6EeOhVe6k7yzS3A" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_cXnp7FW6EeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cXnp7VW6EeOhVe6k7yzS3A"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_cXBM8FW6EeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cXd44VW6EeOhVe6k7yzS3A" x="400" y="198"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uxPt-lOIEeOuspyO4PzXCg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_uxPt-1OIEeOuspyO4PzXCg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_uxPt_FOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uxPt_VOIEeOuspyO4PzXCg"/>
+ </children>
+ <element xmi:type="uml:Component" href="papyrusNewChild.uml#_uxF88FOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uxPt8VOIEeOuspyO4PzXCg" x="225" y="5" width="941" height="456"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_zZTeMFOIEeOuspyO4PzXCg" type="2011" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zZTeMlOIEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zZTeM1OIEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zZTeNFOIEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zZTeNVOIEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zZTeNlOIEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zZTeN1OIEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_zZTeOFOIEeOuspyO4PzXCg" type="5014">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_zZTeOVOIEeOuspyO4PzXCg" x="4" y="70"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_zZTeOlOIEeOuspyO4PzXCg" type="6029">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_zZTeO1OIEeOuspyO4PzXCg" x="20" y="100"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_zZTePFOIEeOuspyO4PzXCg" type="6037">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_zZTePVOIEeOuspyO4PzXCg" x="20" y="80"/>
+ </children>
+ <element xmi:type="uml:Actor" href="papyrusNewChild.uml#_zYtoUFOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zZTeMVOIEeOuspyO4PzXCg" x="60" y="45"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_3P0cwVOIEeOuspyO4PzXCg" type="2011" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3P0cw1OIEeOuspyO4PzXCg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3P0cxFOIEeOuspyO4PzXCg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3P0cxVOIEeOuspyO4PzXCg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3P0cxlOIEeOuspyO4PzXCg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3P0cx1OIEeOuspyO4PzXCg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3P0cyFOIEeOuspyO4PzXCg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_3P0cyVOIEeOuspyO4PzXCg" type="5014">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3P0cylOIEeOuspyO4PzXCg" x="-14" y="70"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_3P0cy1OIEeOuspyO4PzXCg" type="6029">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3P0czFOIEeOuspyO4PzXCg" x="20" y="100"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_3P0czVOIEeOuspyO4PzXCg" type="6037">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_3P0czlOIEeOuspyO4PzXCg" x="20" y="80"/>
+ </children>
+ <element xmi:type="uml:Actor" href="papyrusNewChild.uml#_3P0cwFOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3P0cwlOIEeOuspyO4PzXCg" x="50" y="330"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_swsygVOIEeOuspyO4PzXCg"/>
+ <element xmi:type="uml:Package" href="papyrusNewChild.uml#_JXz5sFOFEeOuspyO4PzXCg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_DTqpIFOJEeOuspyO4PzXCg" type="4011" source="_zZTeMFOIEeOuspyO4PzXCg" target="_-b1XgFOIEeOuspyO4PzXCg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_DTqpI1OJEeOuspyO4PzXCg" visible="false" type="6008">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_DTqpJFOJEeOuspyO4PzXCg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_DTqpJVOJEeOuspyO4PzXCg" type="6033">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_DTqpJlOJEeOuspyO4PzXCg" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_DTqpIVOJEeOuspyO4PzXCg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Association" href="papyrusNewChild.uml#_DTg4IFOJEeOuspyO4PzXCg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DTqpIlOJEeOuspyO4PzXCg" points="[40, 6, -298, 0]$[320, 1, -18, -5]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DTzzEFOJEeOuspyO4PzXCg" id="(0.2,0.31666666666666665)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_PBVKJ1OJEeOuspyO4PzXCg" type="4011" source="_3P0cwVOIEeOuspyO4PzXCg" target="_EPnUAVOJEeOuspyO4PzXCg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_PBVKKlOJEeOuspyO4PzXCg" visible="false" type="6008">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_PBVKK1OJEeOuspyO4PzXCg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_PBVKLFOJEeOuspyO4PzXCg" type="6033">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_PBVKLVOJEeOuspyO4PzXCg" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_PBVKKFOJEeOuspyO4PzXCg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Association" href="papyrusNewChild.uml#_PBVKIFOJEeOuspyO4PzXCg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PBVKKVOJEeOuspyO4PzXCg" points="[40, 1, -320, -13]$[304, 16, -56, 2]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PBe7IFOJEeOuspyO4PzXCg" id="(0.19666666666666666,0.5666666666666667)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_gmg4J1OJEeOuspyO4PzXCg" type="4011" source="_zZTeMFOIEeOuspyO4PzXCg" target="_WZ_ZwVOJEeOuspyO4PzXCg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gmg4KlOJEeOuspyO4PzXCg" visible="false" type="6008">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gmg4K1OJEeOuspyO4PzXCg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_gmg4LFOJEeOuspyO4PzXCg" type="6033">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_gmg4LVOJEeOuspyO4PzXCg" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_gmg4KFOJEeOuspyO4PzXCg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Association" href="papyrusNewChild.uml#_gmg4IFOJEeOuspyO4PzXCg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gmg4KVOJEeOuspyO4PzXCg" points="[40, 18, -340, -154]$[350, 174, -30, 2]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gmqpIFOJEeOuspyO4PzXCg" id="(0.1469387755102041,0.6166666666666667)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_aEVYoFW6EeOhVe6k7yzS3A" type="4008" source="_EPnUAVOJEeOuspyO4PzXCg" target="_uSWWAFOJEeOuspyO4PzXCg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_aEeikFW6EeOhVe6k7yzS3A" type="6006">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aEeikVW6EeOhVe6k7yzS3A" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_aEeiklW6EeOhVe6k7yzS3A" type="6030">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aEeik1W6EeOhVe6k7yzS3A" y="-20"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_aEVYoVW6EeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_aEVYolW6EeOhVe6k7yzS3A" fontName="Segoe UI"/>
+ <element xmi:type="uml:Include" href="papyrusNewChild.uml#_aEB2oFW6EeOhVe6k7yzS3A"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aEVYo1W6EeOhVe6k7yzS3A" points="[-27, 29, 82, -106]$[-110, 105, -1, -30]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lYHaAFW6EeOhVe6k7yzS3A" type="4009" source="_cXd44FW6EeOhVe6k7yzS3A" target="_EPnUAVOJEeOuspyO4PzXCg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_lYHaBFW6EeOhVe6k7yzS3A" type="6007">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lYHaBVW6EeOhVe6k7yzS3A" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_lYHaBlW6EeOhVe6k7yzS3A" type="6031">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lYHaB1W6EeOhVe6k7yzS3A" y="-20"/>
+ </children>
+ <styles xmi:type="notation:RoutingStyle" xmi:id="_lYHaAVW6EeOhVe6k7yzS3A"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lYHaAlW6EeOhVe6k7yzS3A" fontName="Segoe UI"/>
+ <element xmi:type="uml:Extend" href="papyrusNewChild.uml#_lX9pAFW6EeOhVe6k7yzS3A"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lYHaA1W6EeOhVe6k7yzS3A" points="[0, 30, 264, -28]$[0, 58, 264, 0]$[-237, 58, 27, 0]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lYRLAFW6EeOhVe6k7yzS3A" id="(0.9066666666666666,0.55)"/>
+ </edges>
+ </notation:Diagram>
+ <nattable:Table xmi:id="_uB23AFW6EeOhVe6k7yzS3A" name="UseCase" currentRowAxisProvider="_uB23AlW6EeOhVe6k7yzS3A" currentColumnAxisProvider="_uB23AVW6EeOhVe6k7yzS3A">
+ <context xmi:type="uml:Component" href="papyrusNewChild.uml#_uxF88FOIEeOuspyO4PzXCg"/>
+ <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#/"/>
+ <columnAxisProvidersHistory xmi:type="nattableaxisprovider:SlaveObjectAxisProvider" xmi:id="_uB23AVW6EeOhVe6k7yzS3A" description="This axis provider provides available columns according to the rows of the table (features of the object displayed on the other axis)" name="UML Feature axis provider">
+ <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_DtL7DlW7EeOhVe6k7yzS3A">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#//@columnHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/4.0.0/UML#//NamedElement/name"/>
+ </axis>
+ </columnAxisProvidersHistory>
+ <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_uB23AlW6EeOhVe6k7yzS3A" description="This axis provider contains the object dropped by the user into the table" name="DroppedElementAxisProvider">
+ <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_usGt4FW6EeOhVe6k7yzS3A">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#//@rowHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_-bickFOIEeOuspyO4PzXCg"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_3uPcwFW6EeOhVe6k7yzS3A">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#//@rowHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_EPnUAFOJEeOuspyO4PzXCg"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_3uPcwVW6EeOhVe6k7yzS3A">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#//@rowHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_WZ_ZwFOJEeOuspyO4PzXCg"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_3uPcwlW6EeOhVe6k7yzS3A">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#//@rowHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_uSMlAFOJEeOuspyO4PzXCg"/>
+ </axis>
+ <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_3uPcw1W6EeOhVe6k7yzS3A">
+ <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#//@rowHeaderAxisConfiguration/@axisManagers.0"/>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_cXBM8FW6EeOhVe6k7yzS3A"/>
+ </axis>
+ </rowAxisProvidersHistory>
+ </nattable:Table>
+ <notation:Diagram xmi:id="_o5dr8FXdEeOW-JPqZK_EZg" type="UseCase" name="Test about UseCreateMenu" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_pfAB8FXdEeOW-JPqZK_EZg" type="2013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_pfApAFXdEeOW-JPqZK_EZg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pfBQEFXdEeOW-JPqZK_EZg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_pfBQEVXdEeOW-JPqZK_EZg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pfBQElXdEeOW-JPqZK_EZg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_pfBQE1XdEeOW-JPqZK_EZg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pfBQFFXdEeOW-JPqZK_EZg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_pfBQFVXdEeOW-JPqZK_EZg" type="5016"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_pfBQFlXdEeOW-JPqZK_EZg" type="7009">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_pfBQF1XdEeOW-JPqZK_EZg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_pfBQGFXdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pfBQGVXdEeOW-JPqZK_EZg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_pfP5kFXdEeOW-JPqZK_EZg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_pfQgoFXdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pfQgoVXdEeOW-JPqZK_EZg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_-bickFOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pfAB8VXdEeOW-JPqZK_EZg" x="270" y="35"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_rxzyEFXdEeOW-JPqZK_EZg" type="2013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_rx0ZIFXdEeOW-JPqZK_EZg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_rx0ZIVXdEeOW-JPqZK_EZg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_rx0ZIlXdEeOW-JPqZK_EZg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_rx0ZI1XdEeOW-JPqZK_EZg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_rx0ZJFXdEeOW-JPqZK_EZg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_rx0ZJVXdEeOW-JPqZK_EZg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rx0ZJlXdEeOW-JPqZK_EZg" type="5016"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rx0ZJ1XdEeOW-JPqZK_EZg" type="7009">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_rx0ZKFXdEeOW-JPqZK_EZg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_rx0ZKVXdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rx0ZKlXdEeOW-JPqZK_EZg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_rx6fwFXdEeOW-JPqZK_EZg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_rx6fwVXdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rx6fwlXdEeOW-JPqZK_EZg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_rxKR0FXdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rxzyEVXdEeOW-JPqZK_EZg" x="40" y="260" width="346"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_1v06YFXdEeOW-JPqZK_EZg" type="2013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1v06YlXdEeOW-JPqZK_EZg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1v06Y1XdEeOW-JPqZK_EZg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1v06ZFXdEeOW-JPqZK_EZg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1v06ZVXdEeOW-JPqZK_EZg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1v06ZlXdEeOW-JPqZK_EZg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1v06Z1XdEeOW-JPqZK_EZg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_1v06aFXdEeOW-JPqZK_EZg" type="5016"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_1v06aVXdEeOW-JPqZK_EZg" type="7009">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1v06alXdEeOW-JPqZK_EZg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1v06a1XdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1v06bFXdEeOW-JPqZK_EZg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1v-EUFXdEeOW-JPqZK_EZg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1v-EUVXdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1v-EUlXdEeOW-JPqZK_EZg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_1vrJYFXdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1v06YVXdEeOW-JPqZK_EZg" x="425" y="255"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_4naLgFXdEeOW-JPqZK_EZg" type="2013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4naLglXdEeOW-JPqZK_EZg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_4naLg1XdEeOW-JPqZK_EZg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4naLhFXdEeOW-JPqZK_EZg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_4naLhVXdEeOW-JPqZK_EZg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4naLhlXdEeOW-JPqZK_EZg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_4naLh1XdEeOW-JPqZK_EZg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_4naLiFXdEeOW-JPqZK_EZg" type="5016"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_4naLiVXdEeOW-JPqZK_EZg" type="7009">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_4naLilXdEeOW-JPqZK_EZg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_4naLi1XdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4naLjFXdEeOW-JPqZK_EZg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_4nj8gFXdEeOW-JPqZK_EZg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_4nj8gVXdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4nj8glXdEeOW-JPqZK_EZg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_4nRBkFXdEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4naLgVXdEeOW-JPqZK_EZg" x="680" y="190"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_o5dr8VXdEeOW-JPqZK_EZg"/>
+ <element xmi:type="uml:Package" href="papyrusNewChild.uml#_lII58FXeEeOW-JPqZK_EZg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_xp1VYFXdEeOW-JPqZK_EZg" type="4016" source="_rxzyEFXdEeOW-JPqZK_EZg" target="_pfAB8FXdEeOW-JPqZK_EZg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_xp1VY1XdEeOW-JPqZK_EZg" type="6012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xp1VZFXdEeOW-JPqZK_EZg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_xp1VZVXdEeOW-JPqZK_EZg" type="6013">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xp1VZlXdEeOW-JPqZK_EZg" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_xp1VYVXdEeOW-JPqZK_EZg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Usage" href="papyrusNewChild.uml#_xpiacFXdEeOW-JPqZK_EZg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xp1VYlXdEeOW-JPqZK_EZg" points="[11, -30, -84, 195]$[54, -201, -41, 24]"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_9Yi_QVXdEeOW-JPqZK_EZg" type="4016" source="_4naLgFXdEeOW-JPqZK_EZg" target="_pfAB8FXdEeOW-JPqZK_EZg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9Yi_RFXdEeOW-JPqZK_EZg" type="6012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9Yi_RVXdEeOW-JPqZK_EZg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_9Yi_RlXdEeOW-JPqZK_EZg" type="6013">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_9Yi_R1XdEeOW-JPqZK_EZg" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_9Yi_QlXdEeOW-JPqZK_EZg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Usage" href="papyrusNewChild.uml#_9Yi_QFXdEeOW-JPqZK_EZg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9Yi_Q1XdEeOW-JPqZK_EZg" points="[-75, -26, 406, 129]$[-413, -161, 68, -6]"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_-0Vn0VXdEeOW-JPqZK_EZg" type="4016" source="_1v06YFXdEeOW-JPqZK_EZg" target="_pfAB8FXdEeOW-JPqZK_EZg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-0Vn1FXdEeOW-JPqZK_EZg" type="6012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-0Vn1VXdEeOW-JPqZK_EZg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_-0Vn1lXdEeOW-JPqZK_EZg" type="6013">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_-0Vn11XdEeOW-JPqZK_EZg" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_-0Vn0lXdEeOW-JPqZK_EZg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Usage" href="papyrusNewChild.uml#_-0Vn0FXdEeOW-JPqZK_EZg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-0Vn01XdEeOW-JPqZK_EZg" points="[-31, -30, 192, 190]$[-229, -191, -6, 29]"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_Fo2BgFXeEeOW-JPqZK_EZg" type="UseCase" name="Test about Create or Modify Element CreationModel" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_GxJtYFXeEeOW-JPqZK_EZg" type="2013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GxJtYlXeEeOW-JPqZK_EZg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GxJtY1XeEeOW-JPqZK_EZg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GxJtZFXeEeOW-JPqZK_EZg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GxJtZVXeEeOW-JPqZK_EZg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GxJtZlXeEeOW-JPqZK_EZg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GxJtZ1XeEeOW-JPqZK_EZg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_GxJtaFXeEeOW-JPqZK_EZg" type="5016"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_GxJtaVXeEeOW-JPqZK_EZg" type="7009">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GxJtalXeEeOW-JPqZK_EZg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GxJta1XeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GxJtbFXeEeOW-JPqZK_EZg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_GxS3UFXeEeOW-JPqZK_EZg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_GxS3UVXeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GxS3UlXeEeOW-JPqZK_EZg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_EPnUAFOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GxJtYVXeEeOW-JPqZK_EZg" x="336" y="102"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_HTqkkFXeEeOW-JPqZK_EZg" type="2013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_HTqkklXeEeOW-JPqZK_EZg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HTqkk1XeEeOW-JPqZK_EZg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_HTqklFXeEeOW-JPqZK_EZg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HTqklVXeEeOW-JPqZK_EZg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_HTqkllXeEeOW-JPqZK_EZg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_HTqkl1XeEeOW-JPqZK_EZg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_HTqkmFXeEeOW-JPqZK_EZg" type="5016"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_HTqkmVXeEeOW-JPqZK_EZg" type="7009">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_HTqkmlXeEeOW-JPqZK_EZg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_HTqkm1XeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HTqknFXeEeOW-JPqZK_EZg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_HT0VkFXeEeOW-JPqZK_EZg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_HT0VkVXeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HT0VklXeEeOW-JPqZK_EZg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_HTgzkFXeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HTqkkVXeEeOW-JPqZK_EZg" x="185" y="310"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_KdZ8sVXeEeOW-JPqZK_EZg" type="2013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_KdZ8s1XeEeOW-JPqZK_EZg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_KdZ8tFXeEeOW-JPqZK_EZg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_KdZ8tVXeEeOW-JPqZK_EZg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_KdZ8tlXeEeOW-JPqZK_EZg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_KdZ8t1XeEeOW-JPqZK_EZg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_KdZ8uFXeEeOW-JPqZK_EZg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_KdZ8uVXeEeOW-JPqZK_EZg" type="5016"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_KdZ8ulXeEeOW-JPqZK_EZg" type="7009">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_KdZ8u1XeEeOW-JPqZK_EZg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_KdZ8vFXeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KdZ8vVXeEeOW-JPqZK_EZg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_KdjGoFXeEeOW-JPqZK_EZg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_KdjGoVXeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KdjGolXeEeOW-JPqZK_EZg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_KdZ8sFXeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KdZ8slXeEeOW-JPqZK_EZg" x="480" y="315"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_M6gRQVXeEeOW-JPqZK_EZg" type="2013" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_M6gRQ1XeEeOW-JPqZK_EZg" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_M6gRRFXeEeOW-JPqZK_EZg" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_M6gRRVXeEeOW-JPqZK_EZg" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_M6qCQFXeEeOW-JPqZK_EZg" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_M6qCQVXeEeOW-JPqZK_EZg" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_M6qCQlXeEeOW-JPqZK_EZg" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_M6qCQ1XeEeOW-JPqZK_EZg" type="5016"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_M6qCRFXeEeOW-JPqZK_EZg" type="7009">
+ <styles xmi:type="notation:SortingStyle" xmi:id="_M6qCRVXeEeOW-JPqZK_EZg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_M6qCRlXeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_M6qCR1XeEeOW-JPqZK_EZg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_M6qCSFXeEeOW-JPqZK_EZg" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_M6qCSVXeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_M6qCSlXeEeOW-JPqZK_EZg"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_M6gRQFXeEeOW-JPqZK_EZg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_M6gRQlXeEeOW-JPqZK_EZg" x="803" y="87"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_Fo2BgVXeEeOW-JPqZK_EZg"/>
+ <element xmi:type="uml:Package" href="papyrusNewChild.uml#_fMeMwFXeEeOW-JPqZK_EZg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_TYirsVXeEeOW-JPqZK_EZg" type="4016" source="_M6gRQVXeEeOW-JPqZK_EZg" target="_GxJtYFXeEeOW-JPqZK_EZg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_TYirtFXeEeOW-JPqZK_EZg" type="6012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TYirtVXeEeOW-JPqZK_EZg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TYirtlXeEeOW-JPqZK_EZg" type="6013">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TYirt1XeEeOW-JPqZK_EZg" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_TYirslXeEeOW-JPqZK_EZg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Usage" href="papyrusNewChild.uml#_TYirsFXeEeOW-JPqZK_EZg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TYirs1XeEeOW-JPqZK_EZg" points="[-155, 4, 218, -8]$[-326, 10, 47, -2]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TYscsFXeEeOW-JPqZK_EZg" id="(0.8366666666666667,0.45)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_VIIaAVXeEeOW-JPqZK_EZg" type="4016" source="_KdZ8sVXeEeOW-JPqZK_EZg" target="_GxJtYFXeEeOW-JPqZK_EZg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VIIaBFXeEeOW-JPqZK_EZg" type="6012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VIIaBVXeEeOW-JPqZK_EZg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_VIIaBlXeEeOW-JPqZK_EZg" type="6013">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VIIaB1XeEeOW-JPqZK_EZg" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VIIaAlXeEeOW-JPqZK_EZg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Usage" href="papyrusNewChild.uml#_VIIaAFXeEeOW-JPqZK_EZg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VIIaA1XeEeOW-JPqZK_EZg" points="[-14, -30, 94, 183]$[41, -210, 149, 3]"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_VqMlQVXeEeOW-JPqZK_EZg" type="4016" source="_HTqkkFXeEeOW-JPqZK_EZg" target="_GxJtYFXeEeOW-JPqZK_EZg" lineColor="0">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VqWWQFXeEeOW-JPqZK_EZg" type="6012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VqWWQVXeEeOW-JPqZK_EZg" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_VqWWQlXeEeOW-JPqZK_EZg" type="6013">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VqWWQ1XeEeOW-JPqZK_EZg" y="-20"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VqMlQlXeEeOW-JPqZK_EZg" fontName="Segoe UI"/>
+ <element xmi:type="uml:Usage" href="papyrusNewChild.uml#_VqMlQFXeEeOW-JPqZK_EZg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VqMlQ1XeEeOW-JPqZK_EZg" points="[19, -30, -163, 178]$[32, -209, -150, -1]"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_uhdN0FgPEeOKQOyOw2l5lw" type="PapyrusUMLClassDiagram" name="RefineElement" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_1n0zkFgPEeOKQOyOw2l5lw" type="2097" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1n0zklgPEeOKQOyOw2l5lw" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1n0zk1gPEeOKQOyOw2l5lw" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1n0zlFgPEeOKQOyOw2l5lw" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1n0zlVgPEeOKQOyOw2l5lw" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1n0zllgPEeOKQOyOw2l5lw" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_1n0zl1gPEeOKQOyOw2l5lw" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_1n0zmFgPEeOKQOyOw2l5lw" type="5157"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_1n99gFgPEeOKQOyOw2l5lw" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_1n99gVgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1n99glgPEeOKQOyOw2l5lw"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_-bickFOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1n0zkVgPEeOKQOyOw2l5lw" x="90" y="435" width="141"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_2CmrEFgPEeOKQOyOw2l5lw" type="2097" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2CmrElgPEeOKQOyOw2l5lw" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2CmrE1gPEeOKQOyOw2l5lw" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2CmrFFgPEeOKQOyOw2l5lw" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2CmrFVgPEeOKQOyOw2l5lw" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2CmrFlgPEeOKQOyOw2l5lw" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2CmrF1gPEeOKQOyOw2l5lw" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_2CmrGFgPEeOKQOyOw2l5lw" type="5157"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2CmrGVgPEeOKQOyOw2l5lw" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2CmrGlgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2CmrG1gPEeOKQOyOw2l5lw"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_EPnUAFOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2CmrEVgPEeOKQOyOw2l5lw" x="370" y="435" width="141"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_2XR6kFgPEeOKQOyOw2l5lw" type="2097" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2XR6klgPEeOKQOyOw2l5lw" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2XR6k1gPEeOKQOyOw2l5lw" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2XR6lFgPEeOKQOyOw2l5lw" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2XR6lVgPEeOKQOyOw2l5lw" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_2XR6llgPEeOKQOyOw2l5lw" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_2XR6l1gPEeOKQOyOw2l5lw" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_2XR6mFgPEeOKQOyOw2l5lw" type="5157"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_2XbrkFgPEeOKQOyOw2l5lw" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_2XbrkVgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2XbrklgPEeOKQOyOw2l5lw"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_WZ_ZwFOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2XR6kVgPEeOKQOyOw2l5lw" x="1050" y="430" width="141"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_3CIOYFgPEeOKQOyOw2l5lw" type="2097" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3CIOYlgPEeOKQOyOw2l5lw" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3CIOY1gPEeOKQOyOw2l5lw" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3CIOZFgPEeOKQOyOw2l5lw" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3CIOZVgPEeOKQOyOw2l5lw" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3CIOZlgPEeOKQOyOw2l5lw" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3CIOZ1gPEeOKQOyOw2l5lw" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_3CIOaFgPEeOKQOyOw2l5lw" type="5157"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_3CR_YFgPEeOKQOyOw2l5lw" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_3CR_YVgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3CR_YlgPEeOKQOyOw2l5lw"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_uSMlAFOJEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3CIOYVgPEeOKQOyOw2l5lw" x="655" y="435" width="141"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_3j5esFgPEeOKQOyOw2l5lw" type="2097" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3j5eslgPEeOKQOyOw2l5lw" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3j5es1gPEeOKQOyOw2l5lw" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3j5etFgPEeOKQOyOw2l5lw" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3j5etVgPEeOKQOyOw2l5lw" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3j5etlgPEeOKQOyOw2l5lw" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3j5et1gPEeOKQOyOw2l5lw" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_3j5euFgPEeOKQOyOw2l5lw" type="5157"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_3j5euVgPEeOKQOyOw2l5lw" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_3j5eulgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3j5eu1gPEeOKQOyOw2l5lw"/>
+ </children>
+ <element xmi:type="uml:UseCase" href="papyrusNewChild.uml#_cXBM8FW6EeOhVe6k7yzS3A"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3j5esVgPEeOKQOyOw2l5lw" x="855" y="435" width="141"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__KF0AFgPEeOKQOyOw2l5lw" type="2008" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__KF0AlgPEeOKQOyOw2l5lw" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__KF0A1gPEeOKQOyOw2l5lw" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__KF0BFgPEeOKQOyOw2l5lw" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__KF0BVgPEeOKQOyOw2l5lw" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__KF0BlgPEeOKQOyOw2l5lw" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__KF0B1gPEeOKQOyOw2l5lw" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="__KF0CFgPEeOKQOyOw2l5lw" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KF0CVgPEeOKQOyOw2l5lw" visible="false" type="7017">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KF0ClgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__KF0C1gPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__KF0DFgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KF0DVgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KF0DlgPEeOKQOyOw2l5lw" visible="false" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KF0D1gPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__KF0EFgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__KF0EVgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KF0ElgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KF0E1gPEeOKQOyOw2l5lw" visible="false" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KF0FFgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__KF0FVgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__KF0FlgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KF0F1gPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KPlAFgPEeOKQOyOw2l5lw" visible="false" type="AppliedStereotypeCompartement">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KPlAVgPEeOKQOyOw2l5lw" showTitle="true"/>
+ <element xmi:type="Requirements:Requirement" href="papyrusNewChild.uml#_6Pfk0VOGEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KPlAlgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KPlA1gPEeOKQOyOw2l5lw" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KPlBFgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KPlBVgPEeOKQOyOw2l5lw"/>
+ </children>
+ <element xmi:type="uml:Class" href="papyrusNewChild.uml#_6Pfk0FOGEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KF0AVgPEeOKQOyOw2l5lw" x="270" y="80" width="146" height="66"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__KYu8FgPEeOKQOyOw2l5lw" type="2008" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__KYu8lgPEeOKQOyOw2l5lw" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__KYu81gPEeOKQOyOw2l5lw" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__KYu9FgPEeOKQOyOw2l5lw" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__KYu9VgPEeOKQOyOw2l5lw" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__KYu9lgPEeOKQOyOw2l5lw" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__KYu91gPEeOKQOyOw2l5lw" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="__KYu-FgPEeOKQOyOw2l5lw" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KYu-VgPEeOKQOyOw2l5lw" visible="false" type="7017">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KYu-lgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__KYu-1gPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__KYu_FgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KYu_VgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KYu_lgPEeOKQOyOw2l5lw" visible="false" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KYu_1gPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__KYvAFgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__KYvAVgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KYvAlgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KYvA1gPEeOKQOyOw2l5lw" visible="false" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KYvBFgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__KYvBVgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__KYvBlgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KYvB1gPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__Kif8FgPEeOKQOyOw2l5lw" visible="false" type="AppliedStereotypeCompartement">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__Kif8VgPEeOKQOyOw2l5lw" showTitle="true"/>
+ <element xmi:type="Requirements:Requirement" href="papyrusNewChild.uml#_FQleQVOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__Kif8lgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__Kif81gPEeOKQOyOw2l5lw" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__Kif9FgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__Kif9VgPEeOKQOyOw2l5lw"/>
+ </children>
+ <element xmi:type="uml:Class" href="papyrusNewChild.uml#_FQleQFOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KYu8VgPEeOKQOyOw2l5lw" x="640" y="80" width="146" height="66"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__Kif9lgPEeOKQOyOw2l5lw" type="2008" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__Kif-FgPEeOKQOyOw2l5lw" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__Kif-VgPEeOKQOyOw2l5lw" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__Kif-lgPEeOKQOyOw2l5lw" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__Kif-1gPEeOKQOyOw2l5lw" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__Kif_FgPEeOKQOyOw2l5lw" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__Kif_VgPEeOKQOyOw2l5lw" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="__Kif_lgPEeOKQOyOw2l5lw" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__Kif_1gPEeOKQOyOw2l5lw" visible="false" type="7017">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KigAFgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__KigAVgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__KigAlgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KigA1gPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KigBFgPEeOKQOyOw2l5lw" visible="false" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KigBVgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__KigBlgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__KigB1gPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KigCFgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KigCVgPEeOKQOyOw2l5lw" visible="false" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KigClgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__KigC1gPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__KigDFgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KigDVgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KsQ8FgPEeOKQOyOw2l5lw" visible="false" type="AppliedStereotypeCompartement">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KsQ8VgPEeOKQOyOw2l5lw" showTitle="true"/>
+ <element xmi:type="Requirements:Requirement" href="papyrusNewChild.uml#_cj5MsVOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KsQ8lgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__KsQ81gPEeOKQOyOw2l5lw" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__KsQ9FgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__KsQ9VgPEeOKQOyOw2l5lw"/>
+ </children>
+ <element xmi:type="uml:Class" href="papyrusNewChild.uml#_cj5MsFOIEeOuspyO4PzXCg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__Kif91gPEeOKQOyOw2l5lw" x="995" y="80" width="146" height="66"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__K1a4FgPEeOKQOyOw2l5lw" type="2008" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__K1a4lgPEeOKQOyOw2l5lw" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__K1a41gPEeOKQOyOw2l5lw" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__K1a5FgPEeOKQOyOw2l5lw" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__K1a5VgPEeOKQOyOw2l5lw" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__K1a5lgPEeOKQOyOw2l5lw" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__K1a51gPEeOKQOyOw2l5lw" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="__K1a6FgPEeOKQOyOw2l5lw" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__K1a6VgPEeOKQOyOw2l5lw" visible="false" type="7017">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__K1a6lgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__K1a61gPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__K1a7FgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__K1a7VgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__K1a7lgPEeOKQOyOw2l5lw" visible="false" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__K1a71gPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__K1a8FgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__K1a8VgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__K1a8lgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__K1a81gPEeOKQOyOw2l5lw" visible="false" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__K1a9FgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__K1a9VgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__K1a9lgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__K1a91gPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__K_L4FgPEeOKQOyOw2l5lw" visible="false" type="AppliedStereotypeCompartement">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__K_L4VgPEeOKQOyOw2l5lw" showTitle="true"/>
+ <element xmi:type="Requirements:Requirement" href="papyrusNewChild.uml#_1s7A4FgNEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__K_L4lgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__K_L41gPEeOKQOyOw2l5lw" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__K_L5FgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__K_L5VgPEeOKQOyOw2l5lw"/>
+ </children>
+ <element xmi:type="uml:Class" href="papyrusNewChild.uml#_1sxP4FgNEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__K1a4VgPEeOKQOyOw2l5lw" x="60" y="80" width="146" height="66"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__K_L5lgPEeOKQOyOw2l5lw" type="2008" fontName="Segoe UI" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__K_L6FgPEeOKQOyOw2l5lw" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__K_L6VgPEeOKQOyOw2l5lw" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__K_L6lgPEeOKQOyOw2l5lw" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__K_L61gPEeOKQOyOw2l5lw" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__K_L7FgPEeOKQOyOw2l5lw" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__K_L7VgPEeOKQOyOw2l5lw" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="__K_L7lgPEeOKQOyOw2l5lw" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__K_L71gPEeOKQOyOw2l5lw" visible="false" type="7017">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__K_L8FgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__K_L8VgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__K_L8lgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__K_L81gPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__K_L9FgPEeOKQOyOw2l5lw" visible="false" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__K_L9VgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__K_L9lgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__K_L91gPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__K_L-FgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__K_L-VgPEeOKQOyOw2l5lw" visible="false" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__K_L-lgPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__K_L-1gPEeOKQOyOw2l5lw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__K_L_FgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__K_L_VgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__LIV0FgPEeOKQOyOw2l5lw" visible="false" type="AppliedStereotypeCompartement">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__LIV0VgPEeOKQOyOw2l5lw" showTitle="true"/>
+ <element xmi:type="Requirements:Requirement" href="papyrusNewChild.uml#_Dm5BYVgOEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__LIV0lgPEeOKQOyOw2l5lw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="__LIV01gPEeOKQOyOw2l5lw" visible="false" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="__LIV1FgPEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__LIV1VgPEeOKQOyOw2l5lw"/>
+ </children>
+ <element xmi:type="uml:Class" href="papyrusNewChild.uml#_Dm5BYFgOEeOKQOyOw2l5lw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__K_L51gPEeOKQOyOw2l5lw" x="460" y="80" width="146" height="66"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_uhdN0VgPEeOKQOyOw2l5lw"/>
+ <element xmi:type="uml:Package" href="papyrusNewChild.uml#_JXz5sFOFEeOuspyO4PzXCg"/>
+ <edges xmi:type="notation:Connector" xmi:id="_MEiRMFgQEeOKQOyOw2l5lw" type="4006" source="_2CmrEFgPEeOKQOyOw2l5lw" target="__KF0AFgPEeOKQOyOw2l5lw" routing="Rectilinear" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ME-9IFgQEeOKQOyOw2l5lw" source="Stereotype_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ME-9IVgQEeOKQOyOw2l5lw" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ME-9IlgQEeOKQOyOw2l5lw" key="StereotypeList" value="StandardProfileL2::Refine"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ME-9I1gQEeOKQOyOw2l5lw" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ME-9JFgQEeOKQOyOw2l5lw" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ME-9JVgQEeOKQOyOw2l5lw" key="StereotypePropertyLocation" value="Compartment"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_MErbIlgQEeOKQOyOw2l5lw" visible="false" type="6014">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MErbI1gQEeOKQOyOw2l5lw" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_MErbJFgQEeOKQOyOw2l5lw" visible="false" type="6015">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MErbJVgQEeOKQOyOw2l5lw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_MErbIFgQEeOKQOyOw2l5lw" fontName="Segoe UI"/>
+ <element xmi:type="uml:Abstraction" href="papyrusNewChild.uml#_MEYgMFgQEeOKQOyOw2l5lw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MErbIVgQEeOKQOyOw2l5lw" points="[-5, -25, 78, 329]$[-10, -352, 73, 2]"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_NJ26gFgQEeOKQOyOw2l5lw" type="4006" source="_2CmrEFgPEeOKQOyOw2l5lw" target="__KYu8FgPEeOKQOyOw2l5lw" routing="Rectilinear" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_NKArgVgQEeOKQOyOw2l5lw" source="Stereotype_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_NKArglgQEeOKQOyOw2l5lw" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_NKArg1gQEeOKQOyOw2l5lw" key="StereotypeList" value="StandardProfileL2::Refine"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_NKArhFgQEeOKQOyOw2l5lw" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_NKArhVgQEeOKQOyOw2l5lw" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_NKArhlgQEeOKQOyOw2l5lw" key="StereotypePropertyLocation" value="Compartment"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_NJ26g1gQEeOKQOyOw2l5lw" visible="false" type="6014">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_NJ26hFgQEeOKQOyOw2l5lw" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_NJ26hVgQEeOKQOyOw2l5lw" visible="false" type="6015">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_NJ26hlgQEeOKQOyOw2l5lw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_NJ26gVgQEeOKQOyOw2l5lw" fontName="Segoe UI"/>
+ <element xmi:type="uml:Abstraction" href="papyrusNewChild.uml#_NJtwkFgQEeOKQOyOw2l5lw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_NJ26glgQEeOKQOyOw2l5lw" points="[14, -1, -208, 322]$[14, -146, -208, 177]$[199, -146, -23, 177]$[199, -290, -23, 33]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_euAGsFgQEeOKQOyOw2l5lw" id="(0.8648648648648649,0.02)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_OCZsEVgQEeOKQOyOw2l5lw" type="4006" source="_2XR6kFgPEeOKQOyOw2l5lw" target="__Kif9lgPEeOKQOyOw2l5lw" routing="Rectilinear" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_OCsnAFgQEeOKQOyOw2l5lw" source="Stereotype_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OCsnAVgQEeOKQOyOw2l5lw" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OCsnAlgQEeOKQOyOw2l5lw" key="StereotypeList" value="StandardProfileL2::Refine"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OCsnA1gQEeOKQOyOw2l5lw" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OCsnBFgQEeOKQOyOw2l5lw" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OCsnBVgQEeOKQOyOw2l5lw" key="StereotypePropertyLocation" value="Compartment"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OCZsFFgQEeOKQOyOw2l5lw" visible="false" type="6014">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OCZsFVgQEeOKQOyOw2l5lw" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OCZsFlgQEeOKQOyOw2l5lw" visible="false" type="6015">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OCZsF1gQEeOKQOyOw2l5lw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_OCZsElgQEeOKQOyOw2l5lw" fontName="Segoe UI"/>
+ <element xmi:type="uml:Abstraction" href="papyrusNewChild.uml#_OCZsEFgQEeOKQOyOw2l5lw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OCZsE1gQEeOKQOyOw2l5lw" points="[16, -25, -188, 334]$[283, -358, 79, 1]"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_PEmv8VgQEeOKQOyOw2l5lw" type="4006" source="_2CmrEFgPEeOKQOyOw2l5lw" target="__K_L5lgPEeOKQOyOw2l5lw" routing="Rectilinear" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PEv541gQEeOKQOyOw2l5lw" source="Stereotype_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PEv55FgQEeOKQOyOw2l5lw" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PEv55VgQEeOKQOyOw2l5lw" key="StereotypeList" value="StandardProfileL2::Refine"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PEv55lgQEeOKQOyOw2l5lw" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PEv551gQEeOKQOyOw2l5lw" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PEv56FgQEeOKQOyOw2l5lw" key="StereotypePropertyLocation" value="Compartment"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_PEmv9FgQEeOKQOyOw2l5lw" visible="false" type="6014">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_PEmv9VgQEeOKQOyOw2l5lw" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_PEmv9lgQEeOKQOyOw2l5lw" visible="false" type="6015">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_PEmv91gQEeOKQOyOw2l5lw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_PEmv8lgQEeOKQOyOw2l5lw" fontName="Segoe UI"/>
+ <element xmi:type="uml:Abstraction" href="papyrusNewChild.uml#_PEmv8FgQEeOKQOyOw2l5lw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PEmv81gQEeOKQOyOw2l5lw" points="[17, -13, -462, 334]$[448, -348, -31, -1]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PEv54FgQEeOKQOyOw2l5lw" id="(0.7837837837837838,0.26)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PEv54VgQEeOKQOyOw2l5lw" id="(0.17415730337078653,0.49056603773584906)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_RArbEFgQEeOKQOyOw2l5lw" type="4006" source="_2CmrEFgPEeOKQOyOw2l5lw" target="__K1a4FgPEeOKQOyOw2l5lw" routing="Rectilinear" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_RA1MEVgQEeOKQOyOw2l5lw" source="Stereotype_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_RA1MElgQEeOKQOyOw2l5lw" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_RA1ME1gQEeOKQOyOw2l5lw" key="StereotypeList" value="StandardProfileL2::Refine"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_RA1MFFgQEeOKQOyOw2l5lw" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_RA1MFVgQEeOKQOyOw2l5lw" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_RA1MFlgQEeOKQOyOw2l5lw" key="StereotypePropertyLocation" value="Compartment"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_RArbE1gQEeOKQOyOw2l5lw" visible="false" type="6014">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RArbFFgQEeOKQOyOw2l5lw" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_RArbFVgQEeOKQOyOw2l5lw" visible="false" type="6015">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RArbFlgQEeOKQOyOw2l5lw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_RArbEVgQEeOKQOyOw2l5lw" fontName="Segoe UI"/>
+ <element xmi:type="uml:Abstraction" href="papyrusNewChild.uml#_RAhqEFgQEeOKQOyOw2l5lw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_RArbElgQEeOKQOyOw2l5lw" points="[-16, -25, 291, 322]$[-16, -140, 291, 207]$[-270, -140, 37, 207]$[-270, -314, 37, 33]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_qOIiAFgQEeOKQOyOw2l5lw" id="(0.15602836879432624,0.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_VQC-gVgQEeOKQOyOw2l5lw" type="4006" source="_3CIOYFgPEeOKQOyOw2l5lw" target="__KYu8FgPEeOKQOyOw2l5lw" routing="Rectilinear" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_VQV5cFgQEeOKQOyOw2l5lw" source="Stereotype_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_VQV5cVgQEeOKQOyOw2l5lw" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_VQV5clgQEeOKQOyOw2l5lw" key="StereotypeList" value="StandardProfileL2::Refine"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_VQV5c1gQEeOKQOyOw2l5lw" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_VQV5dFgQEeOKQOyOw2l5lw" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_VQV5dVgQEeOKQOyOw2l5lw" key="StereotypePropertyLocation" value="Compartment"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_VQC-hFgQEeOKQOyOw2l5lw" visible="false" type="6014">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VQC-hVgQEeOKQOyOw2l5lw" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_VQC-hlgQEeOKQOyOw2l5lw" visible="false" type="6015">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VQC-h1gQEeOKQOyOw2l5lw" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VQC-glgQEeOKQOyOw2l5lw" fontName="Segoe UI"/>
+ <element xmi:type="uml:Abstraction" href="papyrusNewChild.uml#_VQC-gFgQEeOKQOyOw2l5lw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VQC-g1gQEeOKQOyOw2l5lw" points="[0, -25, -15, 306]$[0, -314, -15, 17]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VQMIcFgQEeOKQOyOw2l5lw" id="(0.6896551724137931,0.7547169811320755)"/>
+ </edges>
+ </notation:Diagram>
+</xmi:XMI>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.uml b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.uml
new file mode 100644
index 00000000000..291c949fabb
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/resource/papyrusNewChild.uml
@@ -0,0 +1,111 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20110701" xmlns:xmi="http://www.omg.org/spec/XMI/20110701" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Requirements="http://www.eclipse.org/papyrus/0.7.0/SysML/Requirements" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:l2="http://www.eclipse.org/uml2/4.0.0/UML/Profile/L2" xmlns:uml="http://www.eclipse.org/uml2/4.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/0.7.0/SysML/Requirements http://www.eclipse.org/papyrus/0.7.0/SysML#//requirements">
+ <uml:Model xmi:id="_a0QCwFOCEeOE6bh9v5dYKg" name="PapyrusNewChild">
+ <packagedElement xmi:type="uml:Package" xmi:id="_IqDb0FOFEeOuspyO4PzXCg" name="Requirements">
+ <packagedElement xmi:type="uml:Class" xmi:id="_6Pfk0FOGEeOuspyO4PzXCg" name="AddNewChild"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_FQleQFOIEeOuspyO4PzXCg" name="HideElement"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_cj5MsFOIEeOuspyO4PzXCg" name="newChildFromProfile"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_1sxP4FgNEeOKQOyOw2l5lw" name="newChildMenuDisplay"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Dm5BYFgOEeOKQOyOw2l5lw" name="RoleAndElementCreation"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_JXz5sFOFEeOuspyO4PzXCg" clientDependency="_T6P9sFOFEeOuspyO4PzXCg" name="UseCases">
+ <packagedElement xmi:type="uml:Abstraction" xmi:id="_T6P9sFOFEeOuspyO4PzXCg" name="Abstraction1" client="_JXz5sFOFEeOuspyO4PzXCg" supplier="_IqDb0FOFEeOuspyO4PzXCg"/>
+ <packagedElement xmi:type="uml:Component" xmi:id="_uxF88FOIEeOuspyO4PzXCg" name="AddNewChild" useCase="_-bickFOIEeOuspyO4PzXCg _EPnUAFOJEeOuspyO4PzXCg _WZ_ZwFOJEeOuspyO4PzXCg _uSMlAFOJEeOuspyO4PzXCg _cXBM8FW6EeOhVe6k7yzS3A">
+ <ownedUseCase xmi:type="uml:UseCase" xmi:id="_-bickFOIEeOuspyO4PzXCg" name="UseCreateMenu" subject="_uxF88FOIEeOuspyO4PzXCg"/>
+ <ownedUseCase xmi:type="uml:UseCase" xmi:id="_EPnUAFOJEeOuspyO4PzXCg" clientDependency="_MEYgMFgQEeOKQOyOw2l5lw _NJtwkFgQEeOKQOyOw2l5lw _PEmv8FgQEeOKQOyOw2l5lw _RAhqEFgQEeOKQOyOw2l5lw" name="Create or modify ElementCreationModel" subject="_uxF88FOIEeOuspyO4PzXCg">
+ <extensionPoint xmi:type="uml:ExtensionPoint" xmi:id="_lYRLAVW6EeOhVe6k7yzS3A" name="point"/>
+ <include xmi:type="uml:Include" xmi:id="_aEB2oFW6EeOhVe6k7yzS3A" addition="_uSMlAFOJEeOuspyO4PzXCg"/>
+ </ownedUseCase>
+ <ownedUseCase xmi:type="uml:UseCase" xmi:id="_WZ_ZwFOJEeOuspyO4PzXCg" clientDependency="_OCZsEFgQEeOKQOyOw2l5lw" name="Generate &quot;ElementCreationModel&quot; from a profile" subject="_uxF88FOIEeOuspyO4PzXCg"/>
+ <ownedUseCase xmi:type="uml:UseCase" xmi:id="_uSMlAFOJEeOuspyO4PzXCg" clientDependency="_VQC-gFgQEeOKQOyOw2l5lw" name="Hide, change order or add submenus" subject="_uxF88FOIEeOuspyO4PzXCg"/>
+ <ownedUseCase xmi:type="uml:UseCase" xmi:id="_cXBM8FW6EeOhVe6k7yzS3A" name="Create or modify ElementCreationModel at runtime thanks to a GUI" subject="_uxF88FOIEeOuspyO4PzXCg">
+ <extend xmi:type="uml:Extend" xmi:id="_lX9pAFW6EeOhVe6k7yzS3A" extendedCase="_EPnUAFOJEeOuspyO4PzXCg" extensionLocation="_lYRLAVW6EeOhVe6k7yzS3A"/>
+ </ownedUseCase>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Actor" xmi:id="_zYtoUFOIEeOuspyO4PzXCg" name="ModelDesigner"/>
+ <packagedElement xmi:type="uml:Actor" xmi:id="_3P0cwFOIEeOuspyO4PzXCg" name="PapyrusCustomizer"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_DTg4IFOJEeOuspyO4PzXCg" name="A_modeldesigner_usecreatemenu" memberEnd="_DTg4IVOJEeOuspyO4PzXCg _DTg4JFOJEeOuspyO4PzXCg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_DTg4IVOJEeOuspyO4PzXCg" name="modeldesigner" type="_zYtoUFOIEeOuspyO4PzXCg" association="_DTg4IFOJEeOuspyO4PzXCg">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_DTg4IlOJEeOuspyO4PzXCg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_DTg4I1OJEeOuspyO4PzXCg" value="1"/>
+ </ownedEnd>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_DTg4JFOJEeOuspyO4PzXCg" name="usecreatemenu" type="_-bickFOIEeOuspyO4PzXCg" association="_DTg4IFOJEeOuspyO4PzXCg">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_DTg4JVOJEeOuspyO4PzXCg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_DTg4JlOJEeOuspyO4PzXCg" value="1"/>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_PBVKIFOJEeOuspyO4PzXCg" name="A_papyruscustomizer_create or modify elementcreationmodel" memberEnd="_PBVKIVOJEeOuspyO4PzXCg _PBVKJFOJEeOuspyO4PzXCg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_PBVKIVOJEeOuspyO4PzXCg" name="papyruscustomizer" type="_3P0cwFOIEeOuspyO4PzXCg" association="_PBVKIFOJEeOuspyO4PzXCg">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PBVKIlOJEeOuspyO4PzXCg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PBVKI1OJEeOuspyO4PzXCg" value="1"/>
+ </ownedEnd>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_PBVKJFOJEeOuspyO4PzXCg" name="create or modify elementcreationmodel" type="_EPnUAFOJEeOuspyO4PzXCg" association="_PBVKIFOJEeOuspyO4PzXCg">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PBVKJVOJEeOuspyO4PzXCg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PBVKJlOJEeOuspyO4PzXCg" value="1"/>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_gmg4IFOJEeOuspyO4PzXCg" name="A_modeldesigner_generate element creation model" memberEnd="_gmg4IVOJEeOuspyO4PzXCg _gmg4JFOJEeOuspyO4PzXCg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_gmg4IVOJEeOuspyO4PzXCg" name="modeldesigner" type="_zYtoUFOIEeOuspyO4PzXCg" association="_gmg4IFOJEeOuspyO4PzXCg">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gmg4IlOJEeOuspyO4PzXCg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_gmg4I1OJEeOuspyO4PzXCg" value="1"/>
+ </ownedEnd>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_gmg4JFOJEeOuspyO4PzXCg" name="generate element creation model" type="_WZ_ZwFOJEeOuspyO4PzXCg" association="_gmg4IFOJEeOuspyO4PzXCg">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gmg4JVOJEeOuspyO4PzXCg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_gmg4JlOJEeOuspyO4PzXCg" value="1"/>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:DataType" xmi:id="_kkQk4FgPEeOKQOyOw2l5lw" name="DataType"/>
+ <packagedElement xmi:type="uml:Abstraction" xmi:id="_MEYgMFgQEeOKQOyOw2l5lw" name="Refine1" client="_EPnUAFOJEeOuspyO4PzXCg" supplier="_6Pfk0FOGEeOuspyO4PzXCg"/>
+ <packagedElement xmi:type="uml:Abstraction" xmi:id="_NJtwkFgQEeOKQOyOw2l5lw" name="Refine2" client="_EPnUAFOJEeOuspyO4PzXCg" supplier="_FQleQFOIEeOuspyO4PzXCg"/>
+ <packagedElement xmi:type="uml:Abstraction" xmi:id="_OCZsEFgQEeOKQOyOw2l5lw" name="Refine3" client="_WZ_ZwFOJEeOuspyO4PzXCg" supplier="_cj5MsFOIEeOuspyO4PzXCg"/>
+ <packagedElement xmi:type="uml:Abstraction" xmi:id="_PEmv8FgQEeOKQOyOw2l5lw" name="Refine4" client="_EPnUAFOJEeOuspyO4PzXCg" supplier="_Dm5BYFgOEeOKQOyOw2l5lw"/>
+ <packagedElement xmi:type="uml:Abstraction" xmi:id="_RAhqEFgQEeOKQOyOw2l5lw" name="Refine5" client="_EPnUAFOJEeOuspyO4PzXCg" supplier="_1sxP4FgNEeOKQOyOw2l5lw"/>
+ <packagedElement xmi:type="uml:Abstraction" xmi:id="_VQC-gFgQEeOKQOyOw2l5lw" name="Refine6" client="_uSMlAFOJEeOuspyO4PzXCg" supplier="_FQleQFOIEeOuspyO4PzXCg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_JnbDAFOFEeOuspyO4PzXCg" clientDependency="_UqVW0FOFEeOuspyO4PzXCg" name="Design">
+ <packagedElement xmi:type="uml:Abstraction" xmi:id="_UqVW0FOFEeOuspyO4PzXCg" name="Abstraction1" client="_JnbDAFOFEeOuspyO4PzXCg" supplier="_JXz5sFOFEeOuspyO4PzXCg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_Nc3DgFOFEeOuspyO4PzXCg" clientDependency="_VkwXsFOFEeOuspyO4PzXCg" name="Tests">
+ <packagedElement xmi:type="uml:Dependency" xmi:id="_VkwXsFOFEeOuspyO4PzXCg" name="Dependency1" client="_Nc3DgFOFEeOuspyO4PzXCg" supplier="_JXz5sFOFEeOuspyO4PzXCg"/>
+ <packagedElement xmi:type="uml:Package" xmi:id="_fMeMwFXeEeOW-JPqZK_EZg" name="Test AboutCreateModifyElementCreationModel">
+ <packagedElement xmi:type="uml:UseCase" xmi:id="_HTgzkFXeEeOW-JPqZK_EZg" clientDependency="_VqMlQFXeEeOW-JPqZK_EZg" name="Create a model without nothing"/>
+ <packagedElement xmi:type="uml:UseCase" xmi:id="_KdZ8sFXeEeOW-JPqZK_EZg" clientDependency="_VIIaAFXeEeOW-JPqZK_EZg" name="createa model with only a root"/>
+ <packagedElement xmi:type="uml:UseCase" xmi:id="_M6gRQFXeEeOW-JPqZK_EZg" clientDependency="_TYirsFXeEeOW-JPqZK_EZg" name="create a model with elementType as String"/>
+ <packagedElement xmi:type="uml:Usage" xmi:id="_TYirsFXeEeOW-JPqZK_EZg" name="Usage4" client="_M6gRQFXeEeOW-JPqZK_EZg" supplier="_EPnUAFOJEeOuspyO4PzXCg"/>
+ <packagedElement xmi:type="uml:Usage" xmi:id="_VIIaAFXeEeOW-JPqZK_EZg" name="Usage5" client="_KdZ8sFXeEeOW-JPqZK_EZg" supplier="_EPnUAFOJEeOuspyO4PzXCg"/>
+ <packagedElement xmi:type="uml:Usage" xmi:id="_VqMlQFXeEeOW-JPqZK_EZg" name="Usage6" client="_HTgzkFXeEeOW-JPqZK_EZg" supplier="_EPnUAFOJEeOuspyO4PzXCg"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_lII58FXeEeOW-JPqZK_EZg" name="TestUseCreateMenu">
+ <packagedElement xmi:type="uml:UseCase" xmi:id="_rxKR0FXdEeOW-JPqZK_EZg" clientDependency="_xpiacFXdEeOW-JPqZK_EZg" name="Use a menu from a model without ElementType model"/>
+ <packagedElement xmi:type="uml:Usage" xmi:id="_xpiacFXdEeOW-JPqZK_EZg" name="Usage1" client="_rxKR0FXdEeOW-JPqZK_EZg" supplier="_-bickFOIEeOuspyO4PzXCg"/>
+ <packagedElement xmi:type="uml:UseCase" xmi:id="_1vrJYFXdEeOW-JPqZK_EZg" clientDependency="_-0Vn0FXdEeOW-JPqZK_EZg" name="Use a menu with elementType model"/>
+ <packagedElement xmi:type="uml:UseCase" xmi:id="_4nRBkFXdEeOW-JPqZK_EZg" clientDependency="_9Yi_QFXdEeOW-JPqZK_EZg" name="Use a menu with stereotyped element"/>
+ <packagedElement xmi:type="uml:Usage" xmi:id="_9Yi_QFXdEeOW-JPqZK_EZg" name="Usage2" client="_4nRBkFXdEeOW-JPqZK_EZg" supplier="_-bickFOIEeOuspyO4PzXCg"/>
+ <packagedElement xmi:type="uml:Usage" xmi:id="_-0Vn0FXdEeOW-JPqZK_EZg" name="Usage3" client="_1vrJYFXdEeOW-JPqZK_EZg" supplier="_-bickFOIEeOuspyO4PzXCg"/>
+ </packagedElement>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_d8uIMFOFEeOuspyO4PzXCg">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_d9I-8FOFEeOuspyO4PzXCg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/0.7.0/SysML#//requirements"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://SysML_PROFILES/SysML.profile.uml#_OOJC4LX8EduFmqQsrNB9lw"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_e5iVwFOFEeOuspyO4PzXCg">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_e53s8FOFEeOuspyO4PzXCg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/uml2/4.0.0/UML/Profile/L2#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/StandardL2.profile.uml#_0"/>
+ </profileApplication>
+ </uml:Model>
+ <Requirements:Requirement xmi:id="_6Pfk0VOGEeOuspyO4PzXCg" text="Papyrus shall add in the menu new child for new customized elements by using extended type" id="newChild001" base_Class="_6Pfk0FOGEeOuspyO4PzXCg"/>
+ <Requirements:Requirement xmi:id="_FQleQVOIEeOuspyO4PzXCg" text="Papyrus shall not display all UML or SysML element creation" id="newChild002" base_Class="_FQleQFOIEeOuspyO4PzXCg"/>
+ <Requirements:Requirement xmi:id="_cj5MsVOIEeOuspyO4PzXCg" text="Papyrus shall add the creation of new element from a subset of profile" id="newChild003" base_Class="_cj5MsFOIEeOuspyO4PzXCg"/>
+ <Requirements:Requirement xmi:id="_1s7A4FgNEeOKQOyOw2l5lw" text="Papyrus shall be able to associated icons to folder or creation menu" id="newChild004" base_Class="_1sxP4FgNEeOKQOyOw2l5lw"/>
+ <Requirements:Requirement xmi:id="_Dm5BYVgOEeOKQOyOw2l5lw" text="When an element can created from several roles for a container, Papyrus shall let the possibility to choose the role or to let to the possibility to be created from all role." id="newChild005" base_Class="_Dm5BYFgOEeOKQOyOw2l5lw"/>
+ <l2:Refine xmi:id="_ME1MIFgQEeOKQOyOw2l5lw" base_Abstraction="_MEYgMFgQEeOKQOyOw2l5lw"/>
+ <l2:Refine xmi:id="_NKArgFgQEeOKQOyOw2l5lw" base_Abstraction="_NJtwkFgQEeOKQOyOw2l5lw"/>
+ <l2:Refine xmi:id="_OCi2AFgQEeOKQOyOw2l5lw" base_Abstraction="_OCZsEFgQEeOKQOyOw2l5lw"/>
+ <l2:Refine xmi:id="_PEv54lgQEeOKQOyOw2l5lw" base_Abstraction="_PEmv8FgQEeOKQOyOw2l5lw"/>
+ <l2:Refine xmi:id="_RA1MEFgQEeOKQOyOw2l5lw" base_Abstraction="_RAhqEFgQEeOKQOyOw2l5lw"/>
+ <l2:Refine xmi:id="_VQMIcVgQEeOKQOyOw2l5lw" base_Abstraction="_VQC-gFgQEeOKQOyOw2l5lw"/>
+</xmi:XMI>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/schema/org.eclipse.papyrus.infra.newchild.exsd b/plugins/infra/org.eclipse.papyrus.infra.newchild/schema/org.eclipse.papyrus.infra.newchild.exsd
new file mode 100644
index 00000000000..6771f72a294
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/schema/org.eclipse.papyrus.infra.newchild.exsd
@@ -0,0 +1,107 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.infra.newchild" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.infra.newchild" id="org.eclipse.papyrus.infra.newchild" name="ElementCreationMenuModel"/>
+ </appinfo>
+ <documentation>
+ [Enter description of this extension point.]
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="menuCreationModel" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="menuCreationModel">
+ <annotation>
+ <documentation>
+ this extension point is the wapper to reference a creation element model
+ </documentation>
+ </annotation>
+ <complexType>
+ <attribute name="model" type="string" use="required">
+ <annotation>
+ <documentation>
+ Add a model that represents the creation menu of elements
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="resource"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ [Enter the first release in which this extension point appears.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="examples"/>
+ </appinfo>
+ <documentation>
+ [Enter extension point usage example here.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="apiinfo"/>
+ </appinfo>
+ <documentation>
+ [Enter API information here.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="implementation"/>
+ </appinfo>
+ <documentation>
+ [Enter information about supplied implementation of this extension point.]
+ </documentation>
+ </annotation>
+
+
+</schema>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/CreationMenu.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/CreationMenu.java
new file mode 100644
index 00000000000..e1b780ea4cd
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/CreationMenu.java
@@ -0,0 +1,104 @@
+/**
+ */
+package ElementCreationMenuModel;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Creation Menu</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link ElementCreationMenuModel.CreationMenu#getElementTypeIdRef <em>Element Type Id Ref</em>}</li>
+ * <li>{@link ElementCreationMenuModel.CreationMenu#getRole <em>Role</em>}</li>
+ * <li>{@link ElementCreationMenuModel.CreationMenu#isDisplayAllRoles <em>Display All Roles</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage#getCreationMenu()
+ * @model
+ * @generated
+ */
+public interface CreationMenu extends Menu {
+ /**
+ * Returns the value of the '<em><b>Element Type Id Ref</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Element Type Id Ref</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Element Type Id Ref</em>' attribute.
+ * @see #setElementTypeIdRef(String)
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage#getCreationMenu_ElementTypeIdRef()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ String getElementTypeIdRef();
+
+ /**
+ * Sets the value of the '{@link ElementCreationMenuModel.CreationMenu#getElementTypeIdRef <em>Element Type Id Ref</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Element Type Id Ref</em>' attribute.
+ * @see #getElementTypeIdRef()
+ * @generated
+ */
+ void setElementTypeIdRef(String value);
+
+ /**
+ * Returns the value of the '<em><b>Role</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Role</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Role</em>' attribute.
+ * @see #setRole(String)
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage#getCreationMenu_Role()
+ * @model ordered="false"
+ * @generated
+ */
+ String getRole();
+
+ /**
+ * Sets the value of the '{@link ElementCreationMenuModel.CreationMenu#getRole <em>Role</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Role</em>' attribute.
+ * @see #getRole()
+ * @generated
+ */
+ void setRole(String value);
+
+ /**
+ * Returns the value of the '<em><b>Display All Roles</b></em>' attribute.
+ * The default value is <code>"true"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Display All Roles</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Display All Roles</em>' attribute.
+ * @see #setDisplayAllRoles(boolean)
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage#getCreationMenu_DisplayAllRoles()
+ * @model default="true" required="true" ordered="false"
+ * @generated
+ */
+ boolean isDisplayAllRoles();
+
+ /**
+ * Sets the value of the '{@link ElementCreationMenuModel.CreationMenu#isDisplayAllRoles <em>Display All Roles</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Display All Roles</em>' attribute.
+ * @see #isDisplayAllRoles()
+ * @generated
+ */
+ void setDisplayAllRoles(boolean value);
+
+} // CreationMenu
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/ElementCreationMenuModelFactory.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/ElementCreationMenuModelFactory.java
new file mode 100644
index 00000000000..eb8020a2f09
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/ElementCreationMenuModelFactory.java
@@ -0,0 +1,51 @@
+/**
+ */
+package ElementCreationMenuModel;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage
+ * @generated
+ */
+public interface ElementCreationMenuModelFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ElementCreationMenuModelFactory eINSTANCE = ElementCreationMenuModel.impl.ElementCreationMenuModelFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Folder</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Folder</em>'.
+ * @generated
+ */
+ Folder createFolder();
+
+ /**
+ * Returns a new object of class '<em>Creation Menu</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Creation Menu</em>'.
+ * @generated
+ */
+ CreationMenu createCreationMenu();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ElementCreationMenuModelPackage getElementCreationMenuModelPackage();
+
+} //ElementCreationMenuModelFactory
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/ElementCreationMenuModelPackage.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/ElementCreationMenuModelPackage.java
new file mode 100644
index 00000000000..acf3e943e89
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/ElementCreationMenuModelPackage.java
@@ -0,0 +1,433 @@
+/**
+ */
+package ElementCreationMenuModel;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.ElementCreationMenuModelFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface ElementCreationMenuModelPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "ElementCreationMenuModel";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://ElementCreationMenuModel";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "ElementCreationMenuModel";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ElementCreationMenuModelPackage eINSTANCE = ElementCreationMenuModel.impl.ElementCreationMenuModelPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link ElementCreationMenuModel.impl.MenuImpl <em>Menu</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.impl.MenuImpl
+ * @see ElementCreationMenuModel.impl.ElementCreationMenuModelPackageImpl#getMenu()
+ * @generated
+ */
+ int MENU = 1;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MENU__LABEL = 0;
+
+ /**
+ * The feature id for the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MENU__ICON = 1;
+
+ /**
+ * The number of structural features of the '<em>Menu</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MENU_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Menu</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MENU_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link ElementCreationMenuModel.impl.FolderImpl <em>Folder</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.impl.FolderImpl
+ * @see ElementCreationMenuModel.impl.ElementCreationMenuModelPackageImpl#getFolder()
+ * @generated
+ */
+ int FOLDER = 0;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLDER__LABEL = MENU__LABEL;
+
+ /**
+ * The feature id for the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLDER__ICON = MENU__ICON;
+
+ /**
+ * The feature id for the '<em><b>Menu</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLDER__MENU = MENU_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Folder</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLDER_FEATURE_COUNT = MENU_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Folder</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FOLDER_OPERATION_COUNT = MENU_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link ElementCreationMenuModel.impl.CreationMenuImpl <em>Creation Menu</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.impl.CreationMenuImpl
+ * @see ElementCreationMenuModel.impl.ElementCreationMenuModelPackageImpl#getCreationMenu()
+ * @generated
+ */
+ int CREATION_MENU = 2;
+
+ /**
+ * The feature id for the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CREATION_MENU__LABEL = MENU__LABEL;
+
+ /**
+ * The feature id for the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CREATION_MENU__ICON = MENU__ICON;
+
+ /**
+ * The feature id for the '<em><b>Element Type Id Ref</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CREATION_MENU__ELEMENT_TYPE_ID_REF = MENU_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Role</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CREATION_MENU__ROLE = MENU_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Display All Roles</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CREATION_MENU__DISPLAY_ALL_ROLES = MENU_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>Creation Menu</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CREATION_MENU_FEATURE_COUNT = MENU_FEATURE_COUNT + 3;
+
+ /**
+ * The number of operations of the '<em>Creation Menu</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CREATION_MENU_OPERATION_COUNT = MENU_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link ElementCreationMenuModel.Folder <em>Folder</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Folder</em>'.
+ * @see ElementCreationMenuModel.Folder
+ * @generated
+ */
+ EClass getFolder();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link ElementCreationMenuModel.Folder#getMenu <em>Menu</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Menu</em>'.
+ * @see ElementCreationMenuModel.Folder#getMenu()
+ * @see #getFolder()
+ * @generated
+ */
+ EReference getFolder_Menu();
+
+ /**
+ * Returns the meta object for class '{@link ElementCreationMenuModel.Menu <em>Menu</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Menu</em>'.
+ * @see ElementCreationMenuModel.Menu
+ * @generated
+ */
+ EClass getMenu();
+
+ /**
+ * Returns the meta object for the attribute '{@link ElementCreationMenuModel.Menu#getLabel <em>Label</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Label</em>'.
+ * @see ElementCreationMenuModel.Menu#getLabel()
+ * @see #getMenu()
+ * @generated
+ */
+ EAttribute getMenu_Label();
+
+ /**
+ * Returns the meta object for the attribute '{@link ElementCreationMenuModel.Menu#getIcon <em>Icon</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Icon</em>'.
+ * @see ElementCreationMenuModel.Menu#getIcon()
+ * @see #getMenu()
+ * @generated
+ */
+ EAttribute getMenu_Icon();
+
+ /**
+ * Returns the meta object for class '{@link ElementCreationMenuModel.CreationMenu <em>Creation Menu</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Creation Menu</em>'.
+ * @see ElementCreationMenuModel.CreationMenu
+ * @generated
+ */
+ EClass getCreationMenu();
+
+ /**
+ * Returns the meta object for the attribute '{@link ElementCreationMenuModel.CreationMenu#getElementTypeIdRef <em>Element Type Id Ref</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Element Type Id Ref</em>'.
+ * @see ElementCreationMenuModel.CreationMenu#getElementTypeIdRef()
+ * @see #getCreationMenu()
+ * @generated
+ */
+ EAttribute getCreationMenu_ElementTypeIdRef();
+
+ /**
+ * Returns the meta object for the attribute '{@link ElementCreationMenuModel.CreationMenu#getRole <em>Role</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Role</em>'.
+ * @see ElementCreationMenuModel.CreationMenu#getRole()
+ * @see #getCreationMenu()
+ * @generated
+ */
+ EAttribute getCreationMenu_Role();
+
+ /**
+ * Returns the meta object for the attribute '{@link ElementCreationMenuModel.CreationMenu#isDisplayAllRoles <em>Display All Roles</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Display All Roles</em>'.
+ * @see ElementCreationMenuModel.CreationMenu#isDisplayAllRoles()
+ * @see #getCreationMenu()
+ * @generated
+ */
+ EAttribute getCreationMenu_DisplayAllRoles();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ElementCreationMenuModelFactory getElementCreationMenuModelFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link ElementCreationMenuModel.impl.FolderImpl <em>Folder</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.impl.FolderImpl
+ * @see ElementCreationMenuModel.impl.ElementCreationMenuModelPackageImpl#getFolder()
+ * @generated
+ */
+ EClass FOLDER = eINSTANCE.getFolder();
+
+ /**
+ * The meta object literal for the '<em><b>Menu</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FOLDER__MENU = eINSTANCE.getFolder_Menu();
+
+ /**
+ * The meta object literal for the '{@link ElementCreationMenuModel.impl.MenuImpl <em>Menu</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.impl.MenuImpl
+ * @see ElementCreationMenuModel.impl.ElementCreationMenuModelPackageImpl#getMenu()
+ * @generated
+ */
+ EClass MENU = eINSTANCE.getMenu();
+
+ /**
+ * The meta object literal for the '<em><b>Label</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute MENU__LABEL = eINSTANCE.getMenu_Label();
+
+ /**
+ * The meta object literal for the '<em><b>Icon</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute MENU__ICON = eINSTANCE.getMenu_Icon();
+
+ /**
+ * The meta object literal for the '{@link ElementCreationMenuModel.impl.CreationMenuImpl <em>Creation Menu</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.impl.CreationMenuImpl
+ * @see ElementCreationMenuModel.impl.ElementCreationMenuModelPackageImpl#getCreationMenu()
+ * @generated
+ */
+ EClass CREATION_MENU = eINSTANCE.getCreationMenu();
+
+ /**
+ * The meta object literal for the '<em><b>Element Type Id Ref</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CREATION_MENU__ELEMENT_TYPE_ID_REF = eINSTANCE.getCreationMenu_ElementTypeIdRef();
+
+ /**
+ * The meta object literal for the '<em><b>Role</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CREATION_MENU__ROLE = eINSTANCE.getCreationMenu_Role();
+
+ /**
+ * The meta object literal for the '<em><b>Display All Roles</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CREATION_MENU__DISPLAY_ALL_ROLES = eINSTANCE.getCreationMenu_DisplayAllRoles();
+
+ }
+
+} //ElementCreationMenuModelPackage
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/Folder.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/Folder.java
new file mode 100644
index 00000000000..b47cabe596a
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/Folder.java
@@ -0,0 +1,40 @@
+/**
+ */
+package ElementCreationMenuModel;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Folder</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link ElementCreationMenuModel.Folder#getMenu <em>Menu</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage#getFolder()
+ * @model
+ * @generated
+ */
+public interface Folder extends Menu {
+ /**
+ * Returns the value of the '<em><b>Menu</b></em>' containment reference list.
+ * The list contents are of type {@link ElementCreationMenuModel.Menu}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Menu</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Menu</em>' containment reference list.
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage#getFolder_Menu()
+ * @model containment="true"
+ * @generated
+ */
+ EList<Menu> getMenu();
+
+} // Folder
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/Menu.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/Menu.java
new file mode 100644
index 00000000000..90decadf714
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/Menu.java
@@ -0,0 +1,77 @@
+/**
+ */
+package ElementCreationMenuModel;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Menu</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link ElementCreationMenuModel.Menu#getLabel <em>Label</em>}</li>
+ * <li>{@link ElementCreationMenuModel.Menu#getIcon <em>Icon</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage#getMenu()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Menu extends EObject {
+ /**
+ * Returns the value of the '<em><b>Label</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Label</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Label</em>' attribute.
+ * @see #setLabel(String)
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage#getMenu_Label()
+ * @model required="true" ordered="false"
+ * @generated
+ */
+ String getLabel();
+
+ /**
+ * Sets the value of the '{@link ElementCreationMenuModel.Menu#getLabel <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Label</em>' attribute.
+ * @see #getLabel()
+ * @generated
+ */
+ void setLabel(String value);
+
+ /**
+ * Returns the value of the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Icon</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Icon</em>' attribute.
+ * @see #setIcon(String)
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage#getMenu_Icon()
+ * @model ordered="false"
+ * @generated
+ */
+ String getIcon();
+
+ /**
+ * Sets the value of the '{@link ElementCreationMenuModel.Menu#getIcon <em>Icon</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Icon</em>' attribute.
+ * @see #getIcon()
+ * @generated
+ */
+ void setIcon(String value);
+
+} // Menu
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/CreationMenuImpl.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/CreationMenuImpl.java
new file mode 100644
index 00000000000..3edbf80c1ab
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/CreationMenuImpl.java
@@ -0,0 +1,270 @@
+/**
+ */
+package ElementCreationMenuModel.impl;
+
+import ElementCreationMenuModel.CreationMenu;
+import ElementCreationMenuModel.ElementCreationMenuModelPackage;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Creation Menu</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link ElementCreationMenuModel.impl.CreationMenuImpl#getElementTypeIdRef <em>Element Type Id Ref</em>}</li>
+ * <li>{@link ElementCreationMenuModel.impl.CreationMenuImpl#getRole <em>Role</em>}</li>
+ * <li>{@link ElementCreationMenuModel.impl.CreationMenuImpl#isDisplayAllRoles <em>Display All Roles</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CreationMenuImpl extends MenuImpl implements CreationMenu {
+ /**
+ * The default value of the '{@link #getElementTypeIdRef() <em>Element Type Id Ref</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getElementTypeIdRef()
+ * @generated
+ * @ordered
+ */
+ protected static final String ELEMENT_TYPE_ID_REF_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getElementTypeIdRef() <em>Element Type Id Ref</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getElementTypeIdRef()
+ * @generated
+ * @ordered
+ */
+ protected String elementTypeIdRef = ELEMENT_TYPE_ID_REF_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getRole() <em>Role</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRole()
+ * @generated
+ * @ordered
+ */
+ protected static final String ROLE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getRole() <em>Role</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRole()
+ * @generated
+ * @ordered
+ */
+ protected String role = ROLE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isDisplayAllRoles() <em>Display All Roles</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isDisplayAllRoles()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean DISPLAY_ALL_ROLES_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isDisplayAllRoles() <em>Display All Roles</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isDisplayAllRoles()
+ * @generated
+ * @ordered
+ */
+ protected boolean displayAllRoles = DISPLAY_ALL_ROLES_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CreationMenuImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ElementCreationMenuModelPackage.Literals.CREATION_MENU;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getElementTypeIdRef() {
+ return elementTypeIdRef;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setElementTypeIdRef(String newElementTypeIdRef) {
+ String oldElementTypeIdRef = elementTypeIdRef;
+ elementTypeIdRef = newElementTypeIdRef;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementCreationMenuModelPackage.CREATION_MENU__ELEMENT_TYPE_ID_REF, oldElementTypeIdRef, elementTypeIdRef));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getRole() {
+ return role;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRole(String newRole) {
+ String oldRole = role;
+ role = newRole;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementCreationMenuModelPackage.CREATION_MENU__ROLE, oldRole, role));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isDisplayAllRoles() {
+ return displayAllRoles;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDisplayAllRoles(boolean newDisplayAllRoles) {
+ boolean oldDisplayAllRoles = displayAllRoles;
+ displayAllRoles = newDisplayAllRoles;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementCreationMenuModelPackage.CREATION_MENU__DISPLAY_ALL_ROLES, oldDisplayAllRoles, displayAllRoles));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.CREATION_MENU__ELEMENT_TYPE_ID_REF:
+ return getElementTypeIdRef();
+ case ElementCreationMenuModelPackage.CREATION_MENU__ROLE:
+ return getRole();
+ case ElementCreationMenuModelPackage.CREATION_MENU__DISPLAY_ALL_ROLES:
+ return isDisplayAllRoles();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.CREATION_MENU__ELEMENT_TYPE_ID_REF:
+ setElementTypeIdRef((String)newValue);
+ return;
+ case ElementCreationMenuModelPackage.CREATION_MENU__ROLE:
+ setRole((String)newValue);
+ return;
+ case ElementCreationMenuModelPackage.CREATION_MENU__DISPLAY_ALL_ROLES:
+ setDisplayAllRoles((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.CREATION_MENU__ELEMENT_TYPE_ID_REF:
+ setElementTypeIdRef(ELEMENT_TYPE_ID_REF_EDEFAULT);
+ return;
+ case ElementCreationMenuModelPackage.CREATION_MENU__ROLE:
+ setRole(ROLE_EDEFAULT);
+ return;
+ case ElementCreationMenuModelPackage.CREATION_MENU__DISPLAY_ALL_ROLES:
+ setDisplayAllRoles(DISPLAY_ALL_ROLES_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.CREATION_MENU__ELEMENT_TYPE_ID_REF:
+ return ELEMENT_TYPE_ID_REF_EDEFAULT == null ? elementTypeIdRef != null : !ELEMENT_TYPE_ID_REF_EDEFAULT.equals(elementTypeIdRef);
+ case ElementCreationMenuModelPackage.CREATION_MENU__ROLE:
+ return ROLE_EDEFAULT == null ? role != null : !ROLE_EDEFAULT.equals(role);
+ case ElementCreationMenuModelPackage.CREATION_MENU__DISPLAY_ALL_ROLES:
+ return displayAllRoles != DISPLAY_ALL_ROLES_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (elementTypeIdRef: ");
+ result.append(elementTypeIdRef);
+ result.append(", role: ");
+ result.append(role);
+ result.append(", displayAllRoles: ");
+ result.append(displayAllRoles);
+ result.append(')');
+ return result.toString();
+ }
+
+} //CreationMenuImpl
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/ElementCreationMenuModelFactoryImpl.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/ElementCreationMenuModelFactoryImpl.java
new file mode 100644
index 00000000000..f4d0a21645b
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/ElementCreationMenuModelFactoryImpl.java
@@ -0,0 +1,106 @@
+/**
+ */
+package ElementCreationMenuModel.impl;
+
+import ElementCreationMenuModel.*;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ElementCreationMenuModelFactoryImpl extends EFactoryImpl implements ElementCreationMenuModelFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("javadoc")
+ public static ElementCreationMenuModelFactory init() {
+ try {
+ ElementCreationMenuModelFactory theElementCreationMenuModelFactory = (ElementCreationMenuModelFactory)EPackage.Registry.INSTANCE.getEFactory(ElementCreationMenuModelPackage.eNS_URI);
+ if (theElementCreationMenuModelFactory != null) {
+ return theElementCreationMenuModelFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ElementCreationMenuModelFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementCreationMenuModelFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ElementCreationMenuModelPackage.FOLDER: return createFolder();
+ case ElementCreationMenuModelPackage.CREATION_MENU: return createCreationMenu();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Folder createFolder() {
+ FolderImpl folder = new FolderImpl();
+ return folder;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CreationMenu createCreationMenu() {
+ CreationMenuImpl creationMenu = new CreationMenuImpl();
+ return creationMenu;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementCreationMenuModelPackage getElementCreationMenuModelPackage() {
+ return (ElementCreationMenuModelPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @SuppressWarnings("javadoc")
+ @Deprecated
+ public static ElementCreationMenuModelPackage getPackage() {
+ return ElementCreationMenuModelPackage.eINSTANCE;
+ }
+
+} //ElementCreationMenuModelFactoryImpl
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/ElementCreationMenuModelPackageImpl.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/ElementCreationMenuModelPackageImpl.java
new file mode 100644
index 00000000000..d18c0fde4d5
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/ElementCreationMenuModelPackageImpl.java
@@ -0,0 +1,285 @@
+/**
+ */
+package ElementCreationMenuModel.impl;
+
+import ElementCreationMenuModel.CreationMenu;
+import ElementCreationMenuModel.ElementCreationMenuModelFactory;
+import ElementCreationMenuModel.ElementCreationMenuModelPackage;
+import ElementCreationMenuModel.Folder;
+import ElementCreationMenuModel.Menu;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ElementCreationMenuModelPackageImpl extends EPackageImpl implements ElementCreationMenuModelPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass folderEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass menuEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass creationMenuEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ElementCreationMenuModelPackageImpl() {
+ super(eNS_URI, ElementCreationMenuModelFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link ElementCreationMenuModelPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ *
+ * @generated
+ */
+ @SuppressWarnings("javadoc")
+ public static ElementCreationMenuModelPackage init() {
+ if (isInited) return (ElementCreationMenuModelPackage)EPackage.Registry.INSTANCE.getEPackage(ElementCreationMenuModelPackage.eNS_URI);
+
+ // Obtain or create and register package
+ ElementCreationMenuModelPackageImpl theElementCreationMenuModelPackage = (ElementCreationMenuModelPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ElementCreationMenuModelPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ElementCreationMenuModelPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theElementCreationMenuModelPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theElementCreationMenuModelPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theElementCreationMenuModelPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ElementCreationMenuModelPackage.eNS_URI, theElementCreationMenuModelPackage);
+ return theElementCreationMenuModelPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFolder() {
+ return folderEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFolder_Menu() {
+ return (EReference)folderEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMenu() {
+ return menuEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getMenu_Label() {
+ return (EAttribute)menuEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getMenu_Icon() {
+ return (EAttribute)menuEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getCreationMenu() {
+ return creationMenuEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getCreationMenu_ElementTypeIdRef() {
+ return (EAttribute)creationMenuEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getCreationMenu_Role() {
+ return (EAttribute)creationMenuEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getCreationMenu_DisplayAllRoles() {
+ return (EAttribute)creationMenuEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementCreationMenuModelFactory getElementCreationMenuModelFactory() {
+ return (ElementCreationMenuModelFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ folderEClass = createEClass(FOLDER);
+ createEReference(folderEClass, FOLDER__MENU);
+
+ menuEClass = createEClass(MENU);
+ createEAttribute(menuEClass, MENU__LABEL);
+ createEAttribute(menuEClass, MENU__ICON);
+
+ creationMenuEClass = createEClass(CREATION_MENU);
+ createEAttribute(creationMenuEClass, CREATION_MENU__ELEMENT_TYPE_ID_REF);
+ createEAttribute(creationMenuEClass, CREATION_MENU__ROLE);
+ createEAttribute(creationMenuEClass, CREATION_MENU__DISPLAY_ALL_ROLES);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ folderEClass.getESuperTypes().add(this.getMenu());
+ creationMenuEClass.getESuperTypes().add(this.getMenu());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(folderEClass, Folder.class, "Folder", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getFolder_Menu(), this.getMenu(), null, "menu", null, 0, -1, Folder.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(menuEClass, Menu.class, "Menu", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getMenu_Label(), theEcorePackage.getEString(), "label", null, 1, 1, Menu.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getMenu_Icon(), theEcorePackage.getEString(), "icon", null, 0, 1, Menu.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(creationMenuEClass, CreationMenu.class, "CreationMenu", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getCreationMenu_ElementTypeIdRef(), theEcorePackage.getEString(), "elementTypeIdRef", null, 1, 1, CreationMenu.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getCreationMenu_Role(), theEcorePackage.getEString(), "role", null, 0, 1, CreationMenu.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getCreationMenu_DisplayAllRoles(), theEcorePackage.getEBoolean(), "displayAllRoles", "true", 1, 1, CreationMenu.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //ElementCreationMenuModelPackageImpl
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/FolderImpl.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/FolderImpl.java
new file mode 100644
index 00000000000..bdc7b6ab5bd
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/FolderImpl.java
@@ -0,0 +1,150 @@
+/**
+ */
+package ElementCreationMenuModel.impl;
+
+import ElementCreationMenuModel.ElementCreationMenuModelPackage;
+import ElementCreationMenuModel.Folder;
+import ElementCreationMenuModel.Menu;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Folder</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link ElementCreationMenuModel.impl.FolderImpl#getMenu <em>Menu</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FolderImpl extends MenuImpl implements Folder {
+ /**
+ * The cached value of the '{@link #getMenu() <em>Menu</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMenu()
+ * @generated
+ * @ordered
+ */
+ protected EList<Menu> menu;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FolderImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ElementCreationMenuModelPackage.Literals.FOLDER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Menu> getMenu() {
+ if (menu == null) {
+ menu = new EObjectContainmentEList<Menu>(Menu.class, this, ElementCreationMenuModelPackage.FOLDER__MENU);
+ }
+ return menu;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.FOLDER__MENU:
+ return ((InternalEList<?>)getMenu()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.FOLDER__MENU:
+ return getMenu();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.FOLDER__MENU:
+ getMenu().clear();
+ getMenu().addAll((Collection<? extends Menu>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.FOLDER__MENU:
+ getMenu().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.FOLDER__MENU:
+ return menu != null && !menu.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //FolderImpl
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/MenuImpl.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/MenuImpl.java
new file mode 100644
index 00000000000..fb5e48acf44
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/impl/MenuImpl.java
@@ -0,0 +1,217 @@
+/**
+ */
+package ElementCreationMenuModel.impl;
+
+import ElementCreationMenuModel.ElementCreationMenuModelPackage;
+import ElementCreationMenuModel.Menu;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Menu</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link ElementCreationMenuModel.impl.MenuImpl#getLabel <em>Label</em>}</li>
+ * <li>{@link ElementCreationMenuModel.impl.MenuImpl#getIcon <em>Icon</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class MenuImpl extends MinimalEObjectImpl.Container implements Menu {
+ /**
+ * The default value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected static final String LABEL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLabel() <em>Label</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLabel()
+ * @generated
+ * @ordered
+ */
+ protected String label = LABEL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getIcon() <em>Icon</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIcon()
+ * @generated
+ * @ordered
+ */
+ protected static final String ICON_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getIcon() <em>Icon</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIcon()
+ * @generated
+ * @ordered
+ */
+ protected String icon = ICON_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MenuImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ElementCreationMenuModelPackage.Literals.MENU;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLabel() {
+ return label;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLabel(String newLabel) {
+ String oldLabel = label;
+ label = newLabel;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementCreationMenuModelPackage.MENU__LABEL, oldLabel, label));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getIcon() {
+ return icon;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setIcon(String newIcon) {
+ String oldIcon = icon;
+ icon = newIcon;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ElementCreationMenuModelPackage.MENU__ICON, oldIcon, icon));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.MENU__LABEL:
+ return getLabel();
+ case ElementCreationMenuModelPackage.MENU__ICON:
+ return getIcon();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.MENU__LABEL:
+ setLabel((String)newValue);
+ return;
+ case ElementCreationMenuModelPackage.MENU__ICON:
+ setIcon((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.MENU__LABEL:
+ setLabel(LABEL_EDEFAULT);
+ return;
+ case ElementCreationMenuModelPackage.MENU__ICON:
+ setIcon(ICON_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ElementCreationMenuModelPackage.MENU__LABEL:
+ return LABEL_EDEFAULT == null ? label != null : !LABEL_EDEFAULT.equals(label);
+ case ElementCreationMenuModelPackage.MENU__ICON:
+ return ICON_EDEFAULT == null ? icon != null : !ICON_EDEFAULT.equals(icon);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (label: ");
+ result.append(label);
+ result.append(", icon: ");
+ result.append(icon);
+ result.append(')');
+ return result.toString();
+ }
+
+} //MenuImpl
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelAdapterFactory.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelAdapterFactory.java
new file mode 100644
index 00000000000..c06d05facee
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelAdapterFactory.java
@@ -0,0 +1,156 @@
+/**
+ */
+package ElementCreationMenuModel.util;
+
+import ElementCreationMenuModel.*;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage
+ * @generated
+ */
+public class ElementCreationMenuModelAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ElementCreationMenuModelPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementCreationMenuModelAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ElementCreationMenuModelPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ElementCreationMenuModelSwitch<Adapter> modelSwitch =
+ new ElementCreationMenuModelSwitch<Adapter>() {
+ @Override
+ public Adapter caseFolder(Folder object) {
+ return createFolderAdapter();
+ }
+ @Override
+ public Adapter caseMenu(Menu object) {
+ return createMenuAdapter();
+ }
+ @Override
+ public Adapter caseCreationMenu(CreationMenu object) {
+ return createCreationMenuAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link ElementCreationMenuModel.Folder <em>Folder</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see ElementCreationMenuModel.Folder
+ * @generated
+ */
+ public Adapter createFolderAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link ElementCreationMenuModel.Menu <em>Menu</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see ElementCreationMenuModel.Menu
+ * @generated
+ */
+ public Adapter createMenuAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link ElementCreationMenuModel.CreationMenu <em>Creation Menu</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see ElementCreationMenuModel.CreationMenu
+ * @generated
+ */
+ public Adapter createCreationMenuAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ElementCreationMenuModelAdapterFactory
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelResourceFactoryImpl.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelResourceFactoryImpl.java
new file mode 100644
index 00000000000..7d6d3158875
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelResourceFactoryImpl.java
@@ -0,0 +1,41 @@
+/**
+ */
+package ElementCreationMenuModel.util;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource Factory</b> associated with the package.
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.util.ElementCreationMenuModelResourceImpl
+ * @generated
+ */
+public class ElementCreationMenuModelResourceFactoryImpl extends ResourceFactoryImpl {
+ /**
+ * Creates an instance of the resource factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementCreationMenuModelResourceFactoryImpl() {
+ super();
+ }
+
+ /**
+ * Creates an instance of the resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Resource createResource(URI uri) {
+ Resource result = new ElementCreationMenuModelResourceImpl(uri);
+ return result;
+ }
+
+} //ElementCreationMenuModelResourceFactoryImpl
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelResourceImpl.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelResourceImpl.java
new file mode 100644
index 00000000000..47985667673
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelResourceImpl.java
@@ -0,0 +1,28 @@
+/**
+ */
+package ElementCreationMenuModel.util;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource </b> associated with the package.
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.util.ElementCreationMenuModelResourceFactoryImpl
+ * @generated
+ */
+public class ElementCreationMenuModelResourceImpl extends XMLResourceImpl {
+ /**
+ * Creates an instance of the resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param uri the URI of the new resource.
+ * @generated
+ */
+ public ElementCreationMenuModelResourceImpl(URI uri) {
+ super(uri);
+ }
+
+} //ElementCreationMenuModelResourceImpl
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelSwitch.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelSwitch.java
new file mode 100644
index 00000000000..f663e13eb37
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelSwitch.java
@@ -0,0 +1,154 @@
+/**
+ */
+package ElementCreationMenuModel.util;
+
+import ElementCreationMenuModel.*;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see ElementCreationMenuModel.ElementCreationMenuModelPackage
+ * @generated
+ */
+@SuppressWarnings("javadoc")
+public class ElementCreationMenuModelSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ElementCreationMenuModelPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementCreationMenuModelSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ElementCreationMenuModelPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @parameter ePackage the package in question.
+ * @return whether this is a switch for the given package.
+ * @generated
+ */
+ @Override
+ protected boolean isSwitchFor(EPackage ePackage) {
+ return ePackage == modelPackage;
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ @Override
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ElementCreationMenuModelPackage.FOLDER: {
+ Folder folder = (Folder)theEObject;
+ T result = caseFolder(folder);
+ if (result == null) result = caseMenu(folder);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ElementCreationMenuModelPackage.MENU: {
+ Menu menu = (Menu)theEObject;
+ T result = caseMenu(menu);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case ElementCreationMenuModelPackage.CREATION_MENU: {
+ CreationMenu creationMenu = (CreationMenu)theEObject;
+ T result = caseCreationMenu(creationMenu);
+ if (result == null) result = caseMenu(creationMenu);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Folder</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Folder</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFolder(Folder object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Menu</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Menu</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMenu(Menu object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Creation Menu</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Creation Menu</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCreationMenu(CreationMenu object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ @Override
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ElementCreationMenuModelSwitch
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelXMLProcessor.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelXMLProcessor.java
new file mode 100644
index 00000000000..23eab3160bd
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/ElementCreationMenuModel/util/ElementCreationMenuModelXMLProcessor.java
@@ -0,0 +1,50 @@
+/**
+ */
+package ElementCreationMenuModel.util;
+
+import ElementCreationMenuModel.ElementCreationMenuModelPackage;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.xmi.util.XMLProcessor;
+
+/**
+ * This class contains helper methods to serialize and deserialize XML documents
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ElementCreationMenuModelXMLProcessor extends XMLProcessor {
+
+ /**
+ * Public constructor to instantiate the helper.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ElementCreationMenuModelXMLProcessor() {
+ super((EPackage.Registry.INSTANCE));
+ ElementCreationMenuModelPackage.eINSTANCE.eClass();
+ }
+
+ /**
+ * Register for "*" and "xml" file extensions the ElementCreationMenuModelResourceFactoryImpl factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected Map<String, Resource.Factory> getRegistrations() {
+ if (registrations == null) {
+ super.getRegistrations();
+ registrations.put(XML_EXTENSION, new ElementCreationMenuModelResourceFactoryImpl());
+ registrations.put(STAR_EXTENSION, new ElementCreationMenuModelResourceFactoryImpl());
+ }
+ return registrations;
+ }
+
+} //ElementCreationMenuModelXMLProcessor
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/Activator.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/Activator.java
new file mode 100644
index 00000000000..beaed0e6d7e
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/Activator.java
@@ -0,0 +1,63 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.newchild;
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends AbstractUIPlugin {
+
+ /** The plug-in ID**/
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.infra.newchild"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuFactory.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuFactory.java
new file mode 100644
index 00000000000..672c7c19734
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuFactory.java
@@ -0,0 +1,311 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.newchild;
+
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.UnexecutableCommand;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.emf.type.core.ElementTypeRegistry;
+import org.eclipse.gmf.runtime.emf.type.core.IElementType;
+import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
+import org.eclipse.papyrus.infra.services.edit.service.IElementEditService;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.MenuItem;
+
+import ElementCreationMenuModel.CreationMenu;
+import ElementCreationMenuModel.Folder;
+
+/**
+ * this class contains code to construct menu from a Menu and a selected object
+ *
+ */
+public class CreationMenuFactory {
+ private TransactionalEditingDomain editingDomain;
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param editingDomain
+ */
+ public CreationMenuFactory(TransactionalEditingDomain editingDomain) {
+ super();
+ this.editingDomain = editingDomain;
+ }
+
+ /**
+ * construct a menu from a folder, this is a recursion
+ * @param menu the current menu
+ * @param folder the folder
+ * @param selectedObject the current selection
+ * @return true if sub-menu has been added
+ */
+ public boolean populateMenu(Menu menu, Folder folder, EObject selectedObject){
+ if(selectedObject!=null){
+ org.eclipse.swt.widgets.MenuItem topMenuItem = new MenuItem(menu,SWT.CASCADE );
+ topMenuItem.setText(folder.getLabel());
+ Menu topMenu=new Menu(menu);
+ topMenuItem.setMenu(topMenu);
+ boolean oneDisplayedMenu=false;
+ for(ElementCreationMenuModel.Menu currentMenu : folder.getMenu()) {
+ if( currentMenu instanceof Folder){
+ boolean subMenu=populateMenu(topMenu, (Folder) currentMenu, selectedObject);
+ if(subMenu){
+ oneDisplayedMenu=true;
+ }
+
+ }
+
+ if( currentMenu instanceof CreationMenu){
+ CreationMenu currentCreationMenu=(CreationMenu)currentMenu;
+ EReference reference=null;
+ String role=currentCreationMenu.getRole();
+ //the role is precised
+ if( role!=null){
+ EStructuralFeature feature= selectedObject.eClass().getEStructuralFeature(role);
+ if( feature instanceof EReference){
+ reference=(EReference)feature;
+ oneDisplayedMenu = constructMenu(selectedObject, topMenu, currentCreationMenu, reference);
+ }
+ }
+ else{//no precisison
+ //test if all roles must be displayed
+ if(currentCreationMenu.isDisplayAllRoles()){
+ oneDisplayedMenu = constructMenu(selectedObject, topMenu, currentCreationMenu);
+ }
+ else{
+
+ oneDisplayedMenu = constructMenu(selectedObject, topMenu, currentCreationMenu, reference);
+ }
+ }
+ }
+ }
+ if(!oneDisplayedMenu){
+ topMenuItem.dispose();
+ }
+ return oneDisplayedMenu;
+
+ }
+ return false;
+
+ }
+
+ /**
+ * create menu by displaying if possible different roles
+ * @param selectedObject the current object
+ * @param menu the current menu in creation
+ * @param currentCreationMenu
+ * @return true if sub-menu has been created
+ */
+ protected boolean constructMenu(EObject selectedObject, Menu menu, CreationMenu currentCreationMenu) {
+ //find the feature between children and owner
+ ArrayList<EStructuralFeature> possibleEFeatures = getEreferences(selectedObject, currentCreationMenu);
+
+ if(possibleEFeatures.size()==1){
+ Command cmd=buildCommand(null, selectedObject, currentCreationMenu.getElementTypeIdRef());
+ if( cmd.canExecute()){
+ MenuItem item = new MenuItem(menu, SWT.NONE);
+ fillIcon(currentCreationMenu, item);
+ item.setEnabled(true);
+ item.setText(currentCreationMenu.getLabel());
+ item.addSelectionListener(new CreationMenuListener(cmd, editingDomain));
+ return true;
+ }
+ return false;
+ }
+ else if(possibleEFeatures.size()>1){
+ org.eclipse.swt.widgets.MenuItem topMenuItem = new MenuItem(menu,SWT.CASCADE );
+ topMenuItem.setText(currentCreationMenu.getLabel());
+ Menu topMenu=new Menu(menu);
+ topMenuItem.setMenu(topMenu);
+ for(EStructuralFeature eStructuralFeature : possibleEFeatures) {
+
+ Command cmd=buildCommand((EReference)eStructuralFeature, selectedObject, currentCreationMenu.getElementTypeIdRef());
+ if( cmd.canExecute()){
+ MenuItem item = new MenuItem(topMenu, SWT.NONE);
+ fillIcon(currentCreationMenu, item);
+ item.setEnabled(true);
+ item.setText("As "+eStructuralFeature.getName());
+ item.addSelectionListener(new CreationMenuListener(cmd, editingDomain));
+ }
+
+ }
+ if(topMenu.getItemCount()==0){
+ topMenu.dispose();
+ return false;
+ }
+ else{
+ return true;
+ }
+ }
+ else{
+ return false;
+ }
+ }
+ /**
+ * display an icon from a specified url or from Element type
+ * @param currentCreationMenu
+ * @param item
+ */
+ protected void fillIcon(CreationMenu currentCreationMenu, MenuItem item) {
+ if(currentCreationMenu.getIcon()!=null){
+ URL url;
+ try {
+ url = new URL(currentCreationMenu.getIcon());
+ ImageDescriptor imgDesc=ImageDescriptor.createFromURL(url);
+ item.setImage(imgDesc.createImage());
+ } catch (MalformedURLException e) {
+ e.printStackTrace();
+ }
+ }else{
+ createIconFromElementType(currentCreationMenu, item);
+ }
+ }
+ /**
+ * it is used in order calculate all roles that can play an element to another
+ * @param selectedObject
+ * @param currentCreationMenu
+ * @return return the list of Ereference that can be calculated
+ */
+ protected ArrayList<EStructuralFeature> getEreferences(EObject selectedObject, CreationMenu currentCreationMenu) {
+ ArrayList<EStructuralFeature> possibleEFeatures = new ArrayList<EStructuralFeature>();
+ EList<EStructuralFeature> featureList = selectedObject.eClass().getEAllStructuralFeatures();
+ Iterator<EStructuralFeature> iterator = featureList.iterator();
+ while(iterator.hasNext()) {
+ EStructuralFeature eStructuralFeature = iterator.next();
+ if(eStructuralFeature instanceof EReference) {
+ EReference ref = (EReference)eStructuralFeature;
+ if(ref.isContainment()) {
+ if(isSubClass(ref.getEType(), getElementType(currentCreationMenu.getElementTypeIdRef()).getEClass())) {
+ possibleEFeatures.add(eStructuralFeature);
+ }
+ }
+ }
+ }
+ return possibleEFeatures;
+ }
+
+ /**
+ * Test if a possibleSub eclass is a sub eclass
+ *
+ * @param aclass
+ * , cannot be null
+ * @param possibleSubClasse
+ * , cannot be null
+ * @return true if possible eclass is a subtype of a eclass or false
+ */
+ protected boolean isSubClass(EClassifier aclass, EClass possibleSubClasse) {
+ if(aclass.equals(possibleSubClasse)) {
+ return true;
+ }
+ EList<EClass> superTypeList = possibleSubClasse.getEAllSuperTypes();
+ if(superTypeList.contains(aclass)) {
+ return true;
+ }
+ return false;
+ }
+
+
+ /**
+ * associate the icon from the element type
+ * @param currentCreationMenu
+ * @param item the current menu
+ */
+ protected void createIconFromElementType(CreationMenu currentCreationMenu, MenuItem item) {
+ if(getElementType(currentCreationMenu.getElementTypeIdRef()).getIconURL()!=null){
+ ImageDescriptor imgDesc=ImageDescriptor.createFromURL(getElementType(currentCreationMenu.getElementTypeIdRef()).getIconURL());
+ item.setImage(imgDesc.createImage());
+ }
+ }
+
+ /**
+ * create a submenu
+ * @param selectedObject the selected object
+ * @param topMenu the menu when will add menus
+ * @param currentCreationMenu
+ * @param reference the role of the new element
+ * @return true if the menu can be created
+ */
+ protected boolean constructMenu(EObject selectedObject, Menu topMenu, CreationMenu currentCreationMenu, EReference reference) {
+ boolean oneDisplayedMenu=false;
+ Command cmd=buildCommand(reference, selectedObject, currentCreationMenu.getElementTypeIdRef());
+ if( cmd.canExecute()){
+ oneDisplayedMenu=true;
+ MenuItem item = new MenuItem(topMenu, SWT.NONE);
+ fillIcon(currentCreationMenu, item);
+ item.setEnabled(true);
+ item.setText(currentCreationMenu.getLabel());
+ item.addSelectionListener(new CreationMenuListener(cmd, editingDomain));
+ }
+ return oneDisplayedMenu;
+ }
+
+ /**
+ * get the IelementType from a string
+ * @param extendedType the string that represents the element type
+ * @return the element type or null
+ */
+ protected IElementType getElementType(String extendedType){
+ return ElementTypeRegistry.getInstance().getType(extendedType);
+ }
+ /**
+ * Construct a command of creation
+ * @param reference the role of the element that will be created (maybe null)
+ * @param container the container of the created elements
+ * @param extendedType the extended type of the created element
+ * @return a command that can be executed by the domain
+ */
+ protected Command buildCommand(EReference reference, EObject container, String extendedType) {
+
+
+ IElementEditService provider = ElementEditServiceUtils.getCommandProvider(container);
+ if(provider == null) {
+ return UnexecutableCommand.INSTANCE;
+ }
+
+ ICommand createGMFCommand = provider.getEditCommand(buildRequest(reference, container, extendedType));
+ if(createGMFCommand != null) {
+ Command emfCommand = new org.eclipse.papyrus.commands.wrappers.GMFtoEMFCommandWrapper(createGMFCommand);
+ return emfCommand;
+ }
+ return UnexecutableCommand.INSTANCE;
+ }
+ /**
+ *
+ * @return
+ * the creation request to use in this handler
+ */
+ protected CreateElementRequest buildRequest(EReference reference, EObject container, String extendedType) {
+ if(reference==null){
+ return new CreateElementRequest(editingDomain, container, getElementType(extendedType)) ;
+ }
+ return new CreateElementRequest(editingDomain, container, getElementType(extendedType), reference);
+ }
+}
+
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuListener.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuListener.java
new file mode 100644
index 00000000000..5ce0c2270d7
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuListener.java
@@ -0,0 +1,61 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.newchild;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+
+/**
+ * This listener is used to launch the command associated to a menu
+ *
+ */
+class CreationMenuListener implements SelectionListener {
+ protected TransactionalEditingDomain editingDomain;
+ protected Command cmd;
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param cmd the command associated to the menu
+ * @param editingDomain the editing domain needed to execute the command
+ */
+ public CreationMenuListener(Command cmd ,TransactionalEditingDomain editingDomain) {
+ this.cmd= cmd;
+ this.editingDomain=editingDomain;
+ }
+ /**
+ *
+ * @see org.eclipse.swt.events.SelectionListener#widgetSelected(org.eclipse.swt.events.SelectionEvent)
+ *
+ * @param e
+ */
+ public void widgetSelected(SelectionEvent e) {
+ editingDomain.getCommandStack().execute(cmd);
+ }
+ /**
+ *
+ * @see org.eclipse.swt.events.SelectionListener#widgetDefaultSelected(org.eclipse.swt.events.SelectionEvent)
+ *
+ * @param e
+ */
+ public void widgetDefaultSelected(SelectionEvent e) {
+ editingDomain.getCommandStack().execute(cmd);
+ }
+
+
+
+} \ No newline at end of file
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuRegistry.java b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuRegistry.java
new file mode 100644
index 00000000000..d6eb11b43dd
--- /dev/null
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/src/org/eclipse/papyrus/infra/newchild/CreationMenuRegistry.java
@@ -0,0 +1,123 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.newchild;
+
+import java.net.URL;
+import java.util.ArrayList;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl;
+import org.osgi.framework.Bundle;
+
+import ElementCreationMenuModel.ElementCreationMenuModelPackage;
+import ElementCreationMenuModel.Folder;
+/**
+ * This class is used to load all extension point call org.eclipse.papyrus.infra.newchild
+ * It gives the set of all Folder that has to be displayed
+ */
+public class CreationMenuRegistry {
+
+ private final String MENU_CREATION_MODEL_EXTENSION_ID = "org.eclipse.papyrus.infra.newchild"; //$NON-NLS-1$
+ private final String MODEL_ID = "model"; //$NON-NLS-1$
+ private ArrayList<Folder> rootFolders= new ArrayList<Folder>();
+
+
+ /**
+ *
+ * Constructor.
+ *
+ */
+ public CreationMenuRegistry(){
+ init();
+ }
+ /**
+ * this method load the extension points
+ */
+ public void init(){
+ // Reading data from plugins
+ IConfigurationElement[] configElements = Platform.getExtensionRegistry().getConfigurationElementsFor(MENU_CREATION_MODEL_EXTENSION_ID);
+ for(int i = 0; i < configElements.length; i++) {
+ rootFolders.add(inializeOneModel(configElements[i]));
+ }
+
+ }
+
+ /**
+ *
+ * @return the set of root folders
+ */
+ public ArrayList<Folder> getRootFolder(){
+ return rootFolders;
+ }
+
+
+
+ /**
+ * Load one model
+ *
+ * @param element
+ * the extension point
+ */
+ private Folder inializeOneModel(IConfigurationElement element) {
+ try {
+ return (Folder)createExtension(element, element.getAttribute(MODEL_ID));
+
+ } catch (Exception e) {
+ System.err.println("model of new child can not be loaded: " + e); //$NON-NLS-1$
+ }
+ return null;
+ }
+
+ /**
+ * Load a resource instanceof ElementCreationMenuModel
+ *
+ * @param element
+ * the extension point
+ * @param classAttribute
+ * the name of the resource to load
+ * @return the loaded Folder
+ * @throws Exception
+ * if the resource is not loaded
+ */
+ private static Folder createExtension(final IConfigurationElement element, final String classAttribute) throws Exception {
+ try {
+ Bundle extensionBundle = Platform.getBundle(element.getDeclaringExtension().getNamespaceIdentifier());
+ URL url = extensionBundle.getResource(classAttribute);
+
+ Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put( Resource.Factory.Registry.DEFAULT_EXTENSION,new XMIResourceFactoryImpl());
+ if(url!=null){
+ URI uri=URI.createURI(url.toURI().toASCIIString());
+
+ // Obtain a new resource set
+ ResourceSet resourceSet = new ResourceSetImpl();
+ resourceSet.getPackageRegistry().put(ElementCreationMenuModelPackage.eINSTANCE.getNsURI(), ElementCreationMenuModelPackage.eINSTANCE);
+ // Get the resource
+ Resource resource = resourceSet.getResource(uri, true);
+ if(resource.getContents().get(0) instanceof Folder ){
+ return (Folder)resource.getContents().get(0);
+ }
+ }
+ return null;
+ } catch (Exception e) {
+ throw new Exception("unable to create Extension" + e); //$NON-NLS-1$
+ }
+ }
+
+
+} \ No newline at end of file

Back to the top